Menu
Quảng cáo

Dịch nhị phân

Dịch văn bản sang nhị phân và nhị phân ngược lại thành văn bản, từng byte một.

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

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

Quảng cáo

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ông cụ dịch mã nhị phân là gì?

Công cụ dịch mã nhị phân chuyển văn bản con người đọc được thành mã nhị phân (binary), tức các số 1 và 0 mà máy tính thực sự lưu trữ, và chuyển mã nhị phân đó ngược lại thành văn bản. Mỗi ký tự bạn gõ được lưu dưới dạng một con số, và con số đó được viết ở hệ cơ số 2 thành một dãy bit. Công cụ này cho bạn thấy chính xác các bit đó là gì, và cũng cho phép đi theo chiều ngược lại.

Bên dưới, mỗi ký tự trước tiên được mã hóa thành các byte theo UTF-8, rồi mỗi byte được viết thành 8 chữ số nhị phân. Chữ hoa C là byte 67, tức 01000011 ở dạng nhị phân. Một ký tự nhiều byte như é hay một emoji sẽ thành nhiều byte, và công cụ này giữ nguyên chúng để chuyển đi rồi chuyển lại không mất dữ liệu.

Đây là cách tuyệt vời để *thấy* văn bản thực sự được lưu trữ ra sao, để giải mã một chuỗi nhị phân ai đó gửi cho bạn, hoặc để làm bài tập khoa học máy tính. Mọi thứ chạy cục bộ trong trình duyệt: văn bản của bạn không bao giờ được tải lên.

Bạn sẽ học được gì khi dịch mã nhị phân

  • Mỗi ký tự được lưu dưới dạng một con số; con số đó viết ở hệ cơ số 2 chính là mã nhị phân của nó.
  • Một byte gồm 8 bit, và mỗi ký tự ASCII vừa trong một byte (giá trị từ 0 đến 127).
  • Chữ A là 65 (01000001), a là 97 (01100001): chữ thường lớn hơn chữ hoa đúng 32.
  • Các ký tự ngoài ASCII (é, 東, 👋) dùng UTF-8, chiếm từ 2 đến 4 byte, nên tương ứng với 16 đến 32 bit.

Cách chuyển văn bản sang nhị phân từng bước

  1. Chọn chiều chuyển đổi

    Chọn Văn bản → Nhị phân để mã hóa, hoặc Nhị phân → Văn bản để giải mã một chuỗi nhị phân có sẵn.

  2. Nhập hoặc dán dữ liệu đầu vào

    Nhập văn bản bất kỳ để mã hóa, hoặc dán các chữ số nhị phân để giải mã. Khi giải mã, dấu cách và xuống dòng giữa các byte được bỏ qua.

  3. Chọn ký tự phân cách (khi mã hóa)

    Ngăn cách mỗi byte bằng dấu cách, dòng mới hoặc không gì cả, tiện khi định dạng đích cần một dãy bit liền mạch.

  4. Sao chép hoặc đảo chiều

    Sao chép kết quả chỉ với một cú nhấp, hoặc nhấn nút đảo chiều để đưa đầu ra trở lại làm đầu vào và chuyển đổi ngược lại.

Tra cứu nhanh chữ sang nhị phân (ASCII)

Các ký tự thường gặp cùng mã thập phân và mã nhị phân 8 bit. Xem chi tiết đầy đủ trong bảng ASCII và đặc tả mã hóa UTF-8 cho các ký tự lớn hơn 127. Bạn cũng có thể tra bất kỳ ký tự nào bằng công cụ chuyển đổi ASCII.

Ký tựThập phânNhị phân
(dấu cách)3200100000
04800110000
95700111001
A6501000001
C6701000011
Z9001011010
a9701100001
z12201111010
!3300100001
?6300111111

Ví dụ để thử

Mã hóa một chữ cái

Paste a small example into the tool and change one part at a time.

A có mã 65, tức 01000001 ở dạng nhị phân, đúng 8 bit.

Mã hóa một từ

Copy the original value, run the tool, then compare the result.

Hi trở thành 01001000 01101001, mỗi ký tự là một byte 8 bit.

Giải mã nhị phân trở lại văn bản

Take a value from your own work and use this tool to inspect or prepare it.

Dán chuỗi này ở chế độ Nhị phân → Văn bản để nhận lại Coddy.

Những lỗi thường gặp

  • Độ dài chuỗi nhị phân không phải bội số của 8: mỗi ký tự cần đúng 8 bit, nên thừa hay thiếu một bit cũng làm hỏng việc giải mã.
  • Nghĩ rằng một ký tự luôn bằng một byte: chữ có dấu, emoji và chữ viết không phải Latinh dùng nhiều byte UTF-8.
  • Nhầm mã nhị phân của ký tự với mã thập phân của nó: 65 (thập phân) và 01000001 (nhị phân) là cùng một giá trị ở các hệ cơ số khác nhau.

Câu hỏi thường gặp về dịch mã nhị phân

Làm sao chuyển văn bản sang nhị phân?

Nhập văn bản ở chế độ Văn bản → Nhị phân. Mỗi ký tự được mã hóa thành byte UTF-8 và hiển thị thành 8 chữ số nhị phân, ngăn cách bằng ký tự phân cách bạn chọn.

Làm sao chuyển nhị phân sang văn bản?

Chuyển sang chế độ Nhị phân → Văn bản và dán mã nhị phân vào. Nhóm các bit thành từng byte 8 bit (dấu cách và xuống dòng được bỏ qua); công cụ giải mã chúng theo UTF-8 trở lại thành văn bản đọc được.

Công cụ có hỗ trợ emoji và ký tự không phải tiếng Anh không?

Có. Văn bản được mã hóa bằng UTF-8, nên chữ có dấu (kể cả tiếng Việt), ký tự CJK và emoji đều chuyển đi chuyển lại chính xác, chỉ là chúng dùng nhiều hơn một byte.

Vì sao xuất hiện lỗi 'không phải bội số của 8'?

Mỗi ký tự là 8 bit, nên tổng số chữ số nhị phân phải chia hết cho 8. Hãy kiểm tra xem đầu vào có bị thiếu hay thừa một bit không.

Văn bản có bị tải lên đâu không?

Không. Toàn bộ quá trình chuyển đổi chạy cục bộ trong trình duyệt bằng các API TextEncoder/TextDecoder có sẵn: không có gì được gửi tới máy chủ.

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