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