非數值數據的編碼表示


非數值數據:邏輯值、字符等數據都是非數據值數據,在機器內部它們也用二進制表示。

邏輯值:

邏輯數據和數值數據都是一串0/1的序列,在形式上無任何差異,需要通過指令的操作碼類型來識別他們

西文字符:

西文字符由拉丁字母、數字、標點符及一些特殊符號所組成,它們統稱為字符


漢字字符

漢字系統必須處理這幾種漢字代碼:輸入碼、內碼、字模點陣碼

漢字特點

  • 漢字是表意文字,-個字就是-個方塊圖形
  • 漢字數量巨大,總數超過6萬字,給漢字在計算機內部的表示、漢字的傳輸與交換、 漢字的輸入和輸出等帶來了一系列問題

編碼形式:

輸入碼:對漢字用相應按鍵進行編碼表示,用於輸入。

內碼:用於在系統中進行存儲、查找、傳送等處理。

  • 字模點陣或輪廓描述:描述漢字字模點陣或輪廓,用於顯示/打印

輸入碼:漢字的輸入碼的碼元(及組成編碼的基本元素)是西文鍵盤中的某個按鍵
漢字內碼的選擇考慮因素:不能有二義性即不能和ASCII碼有相同的編碼、要與漢字在字庫的位置有關系以便查找處理、編碼應當盡量短
GB2312國標字符集:由三部分組成,第一部分是字母、數字和各種符號,包括英文、俄文、日文平假與片假名、羅馬字母、漢語拼音等共687個,第二部分分為一級常用漢字,共375個,按漢語拼音排列,第三部分分為二級常用字,共3008個,按偏旁部首排列

GB2312-80字符集:

  • 字母、數字和各種符號,包括英文、俄文、日文平假名與片假名、羅馬字母、漢語拼音等共687個.
  • 一級常用漢字,共3755個,按漢語拼音排列.
  • 二級常用漢字,共3008個,不太常用,按偏旁部首排列

漢字的區位碼

  • 碼表由94行、94列組成,行號為區號,列號為位號,各占7位
  • 指出漢字在碼表中的位置,共14位,區號在左)位號在右

漢字的國標碼

  • 每個漢字的區號和位號各自加上32(20H),得到其“國標碼”
  • 國標碼中區號和位號各占7位。在計算機內部,為方便處理與存儲,前面添一個0,構成一個字節

多媒體信息的表示

圖形、圖像、音頻、視頻等信息在機器內部也用0和1表示。多媒體信息用一個復雜的數據結構來描述,其中的基本數據或者是數值數據,或者是用0/1編碼的非數值數據。

  • 圖形用構建圖形的直線或曲線的坐標點及控制點來描述,而這些坐標點或控制點則用數值數據描述。

  • 圖像用構成圖像的點(像素)的亮度、顏色或灰度等信息來描述,這些亮度或顏色等值則用數值數據描述。

  • 音頻信息通過對模擬聲音進行采樣、量化(用二進制編碼)來獲得,因此量化后得到的是一個數值數據序列(隨時間變化)。

  • 視頻信息描述的是隨時間變化的圖像(每一幅圖像稱為- -幀)-音樂信息( MIDI )通過對演奏的樂器、樂譜等相關的各類信息用0和1進行編碼來描述。

數據校驗碼

奇偶校驗碼

  • 奇偶校驗原理:通過計算數據中“1”的個數是奇數還是偶數來判斷數據的正確性。在被校驗的數據后加一位校驗位或校驗字符用作校驗碼實現校驗

奇偶校驗碼最簡單,但只能檢測出奇數位出錯. 如果發生偶數位錯誤就無法檢測. 但經研究是奇數位發生錯誤的概率大很多. 而且奇偶校驗碼無法檢測出哪位出錯.所以屬於無法矯正錯誤的校驗碼。奇偶校驗碼是奇校驗碼和偶校驗碼的統稱. 它們都是通過在要校驗的編碼上加一位校驗位組成. 如果是奇校驗加上校驗位后,編碼中1的個數為奇數個。如果是偶校驗加上校驗位后,編碼中1的個數為偶數個。

海明校驗碼

海明碼:是利用奇偶性來校驗數據的. 它是一種多重奇偶校驗檢錯系統,它通過在數據位之間插入k個校驗位,來擴大碼距,從而實現檢錯和糾錯。

設原來數據有n位,要加入k位校驗碼.怎么確定k的大小呢? k個校驗位可以有pow(2,k) (代表2的k次方) 個編碼,其中有一個代表是否出錯. 剩下pow(2,k)-1個編碼則用來表示到底是哪一位出錯。因為n個數據位和k個校驗位都可能出錯,所以k滿足pow(2,k)-1 >= n+k。
設 k個校驗碼為 P1,P2...Pk, n個數據位為D0,D1...Dn 產生的海明碼為 H1,H2...H(n+k) 。如有8個數據位,根據pow(2,k)-1 >= n+k可以知道k最小是4。
那么得到的海明碼是:
H12 H11 H10 H9 H8 H7 H6 H5 H4 H3 H2 H1
D7 D6 D5 D4 P4 D3 D2 D1 P3 D0 P2 P1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM