Chuyển đổi hệ cơ số (cơ số 2 đến 36)

Chuyển số giữa mọi hệ cơ số từ 2 đến 36 với độ chính xác tùy ý: nhị phân, bát phân, thập phân, hex, số âm và phần lẻ. Miễn phí, chạy trên trình duyệt.

Không giới hạn độ dài (độ chính xác tùy ý). Dùng dấu - ở đầu cho số âm và dấu . cho phần lẻ; dấu cách, _ và tiền tố 0x / 0o / 0b được bỏ qua.

Nhị phân11111111
Bát phân377
Thập phân255
Thập lục phânFF
Cơ số 3673

Chuyển đổi hệ cơ số là gì?

Công cụ này viết lại một số từ bất kỳ hệ cơ số nào trong khoảng 2 đến 36 sang nhị phân, bát phân, thập phân, thập lục phân và thêm một hệ cơ số tùy chọn. Công cụ dùng số nguyên độ chính xác tùy ý, nên các giá trị 64 bit trở lên được chuyển đổi chính xác, đồng thời xử lý được số âm và phần lẻ.

Cách sử dụng Chuyển đổi hệ cơ số

  1. Nhập giá trị vào ô Số, ví dụ 255, -10, ff.8 hoặc 0b1010.
  2. Chọn Hệ cơ số đầu vào mà số đang được viết (2 đến 36).
  3. Chọn Hệ cơ số đích bổ sung nếu bạn cần hệ khác ngoài 2, 8, 10 hoặc 16.
  4. Bật Chữ in hoa hoặc Nhóm chữ số cho dễ đọc và sao chép bất kỳ dòng kết quả nào.

Ví dụ

Đầu vào
255 (base 10)
Đầu ra
Binary 11111111 · Octal 377 · Hexadecimal FF · Base 36: 73

Khi nào nên dùng Chuyển đổi hệ cơ số

Dùng cho các tác vụ lập trình như đọc bit mask, địa chỉ bộ nhớ, kênh màu hoặc ID cơ số 36. Đây không phải máy tính bù hai: số âm được viết với dấu trừ, không phải dạng chuỗi bit có độ rộng cố định.

Chuyển đổi hệ cơ số hoạt động như thế nào

Phần nguyên được đọc từng chữ số vào một BigInt của JavaScript (giá trị = giá trị × cơ số + chữ số), nên không bị giới hạn độ chính xác 2^53. Phần lẻ được giữ dưới dạng phân số chính xác tử số / cơ số^k. Số nguyên đầu ra dùng BigInt.toString(base); phần lẻ được tạo bằng cách nhân lặp lại với cơ số đích và lấy phần nguyên, tối đa 32 chữ số. Nếu phần lẻ không kết thúc (ví dụ 0.1 thập phân trong hệ nhị phân), kết quả bị cắt sau 32 chữ số và có thông báo. Các chữ số lớn hơn 9 dùng chữ cái a–z.

Các Trường Hợp Sử Dụng Phổ Biến

  • Đổi địa chỉ bộ nhớ dạng hex sang thập phân
  • Viết giá trị quyền hoặc cờ (flag) ở dạng nhị phân để xem bit nào đang bật
  • Giải mã một ID ngắn cơ số 36 ra giá trị thập phân
  • Xem 0.1 được biểu diễn thế nào trong hệ nhị phân và vì sao không chính xác
  • Đổi một số thập lục phân 128 bit sang thập phân mà không mất chữ số

Câu Hỏi Thường Gặp

Số có thể lớn đến mức nào?

Không có giới hạn cố định: phép tính BigInt xử lý được hàng trăm chữ số, nên các giá trị như 2^128 được chuyển đổi chính xác.

Tôi có thể dùng tiền tố như 0x hoặc 0b không?

Có. Tiền tố khớp với hệ cơ số đầu vào đã chọn (0x cho 16, 0o cho 8, 0b cho 2) được bỏ qua, cũng như dấu cách và dấu gạch dưới dùng để ngăn cách chữ số.

Vì sao phần lẻ của tôi bị cắt?

Nhiều phân số lặp vô hạn ở hệ cơ số khác (0.1 thập phân là 0.000110011… trong nhị phân). Công cụ dừng sau 32 chữ số phần lẻ và báo cho bạn biết kết quả đã bị cắt.

Số âm có được hiển thị ở dạng bù hai không?

Không. Số âm giữ dấu trừ ở đầu (−10 → −1010). Bù hai phụ thuộc vào độ rộng bit cố định, điều mà công cụ đa dụng này không giả định.

Khám phá thêm danh mục