Xem mẫu

  1.     KIẾN TRÚC MÁY TÍNH Giảng viên: Ths Phạm Thanh Bình Bộ môn Kỹ thuật máy tính & mạng http://vn.myblog.yahoo.com/CNTT­wru http://ktmt.wru.googlepages.com Bộ môn Kỹ thuật máy tính & mạng – Khoa CNTT Kiến trúc máy tính 3 ­ 1
  2. Chương 3: CÁC PHÉP TOÁN TRÊN MÁY TÍNH  Nhắc lại về phép cộng và phép trừ  Phép nhân  Phép chia  Số thực dấu phảy động Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 2
  3. Bài 3.1 ­ Nhắc lại về phép cộng và phép  trừ A B A + B 0 0 0 0 1 1 1 0 1 1 1 10 Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 3
  4. Ví dụ 1:  Thực hiện phép cộng sau trong máy tính: 7 + 6     0000 0111 +  0000 0110     0000 1101    =  (13)10  Ta thấy tổng thu được bằng 13, giống như  cộng số thập phân thông thường. Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 4
  5. Ví dụ 2:  Thực hiện phép trừ sau trong máy tính: 7 ­ 6     0000 0111 ­   0000 0110     0000 0001    =  (1)10  Ta thấy hiệu thu được bằng 1, giống như trừ  số thập phân thông thường Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 5
  6. Ví dụ 3:  So sánh kết quả Ví dụ 2 với phép cộng sau: 7 + (­ 6)     0000 0111 +  1111 1010     0000 0001    =  (1)10 Như vậy: 7 – 6 = 7 + (­6) = 1 Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 6
  7. Bài 3.2 ­ Phép nhân  Nhân số nhị phân  Giải thuật nhân  Phần cứng thực hiện   Các lệnh nhân của VXL 8086 Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 7
  8. Nhân số nhị phân A B A * B 0 0 0 0 1 0 1 0 0 1 1 1 Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 8
  9. Ví dụ:  Thực hiện phép nhân sau: 8 * 9             1000 +          1001             1000             0000           0000       1000       1001000 =  (72)10  Ta thấy tích thu được bằng 72, giống như nhân  số thập phân thông thường. Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 9
  10. Giải thuật nhân:  Lần lượt nhân các bít của thừa số thứ hai  với thừa số thứ nhất.  Nếu gặp bít 1 thì chỉ việc giữ nguyên  thừa số thứ nhất và đặt nó vào vị trí thích  hợp.  Nếu gặp bít 0 thì chỉ việc đặt một dãy  toàn bít 0 vào vị trí thích hợp.  Cộng các kết quả lại. Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 10
  11. Phần cứng thực hiện Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 11
  12. Giải thích:  Thừa số 1 và Thừa số 2 dài 32 bít  Thanh ghi chứa Thừa số 1 dài 64 bít  Thanh ghi chứa Thừa số 2 dài 32 bít  Thanh ghi chứa kết quả (Product) dài 64  bít  Bộ cộng ALU dài 64 bít Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 12
  13. Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 13
  14. Ví dụ:  Sử dụng phần cứng trên để thực hiện  phép nhân:  2 x 3 (hay 0010b x 0011b) Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 14
  15. Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 15
  16.  Vậy kết quả phép nhân là:                Tích = 0000 0110b = 6  Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 16
  17. Các lệnh nhân của VXL 8086  Lệnh MUL (Multiply)   Lệnh IMUL (Integer Multiply) Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 17
  18. Lệnh MUL (Multiply)  Lệnh này dùng để thực hiện phép nhân đối với  các số không dấu. Cú pháp lệnh:                             MUL        : là một thanh ghi hay một biến Nếu  có kích thước 1 byte thì  sẽ là thanh ghi AL. Lệnh trên sẽ thực hiện  phép nhân giữa  và , kết  quả phép nhân được chứa trong thanh ghi AX (16  bit). Nếu  có kích thước 1 word thì  sẽ là thanh ghi AX. Kết qu chứa trong hai thanh ghi DX:AX (32 bit).  n trúc máy tính 3 ­ 18 Khoa CNTT Kiế
  19.  Ví dụ:        Hãy thực hiện phép nhân hai số: 51 và 5  Giải:     Cách 1:                  MOV   AL, 51                  MOV   BL, 5                  MUL   BL     Kết quả: Tích = AX = 255 = 00FFh (16  bit)  Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 19
  20. Cách 2:                  MOV   AX, 51                  MOV   BX, 5                  MUL   BX Kết quả: Tích = DX:AX = 255 = 0000  00FFh  (32 bit) Bộ môn Kỹ thuật máy tính & mạng –  Khoa CNTT Kiến trúc máy tính 3 ­ 20
nguon tai.lieu . vn