Công cụ chuyển ASCII sang nhị phân là gì?
Đây là công cụ biến văn bản thông thường thành mã nhị phân. Mỗi ký tự bạn nhập vào sẽ được tra trong bảng mã ASCII để tìm ra giá trị số tương ứng (từ 0 đến 127 với ASCII chuẩn), sau đó con số ấy được viết lại dưới dạng nhị phân 8 bit. Khi nối các byte này lại với nhau, bạn sẽ có biểu diễn nhị phân của cả thông điệp — đúng theo cách máy tính lưu trữ văn bản ở tầng sâu nhất.
Cách sử dụng
Nhập hoặc dán văn bản bất kỳ vào ô nhập liệu. Chọn xem bạn muốn có dấu cách giữa mỗi byte (dễ đọc hơn) hay không dùng dấu phân tách nào (một luồng bit liền mạch). Công cụ sẽ trả về chuỗi nhị phân đầy đủ, kèm theo số ký tự và tổng số bit.
Giải thích công thức
Với mỗi ký tự c, công cụ tính ASCII(c), tức mã thập phân của ký tự đó. Mã này được chuyển sang hệ cơ số 2 và thêm các số 0 vào bên trái cho đến khi đủ 8 bit.
$$\text{Binary} = \bigoplus_{i=1}^{n}\ \operatorname{pad}_{8}\!\left(\text{bin}\big(\operatorname{ASCII}(\text{Text}_i)\big)\right)$$
Ví dụ chữ "H" có mã ASCII là \(72\), viết ở dạng nhị phân là \(1001000\), sau khi thêm số 0 sẽ thành \(01001000\). Nối byte của tất cả các ký tự lại với nhau sẽ ra kết quả cuối cùng.
Ví dụ minh họa
Lấy từ "Hi" làm ví dụ. "H" = \(72\) = \(01001000\), còn "i" = \(105\) = \(01101001\). Nếu chọn dấu cách làm dấu phân tách, kết quả sẽ là 01001000 01101001. Như vậy ta có hai ký tự và tổng cộng 16 bit.
Cách Chuyển Đổi Văn Bản Thành Nhị Phân Bằng Tay
Chuyển đổi văn bản thành nhị phân 8-bit là một quá trình theo ký tự: mỗi ký tự được chuyển đổi độc lập thành một byte, và các byte được nối với nhau theo thứ tự. Dưới đây là toàn bộ quy trình, minh họa bằng chữ cái K.
- Lấy một ký tự. Xử lý văn bản từ trái sang phải, một ký tự tại một thời điểm. Chúng tôi sẽ chuyển đổi ký tự
K. - Tra cứu mã ASCII thập phân của nó. Sử dụng bảng tham khảo ở trên,
Kcó mã ASCII thập phân 75. - Chuyển đổi mã thập phân sang cơ số 2. Chia lặp lại cho 2 và đọc các số dư từ dưới lên trên:
75 ÷ 2 = 37 dư 1; 37 ÷ 2 = 18 dư 1; 18 ÷ 2 = 9 dư 0; 9 ÷ 2 = 4 dư 0; 4 ÷ 2 = 2 dư 0; 2 ÷ 2 = 1 dư 0; 1 ÷ 2 = 0 dư 1.
Đọc các số dư từ cuối cùng đến đầu tiên cho ta1001011. Bạn có thể xác minh bằng các giá trị vị trí: \(64 + 8 + 2 + 1 = 75\), và dưới dạng nhị phân là \(1001011_2 = 75_{10}\) 1001011. - Thêm các số 0 ở phía trước để có 8 bit. Một giá trị nhị phân thô có thể ngắn hơn 8 chữ số. Thêm các số 0 ở phía trước cho đến khi byte có chính xác 8 bit:
1001011→01001011. Mỗi ký tự trong lược đồ này chiếm một byte đầy đủ, do đó bước thêm số 0 này giữ cho tất cả các byte có cùng chiều dài và có thể giải mã được. - Nối các byte lại với nhau. Lặp lại các bước 1–4 cho mỗi ký tự và nối các kết quả theo thứ tự. Đối với từ
Kit:K=01001011,i=01101001,t=01110100, cho ra010010110110100101110100. Với bộ phân tách được đặt thành khoảng trắng, kết quả đầu ra tương tự được đọc là01001011 01101001 0111010001001011 01101001 01110100.
Để đảo ngược quá trình, chia chuỗi nhị phân thành các nhóm 8-bit và giải mã mỗi byte trở lại ký tự của nó bằng một bộ giải mã nhị phân sang văn bản.
Câu hỏi thường gặp
Vì sao mỗi ký tự lại dùng 8 bit? ASCII chuẩn chỉ cần 7 bit, nhưng một byte (8 bit) là đơn vị lưu trữ phổ biến nhất, nên mỗi ký tự được bổ sung thêm cho đủ 8 bit.
Công cụ có hỗ trợ dấu cách và ký hiệu không? Có. Dấu cách là ASCII \(32\) (\(00100000\)), và các dấu câu cũng có mã riêng của chúng.
Còn ký tự có dấu hay emoji thì sao? Công cụ này dành cho ASCII chuẩn. Các ký tự có mã lớn hơn \(127\) nằm ngoài phạm vi ASCII và có thể không mã hóa được trọn vẹn trong 8 bit. Lưu ý rằng chữ tiếng Việt có dấu (như "ô", "ư", "đ") thuộc nhóm này và sẽ không cho kết quả chính xác trong 8 bit.