Menu

Đổi nhị phân sang hex

Gõ một số nhị phân để xem nó trong hệ thập lục phân, với từng nhóm bốn bit hiện bên dưới. Trang mở sẵn số 11010110, tức là D6.

Tác giả Nethanel Bar, Co-founder & CEO

Cập nhật lần cuối

Sẵn sàng học code thật sự?

Coddy dạy bạn bằng cách viết code thật ngay trên trình duyệt: bài học tương tác, phản hồi tức thì và AI hỗ trợ khi bạn bị kẹt.

Cách đổi nhị phân sang hex

Bốn bit có mười sáu tổ hợp, bằng đúng số chữ số hex, nên mỗi nhóm bốn bit trở thành đúng một chữ số hex. Hãy làm từ bên phải vì đó là nơi các nhóm thẳng hàng; nếu nhóm ngoài cùng bên trái bị thiếu, thêm số 0 vào phía trước nó.

Để đổi một nhóm thành một chữ số, cộng giá trị vị trí của các bit 1 trong nhóm: 8, 4, 2 và 1. 1101 là 8 + 4 + 1 = 13, tức là D, còn 0110 là 4 + 2 = 6.

Đây là lý do lập trình viên viết dữ liệu nhị phân bằng hex. Một giá trị 32 bit là 32 bit khó đọc, nhưng chỉ là 8 chữ số hex.

Những điều cần biết khi nhóm bit

  • Luôn nhóm từ bên phải, tức là từ đầu có trọng số thấp nhất.
  • Trong một nhóm, giá trị vị trí là 8, 4, 2 và 1.
  • Các giá trị từ 10 đến 15 trở thành A đến F: 1010 là A, 1111 là F.
  • Nhóm theo ba bit thay vì bốn sẽ ra hệ bát phân, hệ số đứng sau các con số của chmod.

Ví dụ đổi nhị phân sang hex

Một byte

Nhị phân

11010110

Hex

D6

1101 là 13, viết là D, còn 0110 là 6.

Một số ngắn

Nhị phân

101

Hex

5

Thêm số 0 cho đủ thành 0101, tức là 5.

Chín bit

Nhị phân

1 0110 1011

Hex

16B

Nhóm từ bên phải sẽ còn lại một bit 1 ở bên trái, thêm số 0 thành 0001 và trở thành 1.

Toàn bit 1

Nhị phân

1111 1111 1111 1111

Hex

FFFF

Nhóm nào cũng là 1111, nên chữ số nào cũng là F. Đây là 65535, giá trị 16 bit lớn nhất.

Lỗi thường gặp khi đổi nhị phân sang hex

  • Nhóm từ bên trái. Nếu nhóm từ trái, 10110 cho ra 1011 và một số 0 lẻ loi; nhóm từ phải thì là 0001 0110, tức là 16.
  • Quên thêm số 0 vào nhóm ngoài cùng bên trái trước khi đọc.
  • Viết 10 đến 15 thành hai chữ số thay vì các chữ cái A đến F.
  • Đọc các bit trong nhóm theo sai thứ tự. Bit ngoài cùng bên trái của một nhóm có giá trị 8.

Câu hỏi thường gặp về đổi nhị phân sang hex

1111 trong hệ hex là gì?

F. 1111 là 8 + 4 + 2 + 1 = 15, và 15 được viết là F.

10000000 trong hệ hex là gì?

80. Hai nhóm là 1000 và 0000, tức là 8 và 0.

Làm sao đổi nhị phân sang hex trong Python?
hex(int('11010110', 2)) trả về '0xd6'. Trong JavaScript, parseInt('11010110', 2).toString(16) trả về 'd6'. Bạn có thể chạy thử các phép chuyển đổi này trong Python playground.
Vì sao lại nhóm bit theo bốn?

Vì 2 × 2 × 2 × 2 = 16. Một nhóm bốn bit chứa đúng một chữ số hex, nên việc chuyển đổi chỉ là tra bảng, không cần tính toán gì thêm.

Tìm hiểu thêm

Công cụ lập trình khác

Hình minh họa các ngôn ngữ lập trình của Coddy

Học lập trình cùng Coddy

Bắt đầu