Bài học codec · Binary UTF-8

Binary: nhìn thấy các byte phía sau văn bản

Encode Keyboard biểu diễn mỗi byte UTF-8 bằng tám số 0 và 1. Vì vậy tiếng Anh, tiếng Việt và emoji đều dùng được — nhưng một ký tự có thể chiếm nhiều byte.

Profile app · UTF-8 Khả năng khôi phục: Chính xác với text UTF-8 hợp lệ và input gồm đủ từng nhóm 8 bit.
Mục tiêu bài học

Encode Keyboard biểu diễn mỗi byte UTF-8 bằng tám số 0 và 1. Vì vậy tiếng Anh, tiếng Việt và emoji đều dùng được — nhưng một ký tự có thể chiếm nhiều byte.

Binary là cách biểu diễn số. Encode Keyboard đổi text thành chuỗi byte UTF-8 rồi viết mỗi byte dưới dạng 8 bit. Khoảng trắng giữa các byte chỉ để dễ đọc và có thể bỏ khi decode.

01

Encode Keyboard xử lý như thế nào

1

Text thành UTF-8

Mọi chuỗi Unicode trước hết được đổi sang dãy byte UTF-8 chuẩn.

2

Mỗi byte thành 8 bit

Giá trị byte từ 0 đến 255 được thêm số 0 đầu để luôn đủ tám chữ số nhị phân.

3

Decode có kiểm tra

Chỉ chấp nhận 0 và 1, số bit phải chia hết cho tám và dãy byte phải tạo được text UTF-8 hợp lệ.

02

Ví dụ từng bước

Đầu vàoHi
Kết quả01001000 01101001

H là byte 72 và i là byte 105; phía trên là dạng 8 bit của hai byte này.

03

Nên dùng khi

  • Học cách text được lưu thành byte
  • Chia sẻ mẫu bit dễ đọc
  • Quan sát ranh giới byte UTF-8
04

Kiểm tra hợp lệ và lỗi thường gặp

  • Kết quả dài hơn nguồn rất nhiều
  • Một bit sai có thể làm đổi hoặc hỏng text decode
  • Không tạo tính bí mật
05

Thực hành trong trình duyệt

Công cụ dùng đúng quy tắc đã mô tả của app và chỉ chạy trong tab này.

Binary UTF-8Công cụ dùng đúng quy tắc đã mô tả của app và chỉ chạy trong tab này.
Kết quả

Công cụ dùng đúng quy tắc đã mô tả của app và chỉ chạy trong tab này.

06

Kiểm tra nhanh

Vì sao một emoji có thể tạo ra nhiều nhóm 8 bit?