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

Từ ngắn nhất và dài nhất thế giới - Thế giới cực đoan của số ký tự qua các ngôn ngữ

Khoảng 10 phút đọc

Tên hóa học của protein "titin" dài 189.819 ký tự. Chỉ riêng việc đọc to đã mất khoảng 3 giờ 30 phút, và nó không xuất hiện trong bất kỳ từ điển tiếng Anh nào. Trong khi đó, có những ngôn ngữ tồn tại từ chỉ gồm 1 ký tự. Nhìn các ngôn ngữ trên thế giới qua lăng kính số ký tự, ta thấy con người đã nén và mở rộng ý nghĩa bằng những cách đa dạng đến kinh ngạc. Bài viết này giới thiệu các từ ngắn nhất và dài nhất trong từng ngôn ngữ với số ký tự cụ thể.

Những từ ngắn nhất thế giới

"Từ có ý nghĩa chỉ với 1 ký tự" tồn tại trong nhiều ngôn ngữ hơn bạn nghĩ. Tiếng Anh có "I" (tôi) và "a" (một) là ví dụ ai cũng biết, nhưng tiếng Nhật còn cực đoan hơn. Các chữ Hán như 目 (mắt), 手 (tay), 歯 (răng), 火 (lửa), 木 (cây) là những từ hoàn chỉnh chỉ với một ký tự.

Tiếng Trung còn đi xa hơn - hầu như mọi chữ Hán đều hoạt động như một từ độc lập có nghĩa hoàn chỉnh. Các ký tự như 人 (người), 大 (lớn), 水 (nước), 山 (núi) gói gọn cả khái niệm trong một ký tự. Thiết kế ngôn ngữ hoàn thành ý nghĩa trong một ký tự là đặc điểm thú vị khi xem xét mối quan hệ giữa ký tự và byte.

Ngôn ngữVí dụ từ ngắn nhấtSố ký tựNghĩaGhi chú
Tiếng AnhI, a1 ký tựtôi / mộtI viết hoa là 1 byte
Tiếng Nhật (Hán tự)目, 手, 火1 ký tựmắt, tay, lửa3 byte trong UTF-8
Tiếng Trung人, 大, 水1 ký tựngười, lớn, nướcGần như mọi chữ Hán đều là từ 1 ký tự
Tiếng Hàn나 (na)1 ký tựtôi1 ký tự Hangul = 3 byte UTF-8
Tiếng Việtở1 ký tựsống, ở1 ký tự có dấu thanh

Điểm đáng chú ý là mật độ thông tin của "1 ký tự" khác nhau rất lớn giữa các ngôn ngữ. Tiếng Anh "a" là 1 byte, nhưng tiếng Nhật "目" là 3 byte trong UTF-8. Cùng "1 ký tự" nhưng lượng dữ liệu máy tính xử lý chênh lệch 3 lần. Đây là cùng cấu trúc với cách sự khác biệt toàn chiều rộng và nửa chiều rộng ảnh hưởng đến đếm ký tự.

Từ dài trong ngôn ngữ châu Âu - Văn hóa từ ghép của tiếng Đức

Tiếng Đức được gọi là "vua từ ghép". Danh từ có thể nối vô hạn để tạo từ mới, về lý thuyết có thể tạo ra từ dài vô tận.

TừSố ký tựNghĩaBối cảnh
Donaudampfschifffahrtselektrizitätenhauptbetriebswerkbauunterbeamtengesellschaft80 ký tựHiệp hội quan chức cấp dưới của trụ sở quản lý dịch vụ điện tàu hơi nước sông DanubeSách Kỷ lục Guinness bản 1972 đăng đây là từ tiếng Đức dài nhất từng được in (khi đăng viết 79 ký tự theo chính tả cũ)
Rindfleischetikettierungsüberwachungsaufgabenübertragungsgesetz63 ký tựLuật ủy quyền giám sát ghi nhãn thịt bòTên luật của bang Mecklenburg-Vorpommern, ban hành năm 1999 và bãi bỏ năm 2013
Kraftfahrzeughaftpflichtversicherung36 ký tựBảo hiểm trách nhiệm xe cơ giớiTừ ghép thường dùng

Năm 2013, bang Mecklenburg-Vorpommern của Đức bãi bỏ tên luật 63 ký tự. Đây là luật về bệnh bò điên trở nên không cần thiết do thay đổi quy định EU. Việc bãi bỏ trở thành tin tức với tiêu đề "từ dài nhất tiếng Đức đã biến mất".

Tên địa danh dài nhất thế giới

Tên địa danhSố ký tựVị tríNgôn ngữ
Taumatawhakatangihangakoauauotamateaturipukakapikimaungahoronukupokaiwhenuakitanatahu85 ký tựNew ZealandTiếng Maori
Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch58 ký tựWales (Anh)Tiếng Wales
กรุงเทพมหานคร... (tên chính thức Bangkok)168 ký tự (chuyển tự Latin)Thái LanTiếng Thái
Chargoggagoggmanchauggagoggchaubunagungamaugg45 ký tựMassachusetts (Mỹ)Gốc Algonquin

Tên ngọn đồi New Zealand có nghĩa "nơi Tamatea, người đàn ông có đầu gối lớn, trượt, leo và nuốt núi, thổi sáo cho người yêu". Văn hóa Maori đặt tên địa danh bằng cách mô tả sự kiện xảy ra tại đó, tạo ra những tên cực dài.

Ngược lại, tên địa danh cũng lệch về phía rất ngắn. Trong tiếng Na Uy, tiếng Đan Mạch và tiếng Thụy Điển, "å" là một từ có nghĩa "dòng suối nhỏ" và xuất hiện nguyên dạng như một thành phần của tên địa danh. Tên địa danh cực ngắn gây ra loại vấn đề khác: gõ vào hộp tìm kiếm cũng không lọc được ứng viên, hoặc bị chặn bởi ràng buộc số ký tự tối thiểu của cơ sở dữ liệu - làm khó nhà phát triển theo hướng ngược lại với giới hạn ký tự URL.

Tên hóa chất - Đỉnh cao của số ký tự

Câu hỏi "từ dài nhất thế giới" không có một câu trả lời duy nhất, bởi kết quả thay đổi theo việc ta chấp nhận cái gì là một từ. Chỉ tính mục từ có trong từ điển? Có tính cả tên địa danh và tên luật? Có đếm cả tên hóa học được sinh ra một cách máy móc theo quy tắc đặt tên? Mỗi tiêu chí lập nên một kỷ lục khác nhau. Trong hóa học, danh pháp IUPAC biến cấu trúc phân tử thành tên gọi, nên phân tử càng lớn thì tên càng dài.

Tên chấtSố ký tựLoạiCó trong từ điển
Tên hóa học của titin189.819 ký tựProteinKhông
Pneumonoultramicroscopicsilicovolcanoconiosis45 ký tựBệnh phổi (cùng một bệnh với bụi phổi silic)Có (từ điển tiếng Anh)
Supercalifragilisticexpialidocious34 ký tựTừ tạo trong phimMột số từ điển

Từ dài nhất có mặt trong các từ điển tiếng Anh lớn là "Pneumonoultramicroscopicsilicovolcanoconiosis" (45 ký tự), chỉ bệnh phổi do hít phải những hạt silic cực mịn có nguồn gốc núi lửa. Tuy nhiên về mặt y học, từ này chỉ cùng một bệnh với "bụi phổi silic" (silicosis) đã có tên sẵn, và bản thân nó được tạo ra một cách có chủ ý nhằm "đặt ra từ dài nhất trong tiếng Anh". Nếu bỏ các thuật ngữ chuyên ngành ra thì từ dài nhất là "floccinaucinihilipilification" (29 ký tự, hành vi đánh giá một thứ là vô giá trị), với những ví dụ sử dụng được ghi nhận từ tận năm 1741.

Giới hạn độ dài định danh trong ngôn ngữ lập trình

Ngôn ngữĐộ dài định danh tối đaKhuyến nghị thực tếGhi chú
C (C99)63 ký tự (có hiệu lực)20-30 ký tựVượt 63 không gây lỗi cú pháp
JavaKhông có giới hạn trong đặc tả ngôn ngữ20-40 ký tựĐịnh dạng tệp class có giới hạn độ dài riêng
PythonKhông giới hạn20-30 ký tựPEP 8 khuyến nghị ngắn gọn
JavaScriptKhông giới hạn15-30 ký tựĐược rút ngắn khi minify
SQL (chuẩn)128 ký tựDưới 30 ký tựKhác nhau theo RDBMS
COBOL31 ký tự31 ký tựĐộ dài tối đa của từ do người dùng định nghĩa

Từ do người dùng định nghĩa trong COBOL dài tối đa 31 ký tự, có thể chứa chữ, số, dấu gạch nối và dấu gạch dưới. Điểm khác biệt lớn so với các ngôn ngữ hiện đại là giới hạn này được ghi rõ ngay trong đặc tả ngôn ngữ. Ngôn ngữ hiện đại hầu như không có giới hạn, nhưng độ dài khuyến nghị cho tên biến và hàm là 20-30 ký tự, phản ánh giới hạn khả năng đọc của con người.

Mật độ thông tin mỗi ký tự - Chỉ tính được giới hạn trên

Dựa trên các từ ngắn nhất và dài nhất đã xem ở trên, hãy thử nghĩ về "mật độ thông tin của một ký tự". Từ góc nhìn lý thuyết thông tin, lượng thông tin mà một ký tự truyền tải được chênh nhau rất xa tùy theo hệ thống chữ viết.

Điều tính được ở đây là "giới hạn trên". Nếu một hệ thống chữ viết có N ký tự và ta giả định mọi ký tự xuất hiện với xác suất bằng nhau, thì lượng thông tin một ký tự mang được là log2 N bit. Bảng chữ cái 26 chữ cho khoảng 4,7 bit; 11.172 âm tiết Hangul cho khoảng 13,4 bit; chữ Hán dùng hằng ngày dù chỉ tính vài nghìn chữ cũng cho khoảng 11 bit. Lý lẽ rất đơn giản: càng nhiều loại ký tự thì một ký tự càng phân biệt được nhiều nghĩa.

So các giới hạn trên với nhau, một chữ Hán mang được hơn hai lần lượng thông tin của một chữ cái (11,2 ÷ 4,7 ≈ 2,4). Nhưng trong văn bản thực tế, tần suất xuất hiện của các ký tự lệch rất mạnh (tiếng Anh thì e và t nổi trội, tiếng Nhật thì の và い), nên lượng thông tin trung bình mỗi ký tự nhỏ hơn giới hạn trên này. Cần nhớ rằng tỷ lệ giữa các giới hạn trên không đồng nghĩa với tỷ lệ khả năng biểu đạt thực tế.

Xét về khối lượng dữ liệu, chỉ nhìn số ký tự cũng dễ lệch khỏi thực tế. Trong UTF-8, chữ Hán, hiragana và Hangul chiếm 3 byte mỗi ký tự còn chữ cái Latin chỉ 1 byte, nên chênh lệch gấp đôi về số ký tự vẫn có thể đảo ngược khi tính theo byte. Thêm nữa, khi đi qua các thuật toán nén như gzip, văn bản càng nhiều phần lặp lại thì càng co nhỏ, nên kích thước sau khi nén phụ thuộc vào cách viết hơn là vào ngôn ngữ.

Giới hạn ký tự và sự công bằng ngôn ngữ

Khi X (Twitter) mở rộng giới hạn tiếng Anh lên 280 ký tự năm 2017 trong khi giữ tiếng Nhật, Trung, Hàn ở 140, đó là quyết định tính đến khoảng cách mật độ thông tin này. Việc xem 280 ký tự tiếng Anh và 140 ký tự tiếng Nhật là mang lượng thông tin tương đương chỉ là một cách ước lượng, tức một sự đơn giản hóa có chủ ý trong thiết kế.

Sự khác biệt giữa các ngôn ngữ cũng quan trọng khi thiết kế độ dài VARCHAR cơ sở dữ liệu. Trường đủ 100 ký tự cho tiếng Anh có thể lưu thông tin tương đương trong 50 ký tự tiếng Nhật.

Số ký tự cực đoan dạy chúng ta điều gì

Đặt từ ngắn nhất và dài nhất thế giới cạnh nhau, sự khác biệt cơ bản trong thiết kế ngôn ngữ hiện ra. Chữ Hán tiếng Trung và Nhật tiến hóa theo hướng "nén ý nghĩa vào một ký tự", trong khi tiếng Đức và Phần Lan tiến hóa theo hướng "nối từ để biểu đạt khái niệm mới".

Hiểu cơ bản Unicode sẽ thấy định nghĩa "1 ký tự" bản thân nó đã phức tạp về mặt kỹ thuật. Đằng sau công việc tưởng chừng đơn giản là đếm ký tự, ẩn chứa thế giới sâu sắc của ngôn ngữ và công nghệ.

Thử với công cụ đếm ký tự

Đo các từ được giới thiệu trong bài viết này bằng công cụ đếm ký tự thực tế sẽ mang lại những phát hiện thú vị. Từ ghép 80 ký tự tiếng Đức là bao nhiêu byte trong UTF-8? Tên địa danh 85 ký tự New Zealand mở rộng thành bao nhiêu ký tự khi mã hóa URL? Hãy tự tay trải nghiệm cách định nghĩa "1 ký tự" thay đổi theo ngữ cảnh.

Chia sẻ bài viết này