Hãy so sánh bảng mã ascii và unicode

Unicode vs ASCII

ASCII và Unicode là hai bảng mã ký tự. Về cơ bản, chúng là các tiêu chuẩn về cách thể hiện các ký tự khác nhau trong nhị phân để chúng có thể được viết, lưu trữ, truyền và đọc trên phương tiện kỹ thuật số. Sự khác biệt chính giữa hai là ở cách chúng mã hóa ký tự và số bit mà chúng sử dụng cho mỗi. ASCII ban đầu sử dụng bảy bit để mã hóa từng ký tự. Điều này sau đó đã được tăng lên thành tám với ASCII mở rộng để giải quyết sự bất cập rõ ràng của bản gốc. Ngược lại, Unicode sử dụng chương trình mã hóa bit biến đổi trong đó bạn có thể chọn giữa mã hóa 32, 16 và 8 bit. Sử dụng nhiều bit hơn cho phép bạn sử dụng nhiều ký tự hơn với chi phí cho các tệp lớn hơn trong khi ít bit hơn cho bạn lựa chọn hạn chế nhưng bạn tiết kiệm được nhiều không gian. Sử dụng ít bit hơn [tức là UTF-8 hoặc ASCII] có lẽ là tốt nhất nếu bạn đang mã hóa một tài liệu lớn bằng tiếng Anh.

Một trong những lý do chính tại sao Unicode là vấn đề nảy sinh từ nhiều chương trình ASCII mở rộng không chuẩn. Trừ khi bạn đang sử dụng trang phổ biến, được sử dụng bởi Microsoft và hầu hết các công ty phần mềm khác, thì bạn có thể gặp phải sự cố với các ký tự của bạn xuất hiện dưới dạng hộp. Unicode hầu như loại bỏ vấn đề này vì tất cả các điểm mã ký tự đã được chuẩn hóa.

Một ưu điểm lớn khác của Unicode là ở mức tối đa, nó có thể chứa một số lượng lớn các ký tự. Do đó, Unicode hiện chứa hầu hết các ngôn ngữ viết và vẫn còn nhiều chỗ hơn. Điều này bao gồm các tập lệnh từ trái sang phải điển hình như tiếng Anh và thậm chí các tập lệnh từ phải sang trái như tiếng Ả Rập. Tiếng Trung, tiếng Nhật và nhiều biến thể khác cũng được thể hiện trong Unicode. Vì vậy, Unicode sẽ không được thay thế bất cứ lúc nào sớm.

Để duy trì khả năng tương thích với ASCII cũ hơn, vốn đã được sử dụng rộng rãi vào thời điểm đó, Unicode được thiết kế theo cách mà tám bit đầu tiên khớp với trang ASCII phổ biến nhất. Vì vậy, nếu bạn mở tệp được mã hóa ASCII bằng Unicode, bạn vẫn nhận được các ký tự được mã hóa chính xác trong tệp. Điều này tạo thuận lợi cho việc áp dụng Unicode vì nó giảm bớt tác động của việc áp dụng một tiêu chuẩn mã hóa mới cho những người đã sử dụng ASCII.

Tóm lược:

1.ASCII sử dụng mã hóa 8 bit trong khi Unicode sử dụng mã hóa bit biến.2.Unicode được chuẩn hóa trong khi ASCII không.3.Unicode đại diện cho hầu hết các ngôn ngữ viết trên thế giới trong khi ASCII thì không.

4.ASCII có tương đương trong Unicode.

Bài tập và thực hành 1: Làm quen với thông tin và mã hóa thông tin – Câu 2 trang 17 SGK Tin học 10. Hãy phân biệt bộ mã ASCII và bộ Unicode.

Hãy phân biệt bộ mã ASCII và bộ Unicode.

Trả lời:

– Bộ mã ASCII [mã chuẩn của MT dùng để trao đổi thông tin] sử dụng 8 bit để mã hoá kí tự. Nó chỉ mã hoá được 256 kí tự [từ 0 đến 255] gọi là mà ASCII thập phân của kí tự.

– Còn bộ mã Unicode sử dụng 16 bit để mã hoá, nó có thể mã hoá được 65536 kí tự khác nhau, cho phép thể hiện trong máy tính văn bản của hầu hết các ngôn ngữ trên thế giới bằng một bộ mã này.

Hiểu lý do tại sao ASCII và Unicode được tạo ra ngay từ đầu đã giúp tôi hiểu cách chúng thực sự hoạt động.

ASCII, nguồn gốc

Như đã nêu trong các câu trả lời khác, ASCII sử dụng 7 bit để thể hiện một ký tự. Bằng cách sử dụng 7 bit, chúng ta có thể có tối đa 2 ^ 7 [= 128] kết hợp riêng biệt * . Điều đó có nghĩa là chúng ta có thể đại diện tối đa 128 ký tự.

Chờ đã, 7 bit? Nhưng tại sao không phải là 1 byte [8 bit]?

Bit cuối cùng [thứ 8] được sử dụng để tránh lỗi là bit chẵn lẻ . Điều này có liên quan nhiều năm trước.

Hầu hết các ký tự ASCII là các ký tự có thể in được của bảng chữ cái như abc, ABC, 123 ,? &!, V.v. Các ký tự khác là các ký tự điều khiển như trả về vận chuyển, nguồn cấp dữ liệu , tab, v.v.

Xem bên dưới biểu diễn nhị phân của một vài ký tự trong ASCII:

0100101 -> % [Percent Sign - 37] 1000001 -> A [Capital letter A - 65] 1000010 -> B [Capital letter B - 66] 1000011 -> C [Capital letter C - 67] 0001101 -> Carriage Return [13]

Xem bảng ASCII đầy đủ ở đây .

ASCII chỉ dành cho tiếng Anh.

Gì? Tại sao chỉ có tiếng Anh? Có rất nhiều ngôn ngữ ngoài kia!

Bởi vì trung tâm của ngành công nghiệp máy tính là ở Hoa Kỳ vào thời điểm đó. Kết quả là, họ không cần phải hỗ trợ các dấu hoặc các dấu khác như á, ü, ç, ñ, v.v. [còn gọi là dấu phụ ].

ASCII mở rộng

Một số người thông minh bắt đầu sử dụng bit thứ 8 [bit được sử dụng cho tính chẵn lẻ] để mã hóa nhiều ký tự hơn để hỗ trợ ngôn ngữ của họ [ví dụ: để hỗ trợ "é", bằng tiếng Pháp]. Chỉ cần sử dụng thêm một bit nhân đôi kích thước của bảng ASCII ban đầu để ánh xạ tối đa 256 ký tự [2 ^ 8 = 256 ký tự]. Và không phải 2 ^ 7 như trước [128].

10000010 -> é [e with acute accent - 130] 10100000 -> á [a with acute accent - 160]

Tên của "ASCII này được mở rộng thành 8 bit chứ không phải 7 bit như trước" có thể chỉ được gọi là "ASCII mở rộng" hoặc "ASCII 8 bit".

Như @Tom đã chỉ ra trong bình luận của mình bên dưới, không có thứ gọi là " ASCII mở rộng ", đây là một cách dễ dàng để tham khảo thủ thuật 8 bit này. Có nhiều biến thể của bảng ASCII 8 bit, ví dụ, ISO 8859-1, còn được gọi là ISO Latin-1 .

Unicode, sự trỗi dậy

ASCII Extended giải quyết vấn đề cho các ngôn ngữ dựa trên bảng chữ cái Latinh ... còn những ngôn ngữ khác cần một bảng chữ cái hoàn toàn khác thì sao? Người Hy Lạp? Tiếng Nga? Tiếng Trung và thích?

Chúng tôi sẽ cần một bộ ký tự hoàn toàn mới ... đó là lý do đằng sau Unicode. Unicode không chứa mọi ký tự từ mọi ngôn ngữ, nhưng chắc chắn nó chứa một lượng ký tự khổng lồ [ xem bảng này ].

Bạn không thể lưu văn bản vào ổ cứng dưới dạng "Unicode". Unicode là một đại diện trừu tượng của văn bản. Bạn cần "mã hóa" biểu diễn trừu tượng này. Đó là nơi mã hóa phát huy tác dụng.

Mã hóa: UTF-8 so với UTF-16 so với UTF-32

Câu trả lời này thực hiện một công việc khá tốt trong việc giải thích những điều cơ bản:

  • UTF-8 và UTF-16 là các bảng mã có độ dài thay đổi.
  • Trong UTF-8, một ký tự có thể chiếm tối thiểu 8 bit.
  • Trong UTF-16, độ dài ký tự bắt đầu bằng 16 bit.
  • UTF-32 là mã hóa có độ dài cố định 32 bit.

UTF-8 sử dụng bộ ASCII cho 128 ký tự đầu tiên. Điều đó rất tiện lợi vì điều đó có nghĩa là văn bản ASCII cũng hợp lệ trong UTF-8.

Ghi nhớ:

  • UTF- 8 : tối thiểu 8 bit.
  • UTF- 16 : tối thiểu 16 bit.
  • UTF- 32 : tối thiểu và tối đa 32 bit.

Chú thích:

Tại sao 2 ^ 7?

Điều này là rõ ràng đối với một số, nhưng chỉ trong trường hợp. Chúng tôi có bảy vị trí có sẵn được điền bằng 0 hoặc 1 [ Mã nhị phân ]. Mỗi có thể có hai kết hợp. Nếu chúng ta có bảy điểm, chúng ta có 2 * 2 * 2 * 2 * 2 * 2 * 2 = 2 ^ 7 = 128 kết hợp. Hãy nghĩ về điều này như một khóa kết hợp với bảy bánh xe, mỗi bánh chỉ có hai số.

Nguồn: Wikipedia và bài đăng blog tuyệt vời này .

1. - Bộ mã ASCII sử dụng 8 bit để mã hoá kí tự. Nó chỉ mã hoá được 256 kí tự [từ 0 đến 255]

– Bộ mã Unicode sử dụng 16 bit để mã hoá, nó có thể mã hoá được 65536 kí tự khác nhau

2.Phát biểu trên là đúng, vì tất cả các thông tin khi đưa vào máy tính thì chúng đều biểri đổi thành dạng chung - dãy bit, dãy bit đó là duy nhị phân của thông tin mà nó biểu diễn

3. Hệ đếm cơ số 16 sử dụng các kí hiệu: các chữ số 0, 1,2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F trong đó A, B, c, D, E, F có giá trị tương ứng là 10, 11, 12, 13, 14, 15 trong hệ thập phân.

[ Có trong sách ht mà ]

Hay nhất

Chào bạn manh7a1

- Bộ mã ASCII [mã chuẩn của MT dùng để trao đổi thông tin] sử dụng 8 bit để mã hoá kí tự. Nó chỉ mã hoá được 256 kí tự [từ 0 đến 255] gọi là mà ASCII thập phân của kí tự.

- Còn bộ mã Unicode sử dụng 16 bit để mã hoá, nó có thể mã hoá được 65536 kí tự khác nhau, cho phép thể hiện trong máy tính văn bản của hầu hết các ngôn ngữ trên thế giới bằng một bộ mã này.

Chúc bạn có một kì nghỉ hè vui vẻ ^^

-Yasou-[QTV]

Video liên quan

Chủ Đề