原始文章:http://djt.qq.com/article/view/658
1.古代送信:馬車,烽火,信鴿
2.1837年,世界第一條電報誕生,
美國科學家莫爾斯嘗試用一些“點”和“划”來表示不同的字母、數字和標點符號,這套表示字符的方式稱為“摩爾斯電碼”:
“點”對應短電脈沖,“划”對應長電脈沖信號,信號傳到對方,接收機翻譯
譯碼員根據這些點划組合就可以譯成英文字母,從而完成了通信任務。
3.1946年,世界第一台計算機誕生,計算機用8個晶體管的“通”或“斷”組合出一些狀態來表示世間萬物。
其原理計算機只不過是將摩斯電碼中的“點”和“划”換成了以8個字節的二進制流的方式表示。
4.講到這里,引出幾個基礎概念:
- 比特(bit):也稱為“位”,計算機信息中的最小單位,是 binary digit(二進制數位) 的 縮寫,指二進制中的一位
- 字節(Byte):計算機中信息計量的一種單位,一個位就代表“0”或“1”,每8個位(bit)組成一個字節(Byte)
- MySQL中定義 VARCHAR(45) 即是指 45個字節
- 字符(Character):文字與符號的總稱,可以是各個國家的文字、標點符號、圖形符號、數字等
- 字符集(Character Set):是多個字符的集合
- 編碼(Encoding): 信息從一種形式或格式轉換為另一種形式的過程
- 解碼(decoding): 編碼的逆過程
- 字符編碼(Character Encoding): 按照何種規則存儲字符
現在來看我們第一條電報,莫爾斯編碼中包含了大小寫英文字母和數字等符號。
- 這里的每一個符號其實就是⌈字符⌋
- 這所有的字符的集合就叫做⌈字符集⌋
- “點”或“划”與字符之間的對應關系即可以稱為⌈字符編碼⌋。
5.編碼發展的3個階段
階段一二的情況下,一個英文字符占一個字節;一個漢字占2個字節;