Sáu bit: 101010
101010
42
32 + 8 + 2 = 42. Các bit 0 không cộng thêm gì, chúng chỉ giữ chỗ.
Gõ một số nhị phân để xem giá trị thập phân của nó, kèm cách tính ngay bên dưới. Trang mở sẵn số 101010, tức là 42.
Cập nhật lần cuối
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.
Nhị phân là hệ cơ số 2, nên chỉ có hai chữ số là 0 và 1, và mỗi vị trí có giá trị gấp đôi vị trí bên phải nó: 1, 2, 4, 8, 16, 32, 64, 128 và cứ thế tiếp tục. Một số nhị phân cho biết những giá trị vị trí nào đang được bật.
Nhờ vậy việc chuyển đổi trở thành một phép cộng. Viết giá trị vị trí dưới từng bit, giữ lại những giá trị nằm dưới bit 1 rồi cộng chúng. 1101 có bit 1 ở các vị trí 8, 4 và 1, nên nó bằng 13. Khung bên dưới công cụ làm việc này cho mọi số bạn gõ.
Khoảng trắng và tiền tố 0b được bỏ qua, và phép tính dùng BigInt, nên một số 64 bit vẫn được đổi chính xác, không bị làm tròn.
101010
42
32 + 8 + 2 = 42. Các bit 0 không cộng thêm gì, chúng chỉ giữ chỗ.
11111111
255
128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, giá trị lớn nhất mà một byte chứa được.
111101101
493
256 + 128 + 64 + 32 + 8 + 4 + 1 = 493, tức là 755 trong hệ bát phân: quyền chmod 755.
10000000000
1024
Một chữ số 1 theo sau là mười chữ số 0 là 2¹⁰, tức là 1024.
00001010 và 1010 đều bằng 10, nhưng một trường byte cần đủ tám bit.10. Các bit 1 nằm ở vị trí 8 và 2, và 8 + 2 = 10.
255. Tám bit 1 bật mọi giá trị vị trí từ 1 đến 128: 128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255.
int('101010', 2), kết quả trả về là 42. Trong JavaScript, parseInt('101010', 2) cũng làm được như vậy. Bạn có thể chạy thử các phép chuyển đổi này trong Python playground.