Các phép toán căn bản trên số nhị phân( hệ cơ số 2- Toán tin )

Chuyển đổi số từ thập phân sang nhị phân:

Hệ nhị phân (hay hệ đếm cơ số 2) là một hệ đếm chỉ dùng hai ký tự là 0 và 1 để biểu đạt một giá trị số.

Trong bài viết này mình sẽ hướng dẫn các bạn chuyển đổi một số từ thập phân sang nhị phân và ngược lại, cùng với phép toán cộng hai số nhị phân.

1. Chuyển số thập phân sang số nhị phân

Nguyên tắc của phương pháp này là lấy số cần chuyển đổi chia cho 2 (kết quả chỉ lấy phần nguyên), sau đó tiếp tục lấy kết quả chia 2 (và cũng chỉ lấy phần nguyên), kết quả số nhị phân thu được là tập hợp các số dư của các phép chia.

Để dễ hiểu, chúng ta sẽ làm 2 ví dụ.

Ví dụ 1: Chuyển số 30 sang hệ nhị phân

Đầu tiên (ở dòng 1), chúng ta lấy 30 chia 2, kết quả được 15 và số dư là 0.

Kế tiếp (ở dòng 2), chúng ta lấy số 15 chia 2, kết quả được 7 và số dư là 1

Tiếp theo ở dòng 3, ta lấy số 7 chia 2, kết quả được 3 và dư 1

Ta tiếp tục lặp lại quá trình này cho đến khi kết quả chia 2 chúng ta được 0.

Số nhị phân chúng ta thu được chính là tập hợp các số dư của các phép chia (lấy từ dưới lên).

Số 30 trong hệ nhị phân sẽ là 11110

Ví dụ 2: Chuyển số 71 sang hệ nhị phân

Đầu tiên (ở dòng 1), chúng ta lấy 71 chia 2, kết quả được 35 và số dư là 1.

Kế tiếp (ở dòng 2), chúng ta lấy số 35 chia 2, kết quả được 17 và số dư là 1

Tiếp theo ở dòng 3, ta lấy số 17 chia 2, kết quả được 8 và dư 1

Ta tiếp tục lặp lại quá trình này cho đến khi kết quả chia 2 chúng ta được 0.

Số nhị phân chúng ta thu được chính là tập hợp các số dư của các phép chia (lấy từ dưới lên).

Số 71 trong hệ nhị phân sẽ là 1000111

Đối với phần lẻ của số thập phân, số lẻ được nhân với 2. Phần nguyên của kết quả sẽ là bit nhị phân, phần lẻ của kết quả lại tiếp tục nhân 2 cho đến khi phần lẻ của kết quả bằng 0.

 

doc12 trang | Chia sẻ: hienduc166 | Lượt xem: 1149 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Các phép toán căn bản trên số nhị phân( hệ cơ số 2- Toán tin ), để tải tài liệu về máy bạn click vào nút TẢI VỀ ở trên
Các phép toán căn bản trên số nhị phân( hệ cơ số 2- toán tin )
( Nguồn:  ).
i 
Hệ nhị phân (hay hệ đếm cơ số 2) là một hệ đếm chỉ dùng hai ký tự là 0 và 1 để biểu đạt một giá trị số. Bài này sẽ trình bày về cách thực hiện một số phép toán căn bản:cộng, trừ, nhân, chia trên số nhị phân 
Cộng 2 số nhị phân
Trừ 2 số nhị phân
Nhân 2 số nhị phân
Chia 2 số nhị phân
1. Cộng 2 số nhị phân
Xem trong bài Chuyển đổi số từ thập phân sang nhị phân :
Chuyển đổi số từ thập phân sang nhị phân:  
i
Hệ nhị phân (hay hệ đếm cơ số 2) là một hệ đếm chỉ  dùng hai ký tự là 0 và 1 để biểu đạt một giá trị số.
Trong bài viết này mình sẽ hướng dẫn các bạn chuyển đổi một số từ thập phân sang nhị phân và ngược lại, cùng với phép toán cộng hai số nhị phân.
1.  Chuyển số thập phân sang số nhị phân
Nguyên tắc của phương pháp này là lấy số cần chuyển đổi chia cho 2 (kết quả chỉ lấy phần nguyên), sau đó tiếp tục lấy kết quả chia 2 (và cũng chỉ lấy phần nguyên), kết quả số nhị phân thu được là tập hợp các số dư của các phép chia.
Để dễ hiểu, chúng ta sẽ làm 2 ví dụ.
Ví dụ 1: Chuyển số 30 sang hệ nhị phân
Đầu tiên (ở dòng 1), chúng ta lấy 30 chia 2, kết quả được 15 và số dư là 0.
Kế tiếp (ở dòng 2), chúng ta lấy số 15 chia 2, kết quả được 7 và số dư là 1
Tiếp theo ở dòng 3, ta lấy số 7 chia 2, kết quả được 3 và dư 1
Ta tiếp tục lặp lại quá trình này cho đến khi kết quả chia 2 chúng ta được 0.
Số nhị phân chúng ta thu được chính là tập hợp các số dư của các phép chia (lấy từ dưới lên).
Số 30 trong hệ nhị phân sẽ là 11110 
Ví dụ 2: Chuyển số 71 sang hệ nhị phân
Đầu tiên (ở dòng 1), chúng ta lấy 71 chia 2, kết quả được 35 và số dư là 1.
Kế tiếp (ở dòng 2), chúng ta lấy số 35 chia 2, kết quả được 17 và số dư là 1
Tiếp theo ở dòng 3, ta lấy số 17 chia 2, kết quả được 8 và dư 1
Ta tiếp tục lặp lại quá trình này cho đến khi kết quả chia 2 chúng ta được 0.
Số nhị phân chúng ta thu được chính là tập hợp các số dư của các phép chia (lấy từ dưới lên).
Số 71 trong hệ nhị phân sẽ là 1000111 
Đối với phần lẻ của số thập phân, số lẻ được nhân với 2. Phần nguyên của kết quả sẽ là bit nhị phân, phần lẻ của kết quả lại tiếp tục nhân 2 cho đến khi phần lẻ của kết quả bằng 0.
Ví dụ: Chuyển số 0.62510 sang hệ nhị phân
0.625 x 2 = 1.25, lấy số 1, phần lẻ 0.25
0.25 x 2 = 0.5, lấy số 0, phần lẻ 0.5
0.5 x 2 = 1.0, lấy số 1, phần lẻ 0. Kết thúc phép chuyển đổi.
Vậy kết quả 0.62510=0.1012
Ví dụ 2: đổi số 9.62510 sang hệ nhị phân
Phần nguyên 9 đổi sang hệ nhị phân là 1001
Phần lẻ 0.625 đổi sang hệ nhị phân là 0.101
Vậy số 9.62510=1001.1012
2. Chuyển số nhị phân sang thập phân
Bây giờ chúng ta chuyển số 1000111 về số thập phân. Ta thấy số 1000111 có tổng cộng 7 kí tự, chúng ta sẽ đánh số 7 kí tự này từ phải sang trái và bắt đầu từ 0 như sau:
Số nhị phân
1
0
0
0
1
1
1
Thứ tự
6
5
4
3
2
1
0
Số thập phân kết quả sẽ là tổng các tích của kí tự nhị phân x 2 lũy thừa vị trí.
Tức là  1x26 + 0x25 + 0x24 + 0x23 + 1x22 + 1x21 + 1x20 
= 64 + 0 + 0 + 0 + 4 + 2 + 1 = 71
Tương tự, để chuyển số 11110 sang hệ thập phân, ta phân tích nó như sau:
Số nhị phân
1
1
1
1
0
Thứ tự
4
3
2
1
0
Số 11110 chuyển sang số nhị phân sẽ là 1x24 + 1x23 + 1x22 + 1x21 + 0x20
= 16 + 8 + 4 + 2 + 0 = 30
3. Cộng số nhị phân
Để cộng hai số nhị phân, chúng ta cần nhớ các nguyên tắc sau:
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1 + 1 = 10 (nhớ 1 để cộng vào hàng trước nó, tương tự như phép cộng số thập phân)
Bây giờ ta tiến hành cộng hai số 1000111 (số 71 trong hệ thập phân) và số 11110 (số 30 trong hệ thập phân).
Cột
1
2
3
4
5
6
7
71=
1
0
0
0
1
1
1
30=
1
1
1
1
0
101=
1
1
0
0
1
0
1
Ta tiến hành cộng từ phải sang trái như sau:
Bước
Tại cột
Thực hiện phép tính
1
7
1 + 0 = 1
2
6
1 + 1 = 10, viết 0, nhớ 1
3
5
1 + 1 = 10, cộng thêm 1 (nhớ ở bước 2) là 11, viết 1 nhớ 1
4
4
0 + 1 = 1, cộng thêm 1 (nhớ ở bước 3) là 10, viết 0, nhớ 1
5
3
0 + 1 = 1, cộng thêm 1 (nhớ ở bước 4) là 10, viết 0, nhớ 1
6
2
0 + 1 (nhớ ở bước 5) = 1
7
1
lấy 1 ở trên xuống.
Và kết quả chúng ta được: 1000111 + 11110 = 1100101 (71 + 30 = 101, các bạn có thể kiếm tra lại bằng cách đổi số 101 sang nhị phân xem có đúng kết quả vừa làm ra không).
Các bạn có thể tải bài viết này dưới dạng file pdf tại đây.
Mình có 1 chương trình nhỏ dùng để chuyển đổi số từ thập phân sang nhị phân và ngược lại ở đây, các bạn có thể tự thực hành chuyển đổi sau đó dùng chương trình này để kiểm tra lại kết quả. Chúc các bạn thành công.
2. Trừ 2 số nhị phân
Để trừ 2 số nhị phân, ta cần nhớ các nguyên tắc sau:
0 − 0 = 0
0 − 1 = −1 (mượn)
1 − 0 = 1
1 − 1 = 0
-1-1 = -10
Ví dụ 1: ta thực hiện phép trừ sau 10 – 8 = 2
Ta có số 1010=10102, số 810=10002
Cột
4
3
2
1
10=
1
0
1
0
8=
1
0
0
0
2=
0
0
1
0
Ví dụ 2: Thực hiện phép trừ 51 – 28 =  23
Số 5110 = 1100112, số 2810 = 111002
Cột
6
5
4
3
2
1
51 =
1
1
0
0
1
1
28 =
0
1
1
1
0
0
23 =
0
1
0
1
1
1
Ta tiến hành trừ từ phải sang trái như sau (chú ý màu sắc các kí số 0 và 1 để dễ hiểu hơn):
Bước
Tại cột
Thực hiện phép tính
1
1
1 – 0 = 1
2
2
1 – 0 = 1
3
3
0 – 1 = -1 , viết 1 và nhớ -1
4
4
0 – 1 = -1, cộng với -1 ở bước 3 là -10, viết 0 và nhớ -1
5
5
1 – 1 = 0, cộng với -1 ở bước 4 là -1, viết 1 và nhớ -1
6
6
1 cộng với -1 ở bước 5 là 0
Vậy 110011 – 11100 = 010111 (tương ứng với 51 – 28 = 23)
Số bù 1: khi ta đảo tất cả các bit có trong số nhị phân (đổi 1 thành 0 và ngược lại), ta có số bù 1 của số nhị phân đó. Số bù 1 thường được dùng để biểu diễn số âm trong máy tính. Khi đó, bit cực trái (bit đầu tiên ở bên trái) là bit đánh dấu với qui ước: nếu bit dấu là 0 thì số là số dương, nếu bit dấu là 1 thì là số âm.
Ví dụ: số 28 trong hệ thập phân biểu diễn sang nhị phân (với mẫu 8 bit) là 0001 1100. Vậy số bù 1 sẽ là 1110 0011.
Để thực hiện phép trừ với số nhị phân, ta có thể thực hiện phép cộng với số bù 1 của số nhị phân đó.
Ví dụ: Thực hiện phép trừ 2 – 5 =-3
Ta có 210 = 0000 00102
510= 0000 01012. Số bù 1 của 5 là 1111 1010.
Vậy 2 – 5 = 0000 0010 + 1111 1010
Cột
8
7
6
5
4
3
2
1
2 =
0
0
0
0
0
0
1
0
-5 =
1
1
1
1
1
0
1
0
1
1
1
1
1
1
0
0
Ta thực hiện phép cộng như sau:
Bước
Tại cột
Thực hiện phép tính
1
1
0 + 0 = 0
2
2
1+ 1 = 10, viết 0 nhớ 1 
3
3
0 + 0 = 0, cộng với 1 nhớ ở bước 2 là 1
4
4
0 + 1 = 1
5
5
0 + 1 = 1
6
6
0 + 1 = 1
7
7
0 + 1 = 1
8
8
0 + 1 = 1
Ta được kết quả 1111 1100.
Thực hiện phép trừ 51 – 28 = 23
Số 5110= 0011 00112. Số 2810 =  0001 11002, số bù 1 là 1110 0011.
51 – 28 = 51 + (-28) = 0011 0011 + 1110 0011
Cột
8
7
6
5
4
3
2
1
51 =
0
0
1
1
0
0
1
1
-28 =
1
1
1
0
0
0
1
1
0 (nhớ 1)
0
0
1
0
1
1
0
1
0
0
1
0
1
1
1
Ta thực hiện phép cộng như sau:
Bước
Tại cột
Thực hiện phép tính
1
1
1 + 1 = 10, viết 0, nhớ 1
2
2
1 + 1 = 10, cộng thêm 1 (nhớ ở bước 2) là 11, viết 1 nhớ 1
3
3
0 + 0 = 0, cộng 1 (nhớ ở bước 2) là 1
4
4
0 + 0 = 0
5
5
1 + 0 = 1
6
6
1 + 1 = 10, viết 0 nhớ 1
7
7
0 + 1 = 1, cộng thêm 1 (nhớ ở bước 6) là 10, viết 0 nhớ 1
8
8
0 + 1 = 1, cộng thêm 1 (nhớ ở bước 7) là 10, viết 0 và nhớ 1.
Ta được kết quả 0001 0110, và ta thấy ở bước 8 vẫn còn nhớ 1, ta cộng số 1 này vào bit cực phải của kết quả 0001 0110, nghĩa là 0001 0110 +1 và được 0001 0111.
Số bù 2: số bù 2 có được là do đảo tất cả các bit có trong số nhị phân (đổi 1 thành 0 và đổi 0 thành 1) rồi cộng thêm 1 vào kết quả. Hay nói cách khác, số bù 2 là số bù 1 cộng thêm 1. Số bù 2 cũng được dùng để biểu diễn số âm. Khi đó, bit cực trái (bit đầu tiên ở bên trái) là bit đánh dấu với qui ước: nếu bit dấu là 0 thì số là số dương, nếu bit dấu là 1 thì là số âm.
Ví dụ: Thực hiện phép trừ 2 – 5 =-3
Ta có 210 = 0000 00102
510= 0000 01012. Số bù 1 của 5 là 1111 1010, số bù 2 của 5 là 1111 1011
Vậy 2 – 5 = 0000 0010 + 1111 1011
Cột
8
7
6
5
4
3
2
1
2=
0
0
0
0
0
0
1
0
-5 =
1
1
1
1
1
0
1
1
1 
1
1
1
1
1
0
1
Ta thực hiện phép cộng như sau:
Bước
Tại cột
Thực hiện phép tính
1
1
0 + 1 =1
2
2
1 + 1 = 10, viết 0 nhớ 1
3
3
0 + 0 = 0, cộng 1 nhớ ở bước 2 là 1
4
4
0+ 1 = 1
5
5
0 + 1 = 1
6
6
0 + 1 = 1
7
7
0 + 1 = 1
8
8
0 + 1 = 1 
Ta được kết quả 1111 1101, là số bù 2 của -3 
3. Nhân hai số nhị phân
Phép tính nhân trong hệ nhị phân cũng tương tự như phương pháp làm trong hệ thập phân. Hai số A và B được nhân với nhau bởi những tích số của các kí số 0 và 1 của A và B: với mỗi con số ở B, tích của nó với số một con số trong A được tính và viết xuống một hàng mới, mỗi hàng mới phải chuyển dịch vị trí sang bên trái 1 bit. Tổng của các tích cục bộ này cho ta kết quả tích số cuối cùng.
Ví dụ: 9 x 6 = 54  (1001 x 110 = 110110)
Để dễ hiểu, bạn xem 2 hình dười đây, hình thứ nhất biểu diễn cách nhân 2 số thập phân và hình thứ 2 là cách nhân 2 số nhị phân.
Nhân 2 số thập phân
Nhân 2 số nhị phân
4. Chia 2 số nhị phân
Phép chia số nhị phân tương đối phức tạp hơn phép cộng, trừ và nhân. Cách chia số nhị phân cũng giống như chia 2 số thập phân, do đó các bạn cần nắm vững cách chia trên số thập phân, đồng thời cần nắm vững cách trừ 2 số nhị phân. Đầu tiên hãy xem hình 1 để nhớ lại cách chia 2 số thập phân, sau đó xem hình 2 các bạn sẽ hiểu cách chia số nhị phân.
Chia 2 số thập phân
Chia 2 số nhị phân

File đính kèm:

  • docCác phép toán căn bản trên số nhị phân- toán tin.doc
Bài giảng liên quan