Unicode Là Gì

     
Bài viết này phải thêm chú thích nguồn gốc để kiểm hội chứng thông tin. Mời bạn giúp hoàn thiện bài viết này bằng phương pháp bổ sung chú thích tới các nguồn đáng tin cậy. Những nội dung không có nguồn rất có thể bị nghi ngại và xóa bỏ.

Bạn đang xem: Unicode là gì


Unicode (hay hotline là mã thống nhất; mã đối chọi nhất) là cỗ mã chuẩn quốc tế có phong cách thiết kế để dùng làm bộ mã tốt nhất cho tất cả các ngôn ngữ không giống nhau trên nuốm giới, kể cả những ngôn ngữ áp dụng ký tự tượng hình phức hợp như tiếng hán của giờ Trung Quốc, giờ đồng hồ Nhật, chữ thời xưa của giờ Việt, v.v. Bởi vì những điểm ưu việt đó, Unicode đã với đang từng bước thay thế các bộ mã truyền thống, kể cả bộ mã tiêu chuẩn chỉnh ISO 8859. Unicode đang rất được sử dụng trên rất nhiều phần mềm cũng như các trình ứng dụng, ví dụ điển hình Windows.


*

Logo của Unicode


Mục lục


1 hiệp hội Unicode2 Kho chữ3 những bảng mã

3.1 UTF-323.2 UTF-163.3 UTF-83.4 UTF-74 những vấn đề khác5 Unicode bên trên mạng toàn cầu6 các phông chữ Unicode7 lịch sử dân tộc các phiên phiên bản Unicode8 Tham khảo9 link ngoài

Hiệp hội Unicode

Hiệp hội Unicode sinh sống California xuất phiên bản phiên phiên bản đầu tiên của The Unicode Standard (Tiêu chuẩn chỉnh Unicode) vào khoảng thời gian 1991, và vẫn liên tục hoàn thiện chuẩn (hiện nay đang đi vào phiên bản 4.0). Các phiên phiên bản mới được viết dựa trên các phiên bản đã có, dựa vào vậy đảm bảo an toàn được tính tương thích. Cũng xin lưu ý rằng Unicode và tiêu chuẩn ISO 10646 là nhị khái niệm trọn vẹn độc lập. Khi kể đến ISO 10646 có nghĩa là người ta đang nói tới tiêu chuẩn quốc tế bao gồm thức, còn Unicode thì được Unicode Consortium (tập hợp thay mặt các công ty tin học tập lớn) soạn ra. Tính từ lúc năm 1991, khi Nhóm thao tác ISO và Liên đoàn Unicode đưa ra quyết định hợp tác chặt chẽ với nhau trong quá trình upgrade và mở rộng chuẩn để bảo đảm tính tương hợp (cụ thể là vị trí của các ký tự bên trên cả hai mọi y hệt nhau – ví dụ điển hình chữ ơ là 01A1). Còn cùng với Unicode thì lại khác, chuẩn chỉnh này được phát triển bởi Liên đoàn Unicode. Liên đoàn Unicode là một trong tổ chức phi lợi nhuận tập vừa lòng bởi một số trong những công ty, trong số ấy có cả những công ty đa tổ quốc khổng lồ có ảnh hưởng lớn như Microsoft, Adobe Systems, IBM, Novell, Sun Microsystems, Lotus Software, Symantec với Unisys. (Danh sách không hề thiếu tại: <1>). Mặc dù nhiên, chuẩn chỉnh Unicode không chỉ quy định cỗ mã, mà còn cả bí quyết dựng hình, biện pháp mã hóa (sử dụng 1, 2, 3 xuất xắc 4 byte để màn trình diễn một ký kết tự (UTF-8 là 1 trong những ví dụ), sự đối sánh (collation) giữa những ký tự, và nhiều đặc tính khác của các ký tự, cung ứng cả những ngôn ngữ từ yêu cầu sang trái như giờ Ả Rập chẳng hạn.

Kho chữ

Unicode chỉ chiếm trước 1.114.112 (= 220+216) mã chữ, và bây giờ đã gán ký hiệu đến hơn 96000 mã chữ. 256 mã đầu tiên phù hợp với ISO 8859-1, là giải pháp mã hóa cam kết tự thịnh hành nhất trong “thế giới phương Tây”; vị đó, 128 ký kết tự đầu tiên còn được định danh theo ASCII.

Không gian mã Unicode cho các ký tự được phân thành 17 mặt phẳng (plane) cùng mỗi khía cạnh phẳng bao gồm 65536 code point. Phương diện phẳng thứ nhất (plane 0), “Mặt phẳng đa ngôn từ căn bản” (Basic Multilingual Plane – BMP), là chỗ mà phần lớn các ký kết hiệu được gán mã. BMP chứa các ký hiệu cho phần nhiều các ngữ điệu hiện đại, và một số lượng lớn những ký tự sệt biệt. Đa số những code point được phân bố trong BMP được dùng làm mã hóa các ngôn ngữ CJKV (Hán-Nhật-Hàn-Việt).

Hai khía cạnh phẳng tiếp sau được dùng cho những ký trường đoản cú “đồ họa”. Phương diện phẳng 1, “Mặt phẳng đa ngôn từ bổ sung” (Supplementary Multilingual Plane – SMP), được sử dụng chủ yếu cho các loại chữ viết cổ, ví dụ Egyptian hieroglyph (chưa được mã hóa), cơ mà cũng còn được dùng cho những ký hiệu âm nhạc. Khía cạnh phẳng 2, (Supplementary Ideographic Plane – SIP), được dùng cho khoảng 40000 chữ trung hoa ít gặp mà phần nhiều là các ký hiệu cổ, dường như cũng có một vài ký hiệu hiện đại. Mặt phẳng 14 hiện chứa một vài các cam kết tự thẻ ngôn từ không được khích lệ và một trong những ký hiệu lựa chọn trở nên thể. Phương diện phẳng 15 và Mặt phẳng 16 được mở cho những sử dụng cá nhân.

Kho ≈220 điểm mã bảo vệ sự tương thích với bộ mã UTF-16. Việc mới chỉ sử dụng hết có 10% kho chữ cho thấy rằng kho chữ độ lớn ≈20 bit này cạnh tranh bị đầy trong một tương lai gần.

Các bảng mã

Đọc từ trên đầu tới giờ, bọn họ chỉ mới biết rằng Unicode là một phương pháp để đánh số tốt nhất cho toàn bộ các ký tự được sử dụng bởi con người trong ngữ điệu viết. Tuy nhiên những con số đó được ghi trong các hệ thống xử lý văn bạn dạng lại là những vụ việc khác; những vấn đề đó là hậu quả của việc phần nhiều các phần mềm ở châu mỹ chỉ được biết các hệ thống mã hóa 8-bit, và bài toán đưa Unicode vào các ứng dụng chỉ bắt đầu diễn ra chậm rãi trong trong năm gần đây.

Các lịch trình 8-bit cũ chỉ nhận ra các cam kết tự 8 bit, và cấp thiết dùng nhiều hơn nữa 256 điểm mã nếu không có những cách giải quyết và xử lý đặc biệt. Do đó người ta phải đưa ra nhiều hiệ tượng để cần sử dụng Unicode; tùy trực thuộc vào tài năng lưu trữ, sự cân xứng với công tác nguồn và sự ảnh hưởng với các hệ thống khác nhưng mỗi người chọn 1 cơ chế.

UTF-32

Cách đơn giản nhất nhằm lưu trữ toàn bộ các 220+216 Unicode code points là sử dụng 32 bit cho mỗi ký tự, nghĩa là, 4 byte – vì đó, biện pháp mã hóa này được Unicode điện thoại tư vấn là UTF-32 với ISO/IEC 10646 điện thoại tư vấn là UCS-4. Vấn đề chính của cách này là nó hao nơi hơn 4 lần so với trước kia, cho nên nó không nhiều được dùng trong những vật nhớ ngoài (như đĩa, băng). Tuy nhiên, nó rất đối kháng giản, nên một vài chương trình sẽ sử dụng mã hóa 32 bit phía bên trong khi cách xử trí Unicode.

UTF-16

UTF-16 là 1 trong cách mã hóa sử dụng Unicode đôi mươi bit. Các ký tự vào BMP được diễn tả bằng cách dùng quý giá 16-bit của code point vào Unicode CCS. Bao gồm hai phương pháp để viết cực hiếm 16 bit trong một dòng (stream) 8-bit. Có lẽ bạn đã nghe qua chữ endian. Big Endian có nghĩa là cho Most Significant Byte đi trước, tức là nằm phía trái – cho nên vì thế ta có UTF-16BE. Còn Little Endian thì ngược lại, có nghĩa là Least Significant Byte đi trước – cho nên vì thế ta có UTF-16LE. Thí dụ, cực hiếm 16-bit của con số Hex1234 được viết là Hex12 Hex34 vào Big Endian với Hex34 Hex12 vào Little Endian.

Những ký hiệu không bên trong BMP được biểu diễn bằng cách dùng surrogate pair (cặp cố thế). Code points có giá trị từ bỏ U+D800 cho U+DFFF được nói riêng ra để dùng cho mục tiêu này. Trước hết, một code point có đôi mươi bit được phân ra có tác dụng hai team 10 bit. Team Most Significant 10 bit được map vào một giá trị 10 bit nằm trong khoảng từ u+D800 mang đến u+DBFF. Nhóm Least Significant 10 bit được map vào một giá trị 10 bit nằm trong vòng từ U+DC00 mang lại U+DFFF. Theo cách đó UTF-16 có thể biểu diễn được phần nhiều ký hiệu Unicode có 20 bit.

UTF-8


UTF-8 là 1 cách mã hóa nhằm có tác dụng giống như UCS-4 (cũng là UTF-16), chứ chưa hẳn có code point nào khác. UTF-8 được thiết kế theo phong cách để tương hợp với chuẩn chỉnh ASCII. UTF-8 rất có thể sử dụng từ một (cho hồ hết ký tự trong ASCII) cho đến 6 byte để màn trình diễn một ký tự.

Xem thêm: Máy Tính Bàn Có Kết Nối Wifi Được Không, Máy Tính Để Bàn Có Bắt Được Wifi Không

Chính bởi tương đam mê với ASCII, UTF-8 rất kỳ có ích thế khi được thực hiện để bổ sung hỗ trợ Unicode mang đến các phần mềm có sẵn. Chế tạo đó, những nhà phạt triển ứng dụng vẫn hoàn toàn có thể sử dụng những hàm thư viện bao gồm sẵn của ngôn từ lập trình C để so sánh (comparisons) cùng xếp thứ tự. (Ngược lại, để cung cấp các cách mã hóa 16 bit xuất xắc 32 bit như sinh sống trên, một vài lớn ứng dụng buộc nên viết lại cho nên tốn không hề ít công sức. Một ưu thế nữa của UTF-8 là với các văn bản chỉ có một vài ít những ký tự ngoài ASCII, hay thậm chí cho các ngôn ngữ cần sử dụng bảng vần âm Latinh như tiếng Việt, tiếng Pháp, giờ Tây Ban Nha, v.v.; phương pháp mã hóa hình dạng này rất là tiết kiệm không gian lưu trữ.

UTF-8 được thiết kế bảo vệ không gồm chuỗi byte của ký tự nào lại bên trong một chuỗi của ký kết tự khác lâu năm hơn. Điều này khiến cho việc kiếm tìm kiếm ký kết tự theo byte vào một văn bản là rất giản đơn dàng. Một số trong những dạng mã hóa không giống (như Shift-JIS) không tồn tại tính chất này làm cho việc cách xử trí chuỗi ký kết tự trở nên tinh vi hơn nhiều. Tuy vậy để tiến hành điều này đòi hỏi phải gồm độ dư (văn bản sẽ nhiều năm thêm) tuy thế những ưu điểm mà nó đem về vẫn nhiều hơn. Vấn đề nén dữ liệu chưa hẳn là mục đích nhắm tới của Unicode và việc này yêu cầu được triển khai một giải pháp độc lập.

Các quy định đúng đắn của UTF-8 như sau (các số bước đầu bằng 0x là các số biểu diễn trong hệ thập lục phân)

Các ký tự có giá trị nhỏ tuổi hơn 0x80, áp dụng 1 byte tất cả cùng giá trị.Các ký tự có giá trị bé dại hơn 0x800, thực hiện 2 byte: byte trước tiên có giá trị 0xC0 cộng với 5 bit từ lắp thêm 7 tới 11 (7th-11th least significant bits); byte thiết bị hai có giá trị 0x80 cùng với các bit từ thứ 1 tới lắp thêm 6 (1st-6th least significant bits).Các ký kết tự có giá trị nhỏ hơn 0x10000, thực hiện 3 byte: byte thứ nhất có giá trị 0xE0 cùng với 4 bit từ vật dụng 13 cho tới 16; byte máy hai có giá trị 0x80 cùng với 6 bit từ sản phẩm công nghệ 7 tới 12; byte trang bị ba có giá trị 0x80 cộng với 6 bit từ trước tiên tới thiết bị 6.Các ký kết tự có mức giá trị nhỏ tuổi hơn 0x200000, áp dụng 4 byte: byte đầu tiên có quý hiếm 0xF0 cùng với 3 bit từ sản phẩm 19 cho tới 21; byte trang bị hai có giá trị 0x80 cùng với 6 bit từ trang bị 13 tới 18; byte trang bị ba có mức giá trị 0x80 cộng với 6 bit từ đồ vật 7 tới sản phẩm công nghệ 12; byte thứ tư có mức giá trị 0x80 cùng với 6 bit từ thứ 1 tới trang bị 6.

Hiện nay, các giá trị không giống ngoài các giá trị bên trên đều không được sử dụng. Tuy nhiên, những chuỗi ký kết tự dài tới 6 byte rất có thể được cần sử dụng trong tương lai.

Chuỗi 5 byte sẽ lưu trữ được mã ký kết tự đựng đến 26 bit: byte thứ nhất có quý hiếm 0xF8 cộng với 2 bit sản phẩm 25 cùng 26, những byte tiếp theo lưu quý giá 0x80 cộng với 6 bit có chân thành và ý nghĩa tiếp theo.Chuỗi 6 byte sẽ tàng trữ được mã cam kết tự cất đến 31 bit: byte đầu tiên có giá trị 0xFC cộng với bit thứ 31, các byte tiếp theo sau lưu quý giá 0x80 cùng với 6 bit có ý nghĩa sâu sắc tiếp theo.

UTF-7

Chuẩn hóa được ít sử dụng nhất có lẽ rằng là UTF-7. Chuẩn MIME yêu thương cầu mọi thư điện tử đề xuất được gửi dưới dạng ASCII đến nên những thư năng lượng điện tử nào sử dụng mã hóa Unicode được xem là không phù hợp lệ. Tuy vậy hạn chế này thường bị phần nhiều mọi tín đồ bỏ qua. UTF-8 chất nhận được thư điện tử thực hiện Unicode cùng đồng thời cũng tương xứng với tiêu chuẩn. Những ký hiệu ASCII sẽ tiến hành giữ nguyên, mặc dù các ký kết tự khác ngoại trừ 128 cam kết hiệu ASCII chuẩn sẽ được mã hóa bởi một escape sequence hay là một dấu ‘+’ theo sau một ký kết tự Unicode được mã hóa bởi Base64, và chấm dứt bằng một dấu ‘-‘. Ký tự ‘+’ khét tiếng sẽ được mã hóa thành ‘+-‘.

Các vấn đề khác

Tiêu chuẩn chỉnh Unicode còn bao gồm một số vụ việc có liên quan, chẳng hạn character properties, text normalisation forms cùng bidirectional display order (để hiển thị đúng chuẩn các văn phiên bản chứa cả hai loại ngôn từ có phương pháp viết từ đề xuất qua trái như giờ Ả Rập hay tiếng Hebrew) cùng trái qua phải.

Unicode bên trên mạng toàn cầu

Mặc dù các quy tắc cú pháp gồm thể ảnh hưởng tới đồ vật tự lộ diện của các ký tự nhưng những văn bạn dạng HTML 4.0 với XML 1.0 đều sở hữu thể che phủ hầu hết những ký tự vào Unicode, chỉ trừ một số trong những lượng bé dại ký tự điều khiển và dãy không được gán D800-DFFF với FFFE-FFFF. Các ký từ bỏ này thể hiện hoặc là những byte nếu bộ mã gồm định nghĩa hay những chuỗi số của Unicode nếu bộ mã ko định nghĩa. Chẳng hạn: Δ Й ק م ๗ ぁ 叶 葉 냻 sẽ được hiển thị là Δ, Й, ק, م, ๗, ぁ, 叶, 葉 với 냻 nếu máy tính xách tay đã có setup font mê say hợp. Các ký tự này theo thứ tự là chữ “Delta” vào bảng chữ cái Hy Lạp, “I ngắn” trong bảng vần âm Cyril, “Meem” trong bảng chữ cái Ả Rập, “Qof” trong bảng chữ cái Hebrew, số 7 trong bảng vần âm Thái, Hiragana “A” của tiếng Nhật, chữ hán việt “diệp” giản thể, tiếng hán “diệp” phồn thể với âm “Nyrh” bằng Hangul trong tiếng Hàn/Triều Tiên.

Các font chữ Unicode

Phông chữ Unicode hoàn toàn có thể được tải về từ nhiều trang web, hầu hết chúng là miễn phí. Dù sẽ có hàng ngàn phông chữ trên thị trường, nhưng phần đông chỉ cung cấp ở một nút độ nhất định một trong những ký hiệu không tính ASCII của Unicode. Thay vì chưng đó, những phông chữ Unicode thường tập trung cung cấp các cam kết tự ASCII và phần đa chữ viết ví dụ hoặc tập các ký trường đoản cú hay cam kết hiệu. Tất cả vài lý do của điều này: các ứng dụng cùng tài liệu hết sức ít khi cần hiển thị cam kết tự từ nhiều hơn thế nữa hai khối hệ thống chữ viết; phông chữ hay là rất nhiều tập ko đầy đủ; hệ điều hành và những ứng dụng càng ngày xử lý tốt hơn những ký tự từ không ít bộ fonts khác nhau… cung ứng nữa, việc thiết kế một hệ thống chi tiết hàng nghìn cam kết tự là các bước đòi hỏi nhiều thời hạn và sức lực trong khi đa số không thu lợi gì từ các việc này….

Phông chữ Unicode cho phép gõ tiếng Việt ở những phông Times New Roman xuất xắc Tahoma giỏi Arial

Lịch sử các phiên phiên bản Unicode

Các phiên bản UnicodePhiên bảnNgày phạt hànhSáchẤn phiên bản ISO/IEC 10646 tương ứngSố hệ chữ viếtSố cam kết tự<1>
1.0.010/1991ISBN 0-201-56788-1 (quyển 1)247.161
1.0.16/1992ISBN 0-201-60845-6 (quyển 2)2528.359
1.16/1993ISO/IEC 10646-1:19932434.233
2.07/1996ISBN 0-201-48345-9ISO/IEC 10646-1:1993 cùng với các Tu chính án 5–72538.950
2.15/1998ISO/IEC 10646-1:1993 cùng với những Tu thiết yếu án 5–7 cũng tương tự hai ký tự từ bỏ Tu chính án 182538.952
3.09/1999ISBN 0-201-61633-5ISO/IEC 10646-1:20003849.259
3.13/2001ISO/IEC 10646-1:2000

ISO/IEC 10646-2:2001

4194.205
3.23/2002ISO/IEC 10646-1:2000 cùng với Tu chủ yếu án 1

ISO/IEC 10646-2:2001

4595.221
4.04/2003ISBN 0-321-18578-1ISO/IEC 10646:20035296.447
4.13/2005ISO/IEC 10646:2003 cùng rất Tu chủ yếu án 15997.720
5.07/2006ISBN 0-321-48091-0ISO/IEC 10646:2003 cùng với các Tu chính án 1 và 2, cũng như 4 ký kết tự trường đoản cú Tu bao gồm án 36499.089
5.14/2008ISO/IEC 10646:2003 cùng với những Tu chủ yếu án 1–475100.713
5.210/2009ISO/IEC 10646:2003 thuộc với những Tu chính án 1–690107.361
6.010/2010ISO/IEC 10646:2010 với dấu rupee Ấn Độ93109.449
6.11/2012ISO/IEC 10646:2012100110.181
6.29/2012ISO/IEC 10646:2012 với dấu lira Thổ Nhĩ Kỳ100110.182
6.39/2013ISO/IEC 10646:2012 cùng rất 6 ký tự100110.187
7.06/2014ISO/IEC 10646:2012 thuộc với những Tu thiết yếu án 1 với 2, cũng tương tự dấu rúp Nga123113.021

Phiên bạn dạng tiêu chuẩn Unicode sau dự loài kiến là phiên bản 8.0 vào ngày hè năm 2015.<2>

Tham khảo


^
Số ký kết tự của một phiên bản Unicode là tổng số cam kết tự viết, định dạng, và điểu khiển (tức trừ những ký tự sử dụng riêng, số đông gì chưa hẳn là ký tự, và những điểm mã cặp).

Xem thêm: Mách Bạn Cách Chữa Kim Chi Không Chua Kim Chi Bị Nhạt, Tại Sao Kim Chi Của Mình Không Chua

^

Unicode Consortium (ngày 24 tháng 2 năm 2014). “Unicode Liaison Report khổng lồ WG2” (PDF). ISO/IEC JTC1/SC2/WG2. Truy cập ngày 15 tháng 6 năm 2014.

Liên kết ngoài