Menu

Đổi nhị phân sang thập phân

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.

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 số nhị phân sang thập phân

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.

Những điều cần biết về số nhị phân

  • Giá trị vị trí tăng gấp đôi từ phải sang trái: 1, 2, 4, 8, 16, 32, 64, 128.
  • Tám bit tạo thành một byte, chứa được giá trị từ 0 đến 255.
  • Số nhị phân kết thúc bằng 0 là số chẵn, kết thúc bằng 1 là số lẻ.
  • 4 bit đếm được đến 15, 8 bit đến 255 và 16 bit đến 65535.

Ví dụ đổi nhị phân sang thập phân

Sáu bit: 101010

Nhị phân

101010

Thập phân

42

32 + 8 + 2 = 42. Các bit 0 không cộng thêm gì, chúng chỉ giữ chỗ.

Một byte đầy đủ

Nhị phân

11111111

Thập phân

255

128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255, giá trị lớn nhất mà một byte chứa được.

Quyền truy cập tệp

Nhị phân

111101101

Thập phân

493

256 + 128 + 64 + 32 + 8 + 4 + 1 = 493, tức là 755 trong hệ bát phân: quyền chmod 755.

Một lũy thừa của 2

Nhị phân

10000000000

Thập phân

1024

Một chữ số 1 theo sau là mười chữ số 0 là 2¹⁰, tức là 1024.

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

  • Bắt đầu số mũ từ 1 thay vì 0. Bit ngoài cùng bên phải có giá trị 2⁰, tức là 1.
  • Đọc số từ sai đầu. Bit ngoài cùng bên trái mang giá trị lớn nhất.
  • Cộng cả giá trị vị trí nằm dưới các bit 0. Chỉ những vị trí có bit 1 mới được tính.
  • Bỏ các số 0 ở đầu của một giá trị có độ dài cố định. 00001010 và 1010 đều bằng 10, nhưng một trường byte cần đủ tám bit.

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

1010 trong hệ thập phân là bao nhiêu?

10. Các bit 1 nằm ở vị trí 8 và 2, và 8 + 2 = 10.

11111111 trong hệ thập phân là bao nhiêu?

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.

Làm sao đổi nhị phân sang thập phân trong Python?
Dùng 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.
Công cụ này có giống trình dịch nhị phân không?
Không. Công cụ này đổi một số nhị phân thành giá trị của nó. Trình dịch nhị phân thì biến văn bản thành mã nhị phân của từng ký tự; để làm việc đó, hãy dùng công cụ dịch văn bản sang nhị phân.

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