Saya belajar tentang standar UTF-8 dan inilah yang saya pelajari:
Definition and bytes used
UTF-8 binary representation Meaning
0xxxxxxx 1 byte for 1 to 7 bits chars
110xxxxx 10xxxxxx 2 bytes for 8 to 11 bits chars
1110xxxx 10xxxxxx 10xxxxxx 3 bytes for 12 to 16 bits chars
11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 4 bytes for 17 to 21 bits chars
Dan saya bertanya-tanya, mengapa 2 byte kode UTF-8 tidak 10xxxxxx
sebaliknya, dengan demikian mendapatkan 1 bit hingga 22 bit dengan kode UTF-8 4 byte? Seperti sekarang, 64 nilai yang mungkin hilang (dari 1000000
untuk 10111111
). Saya tidak mencoba memperdebatkan standar, tetapi saya bertanya-tanya mengapa demikian?
** EDIT **
Bahkan, kenapa tidak
UTF-8 binary representation Meaning
0xxxxxxx 1 byte for 1 to 7 bits chars
110xxxxx xxxxxxxx 2 bytes for 8 to 13 bits chars
1110xxxx xxxxxxxx xxxxxxxx 3 bytes for 14 to 20 bits chars
11110xxx xxxxxxxx xxxxxxxx xxxxxxxx 4 bytes for 21 to 27 bits chars
...?
Terima kasih!