HTML基礎(chǔ)教程之計(jì)算機(jī)編碼(字符集)
計(jì)算機(jī)編碼(字符集)——了解
為什么要有字符集,是因?yàn)橛?jì)算機(jī)只能處理二進(jìn)制數(shù)據(jù)。為了讓計(jì)算機(jī)能識(shí)別人類語(yǔ)言(0-9、a-z、A-Z、特殊符號(hào)),我們就需要對(duì)這每一個(gè)字符進(jìn)行“編碼”。所謂“編碼”就是:每一個(gè)字符,可以用不同的二進(jìn)制來(lái)表示。
假設(shè):A 用二進(jìn)制表示 1000, B 用二進(jìn)制表示 1001
ASCII編碼:用1個(gè)字節(jié)(8位二進(jìn)制)來(lái)表示所有字符,共可以表示 2^8 = 256 。
ANSI編碼:其它國(guó)家,都對(duì)ASCII編碼進(jìn)行擴(kuò)展,用于顯示本國(guó)的語(yǔ)言。
ANSI在中文操作系統(tǒng)下,代表gb2312
ANSI在繁體操作系統(tǒng)下,代表big5
ANSI在日文操作系統(tǒng)下,代表JIS
……
用2個(gè)字節(jié)(16位二進(jìn)制)(來(lái)表示,共可以表示 2^16 = 65536個(gè)字符。
GB2312中共收錄了6763個(gè)漢字。
GBK編碼:對(duì)GB2312進(jìn)行擴(kuò)充,收錄了一些冷門(mén)字、罕見(jiàn)字、古漢語(yǔ)等。共收錄2.1萬(wàn)個(gè)漢字。
Unicode編碼:計(jì)劃將世界上所有字符統(tǒng)一編碼,用4個(gè)字節(jié)(32位二進(jìn)制)來(lái)表示一個(gè)字符。
它的缺點(diǎn):編碼表文件太大了,不方便使用。用32位二進(jìn)制表示一個(gè)字符,造成空間極大浪費(fèi)。
假設(shè):1 用Unicode編碼表示 0000000000000000000000000000000000000000000000001
UTF-8:統(tǒng)一轉(zhuǎn)換格式編碼(多國(guó)語(yǔ)言編碼)
不同的字符,它會(huì)選擇合適編碼來(lái)進(jìn)行翻譯。
如:1 可以使用ASCII中編碼(8位二進(jìn)制)
“國(guó)”可以使用2個(gè)字節(jié)來(lái)表示