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ố.
Xem source code cài đặt bằng Java
>>> Chuyển từ hệ thập phân sang hệ nhị phân bằng ngôn ngữ Java
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ố 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à 1×26 + 0x25 + 0x24 + 0x23 + 1×22 + 1×21 + 1×20
= 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ố 11110 chuyển sang số nhị phân sẽ là 1×24 + 1×23 + 1×22 + 1×21 + 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).
Ta tiến hành cộng từ phải sang trái như sau:
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.
Tôi là Nguyễn Văn Sỹ có 15 năm kinh nghiệm trong lĩnh vực thiết kế, thi công đồ nội thất; với niềm đam mê và yêu nghề tôi đã tạo ra những thiết kếtuyệt vời trong phòng khách, phòng bếp, phòng ngủ, sân vườn… Ngoài ra với khả năng nghiên cứu, tìm tòi học hỏi các kiến thức đời sống xã hội và sự kiện, tôi đã đưa ra những kiến thức bổ ích tại website nhaxinhplaza.vn. Hy vọng những kiến thức mà tôi chia sẻ này sẽ giúp ích cho bạn!