Chương 5

SỰ TÍNH TOÁN TRONG MÁY TÍNH COMPUTER ARTHMETIC

1

Nội dung

5.1. Tại sao dùng số nhị phân 5.2. Các phép toán nhị phân

2

Tại sao dùng số nhị phân

 Các thiết bị điện và điện tử hoạt động theo chế độ

 Các mạch điện của máy tính được điều khiển bởi 2 kí số nhị phân (0 và 1) thay cho 10 kí số thập phân (0,1,2,3,4,5,6,7,8,9).

 Các việc có thể được thực hiện trong hệ thập phân thì cũng có thể được thực hiện trong hệ nhị phân.

3

mở (1) hoặc tắt (0).

Các phép toán nhị phân

 Phép cộng

 Phép trừ

 Phép nhân

 Phép chia

4

Phép cộng

 Qui tắc

0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 cộng thêm 1 vào cột kế tiếp

5

Phép cộng

6

Ví dụ:

Phép cộng

7

Ví dụ: Cộng 2 số nhị phân 100111 and 11011 Giải: Binary Số nhớ 11111 100111 +11011 1000010 Decimal Số nhớ 1 39 +27 66

Phép cộng

Bài Tập  Add the binary numbers 1011 and 101 in both

 Add the binary numbers 1010110 and 1011010.  Add the binary numbers 10111 and 1011.

8

decimal and binary form

Phép trừ

 Qui tắc:

0 – 0 = 0

1 – 0 = 1

1 – 1 = 0

0 – 1 = 1 mượn từ cột kế tiếp

 Chú ý: hệ thập phân mượn 10; hệ nhị phân mượn

9

2; hệ bát phân mượn 8; hệ thập lục phân 16.

Phép trừ

 Ví dụ 1:

 Ví dụ 2:

12

101012 – 011102 Giải:

Mượn

Mượn

0202

10

10101 - 01110 00111 10111002 - 01110002 Giải: 2 1011100 -0111000 0100100

Phép trừ

Bài tập

7. Subtract 01101112 from 11011102 8. Subtract 010102 from 100002 9. Subtract 0110112 from 1101112

11

Phép trừ bù

 Định nghĩa phần bù: Cho 1 số gồm có n kí số,

phần bù được xác định bằng hiệu số:

 Ví dụ:

= 102 – 1 = 99 = 62

(Base)n – 1 99 – 37

Tìm phần bù của 3710 Giải: Số 37 có 2 kí tự và giá trị của cơ số (base) là 10, Vậy, phần bù của 3710 = 6210

12

((base)n – 1) - số đó

Phép trừ bù

(Base)n – 1 81 – 1

= 81-1 = 710 68 = 610

13

Bài tập Tìm phần bù của 68 Giải: Số 6 có 1 kí số và giá trị base là 8 Mà 710 – 610 = 110 = 18 Vậy, phần bù của 68 = 18

Phép trừ bù

(Base)n – 1 = 25 – 1 = 3110

14

Bài tập Tìm phần bù của 101012 Giải Số 101012 có 5 kí số và giá trị base 2, Mà 101012 = 2110 3110 – 2110 = 1010 = 010102 Phần bù của 101012 = 010102.

Phép trừ bù

 Bước 1: Tìm phần bù của số trừ.

 Bước 2: Cộng số bù với số bị trừ.

 Bước 3: Sau khi thực hiện phép cộng ở bước 2 mà có chứa thêm số 1 thì cộng 1 vào được kết quả, ngược lại tìm phần bù của tổng ở bước hai, sau đó gắn thêm dấu trừ vào trước phần bù này.

15

Các bước thực hiện phép trừ bù:

Phép trừ bù

= 102 – 1 – 56 = 99 – 56 = 4310

+43 (Phần bù của 56)

16

Ví dụ: 9210 - 5610 bằng phương pháp trừ bù.  Giải: Bước 1: Tìm phần bù của 5610 Bước 2: 92 135 Bước 3: 1 (cộng thêm 1) Kết quả = 36  92 – 56=36

Phép trừ bù

= 102 – 1 – 35 = 99 – 35 = 6410 18 + 64 (Phần bù của 35) 82

17

Ví dụ: 1810 - 3510 bằng phương pháp trừ bù. Giải Bước 1: Tìm phần bù của 3510 Bước 2: Bước 3: không có dư 1 nên: Kết quả = -(102- 1– 82)

= -17  18-35=-17

Phép trừ bù

1011100 +1000111 (bù của 0111000)

Ví dụ: 10111002 (9210) - 01110002 (5610)

10100011

1 (cộng thêm 1)

18

0100100 Kết quả = 01001002 = 3610

Phép trừ bù

Ví dụ: 0100102 (1810) - 1000112 (3510) 010010

101110

Kết quả = - 0100012 (bù của số 1011102)

+011100 ( bù của 100011)  Không nhớ 1 ở kết quả nên chúng ta tính phần bù của 1011102 và gắn dấu - ở trước phần bù đó.

19

= - 1710

Phép trừ bù

Bài tập

10.

11.

12.

13.

14.

15.

16.

Subtract 2510 from 5010 using complementary method Subtract 2510 from 2010 using complementary method Subtract 23410 from 58810 using complementary method Subtract 21610 from 17210 using complementary method Subtract 010102 from 100002 using complementary method Subtract 1101112 from 1011102 using complementary method Subtract 0110112 from 1101112 using complementary method Subtract 11112 from 11002 using complementary method

20

17.

Phép nhân

0 * 0 = 0 0 * 1 = 0 0 * 0 = 0 1 * 1 = 1

21

Qui tắc:

Phép nhân

 Ví dụ: 1010 * 1001. Giải_C1: 1010 *1001 1010

22

0000 0000 1010 1011010

Phép nhân

Ví dụ: 1010 * 1001. Giải_C2: kí số 0 xuất hiện ở số nhân thì chỉ cần thực

hiện đẩy qua trái.

1010

*1001

1010

23

1010SS  Left shift 1011010

Phương pháp cộng vào của phép nhân

 Hầu hết các máy tính thực hiện toán tử nhân chỉ bằng

 Ví dụ sau : 4 * 8 = 8 + 8 + 8 + 8

 Để mạch máy tính được thiết kế đơn giản thì chúng ta

cách thực hiện phép cộng.

24

phải dùng phương pháp này cho phép nhân.

Phương pháp cộng vào của phép nhân

18. Multiply the binary numbers 1100 and 1010

19. Multiply the binary numbers 01101 and 1001

20. Multiply the binary numbers 101111 and 111

25

Bài tập

Phép chia

Qui tắc:

0 / 1 = 0 1 / 1 = 1

26

Phép chia

1. Bắt đầu từ trái sang phải của số bị chia. 2. Lấy một chuỗi số từ số bị chia tương ứng với số ký

Các bước thực hiện phép chia nhị phân

3. Nếu phép trừ thực hiện được thì ghi 1 vào thương . 4. Nếu phép trừ không thực hiện được (số chia lớn hơn chuỗi được xác định ở bước 2), ghi 0 vào thương số.

5. Lấy thêm 1 kí số từ số bị chia vào chuỗi đó và thực

số của số chia và lấy chuỗi đó trừ cho số chia.

27

hiện tương tự như các bước trên.

Phép chia

28

Phép chia

0101 (thương số) 100001 (số bị chia)

1 ( Số chia lớn hơn 100, cho 0 vào thương)

110 1000 2 (Thêm 1 số 0 ở trên số bị chia xuống nhóm) 110 3 (Thực hiện được phép trừ,cho 1 vào thương) 100 4 (phần dư từ phép trừ và thêm 1 số bị chia) 110 5 (Số chia lớn hơn nên đẩy 0 vào thương) 1001 6 (thêm 1 từ số bị chia ) 110 7 (Thực hiện được phép trừ,cho 1 vào thương) 11 (Số dư)

Ví dụ: Chia 1000012 cho 1102 Giải: Số chia 110 Kết quả có thể viết cách khác như : 3310 (1000012) / 610 (1102), được thương là

510 (1012), số dư là 310 (112).

29

Phương pháp cộng vào của phép chia

 Máy tính thực hiện phép chia chủ yếu bằng phương pháp phép

trừ bù.

 Phép trừ được thực hiện lặp đi lặp lại giữa số chia và kết quả thu được từng bước cho đến khi kết quả thu được nhỏ hơn hoặc bằng 0.

 Tổng số lần thực hiện phép trừ là thương số của phép chia đó.  Nếu kết quả của phép trừ bằng 0 thì phép chia không có số dư.  Nếu phép trừ cuối cùng có kết quả nhỏ hơn 0 thì kết quả của phép trừ trước phép trừ cuối cùng là phần dư của phép chia và thương số bằng tổng sô lần thực hiện phép trừ trừ đi 1

30

Phương pháp cộng vào của phép chia

 Ví dụ : 35 / 5  Phép trừ thực hiện 7 lần nên được kết quả là 7.

31

35 – 5 = 30 30 – 5 = 25 25 – 5 = 20 20 – 5 = 15 15 – 5 = 10 10 – 5 = 5 5 – 5 = 0

Phương pháp cộng vào của phép chia

Ví dụ 5.17:  Lấy số 3310 chia cho 610  Giải:

33 – 6 = 27 (1) 27 – 6 = 21 (2) 21 – 6 = 15 (3) 15 – 6 = 9 (4) 9 – 6 = 3 (5) 3 – 6 = -3 (6)  Tổng số lần thực hiện phép trừ = 6. Mà kết quả của phép trừ

cuối cùng nhỏ hơn 0

 Thương = 6 – 1 (bỏ đi phép trừ cuối cùng) = 5  Số dư = 3 (Kết quả của phép trừ (5))  Kết quả, 33 / 6 = 5 dư 3.

32

Phương pháp cộng vào của phép chia

33

Bài tập 21. Divide 110012 by 1012 21. Divide 01101112 by 01112

Câu hỏi và bài tập

1. Tại sao các máy tính đều được thiết kế sử dụng hệ

2. Cộng 2 số nhị phân 1011 và 101 cả hình thức nhị

thống nhị phân?

3. Cộng 2 số nhị phân 1010110 và 1011010. 4. Cộng 2 số nhị phân 10111 và 1011. 5. Tìm phần bù của các số đã cho:

phân và thập phân.

34

(a) 49510 (b) 2910 (c) 48 (d) C16 (e) 25 (f) 324

Câu hỏi và bài tập

(a) 10 (b) 101 (c) 101101

(d) 011011 (e) 10110001 (f) 001101001110

6. Tìm phần bù của các số nhị phân đã cho: 7. Tính 11011102 - 01101112 8. Tính 100002 - 010102 9. Tính 1101112 - 0110112 10. Tính 5010 - 2510 sử dụng phương pháp phần bù 11. Tính 2010 - 2510 sử dụng phương pháp phần bù 12. Tính 58810 - 23410 sử dụng phương pháp phần bù 13. Tính 17210 - 21610 sử dụng phương pháp phần bù 14. Tính 10002 - 010102 sử dụng phương pháp phần bù 15. Tính 1011002 - 1101112 sử dụng phương pháp phần bù 16. Tính 1101112 - 0110112 sử dụng phương pháp phần bù 17. Tính 11002 - 11112 sử dụng phương pháp phần bù

35

Câu hỏi và bài tập

18. Chia 2 số nhị phân: 1100 và 1010 19. Chia 2 số nhị phân: 01101 và 1001 20. Chia 2 số nhị phân: 101111 và 111 21. Chia 2 số nhị phân: 110012 và 1012 22. Chia 2 số nhị phân: 01101112 và 01112 23. Giải thích ngắn gọn phép nhân và chia thực hiện như thế nào

bên trong mấy tính dùng phép tính cộng gần đúng.

24. Thuận lợi chủ yếu khi thực hiện phép trừ bằng phương pháp

phần bù trong máy tính số?

25. Thảo luận những ưu và nhược điểm của việc thực hiện các phép tính số học khác nhau bằng phương thức cộng thêm vào trong máy tính số.

36