圖解字元編碼
啥叫字符集
計算機只認識0和1
那字串“abc”咋顯示呢? 有個類似於字典的東西,告訴計算機在此種情況(在此編碼格式)下,某些數字該顯示什麼。
這種字典,就是字符集
現有的字符集
目前主要有以下幾種字符集:
- ASCII字符集
- ISO 8859-1字符集
- GB2312字符集
- GBK字符集
- Unicode編碼
ASCII字符集
共收錄128個字元,都是些最最基礎的字元。詳情請看百度百科
大小:佔一個位元組
ISO 8859-1字符集(別名latin1)
ASCII字符集的擴充。共收錄256個字元。ASCII字符集基礎上擴充了128個西歐常用字元(包括德法兩國的字母)
大小:佔一個位元組
GB2312字符集
劃重點:made in china。 百度百科~曰:”共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個;同時,GB 2312收錄了包括拉丁字母、希臘字母、日文平假名及片假名字母、俄語西裡爾字母在內的682個全形字元。“詳情請看百度百科
相容ASCII字符集。
大小:如果該字元在ASCII字符集中,則採用1位元組編碼。否則採用2位元組編碼。
GBK字符集
劃重點:made in china。
繼GB2312字符集
之後中國又出的一套標準。這套更牛逼:不僅完全相容GB2312字符集。還擴充了很多:
”共23940個碼位,共收錄了21003個漢字...全部中日韓漢字...“ 總之一個字:牛逼!
大小:如果該字元在ASCII字符集中,則採用1位元組編碼。否則採用2位元組編碼。
Unicode編碼。
牛逼的玩意兒來了。先看看它的中文譯名:統一碼、萬國碼、單一碼。 收錄地球上的所有字元,現在還在不斷擴充。 但是,需要注意的是,Unicode只是一個符號集,它只規定了符號的二進位制程式碼,卻沒有規定這個二進位制程式碼應該如何儲存。
其中,Unicode編碼規定的符號程式碼必須以”U+”做字首。
編號怎麼對應到二進位制表示呢?有多種方案:主要有 UTF-8,UTF-16,UTF-32。
- UTF-32字符集。將unicode編碼的碼號直接轉成對應的二進位制數。大小:4個位元組。
- UTF-16字符集。使用變長位元組表示。大小:對於編號在 U+0000 到 U+FFFF 的字元(常用字符集),直接用兩個位元組表示,其餘的用4個位元組
- UTF-8字符集。使用變長位元組表示。相容ASCII字符集。大小:1~4個位元組
字符集之間的關係
參考文獻:
- 掘金小冊《MySQL 是怎樣執行的:從根兒上理解 MySQL》
- https://blog.csdn.net/zhusongziye/article/details/84261211
- https://www.cnblogs.com/kingstarspe/p/ASCII.html
更多精彩內容,請關注我的微信公眾號 網際網路技術窩
或者加微信共同探討交流:
相關文章
- Python字元編碼詳解Python字元
- 【字元編碼】徹底理解字元編碼字元
- 字元編碼字元
- 【字元編碼】字元編碼 && Base64編碼演算法字元演算法
- 字元編碼方式輕鬆解讀字元
- web知識進階——字元編解碼Web字元
- 字符集和字元編碼詳解字元
- 字串-字元編碼字串字元
- 聊聊字元編碼字元
- vim字元編碼字元
- 字元編碼 and cpp字元
- 圖解Protobuf編碼圖解
- 前端開發中的字元編碼詳解前端字元
- 計算機字元編碼詳盡講解計算機字元
- 【字元編碼】Java編碼格式探祕字元Java
- ptyon 特殊處理 url 編碼與解碼,字元編碼轉化 unicode字元Unicode
- 字元編碼轉換字元
- 理解字元編碼字元
- php_字元編碼PHP字元
- 關於字元編碼字元
- 字元編碼淺談字元
- 字元編碼再次剖析字元
- 字元編碼問題字元
- 【字元編碼】Java字元編碼詳細解答及問題探討字元Java
- 字符集編碼(二):字元編碼模型字元模型
- 各種字元編碼方式詳解及由來字元
- 字元編碼那些事兒字元
- 1.3.0 Python 字元編碼Python字元
- java字元編碼轉換Java字元
- 字元,位元組和編碼字元
- 可能是最詳細的字元編碼詳解字元
- MySQL 中字元編碼問題MySql字元
- 字元編碼問題記錄字元
- MySQL字元編碼設定方法MySql字元
- javascript字元編碼轉換方法JavaScript字元
- VIM 字元編碼相關操作字元
- iconv字元編碼轉換字元
- 字符集和字元編碼字元