正文 第一章 計算機基礎知識(四)(2 / 3)

五、二進製編碼

在計算機應用中,除了經常使用阿拉伯數字0、1、……、9之外,還需使用一些字母如A、B、……、2,符號以及一些控製信號。在計算機內部所有信息都是用二進製數表示的,所以就要用二進製代碼來表示數、字母以及符號等,這就是所謂的二進製編碼。

1.二進常編碼的十進製數(BCD碼)

在計算機中使用二進製代碼工作,盡管有許多優點,但是人們要認出和轉換二進製數是頗費工夫的。因而提出了一個比較適合於十進製係統的二進製代碼的特殊形式,即用四位二進製代碼來表示一位t進製數,一般稱之為二進製編碼的十進製數,簡稱BCD碼。

由於四位二進製數從0000到1111可以表示l6個數,原則上可任意選擇其中的十個來編碼0到9+1個十進製數字。通常采用與0-9各數字相對應的四位二進製數作為代碼,稱之為8421BCD碼,

從表中可以看出,這種BCD碼與十進製數的關係相當直觀,它們之間的轉換也是十分簡單和直截了當,隻需將十進製的各位數字用與其對應的一組(四位)二進製數代替即可。注意,BCD碼與真正的純二進製數是不同的,它貌似二進製,實為十進製。常用在計算機的輸入輸出設備中,作為計算機中使用的二進製數與人們日常用的十進製數之間的一種過渡性的編碼,以簡化人機聯係。

2.字符的ASCIl碼

字符是計算機處理的主要對象。計算機中使用最多的符號有:十進製數字0。9、大小寫英文字母A—z和a—z、通用的算術運算符及各種標點符號近百個。

ASCIl碼是美國標準信息交換碼,它已被國際標準化組織(ISO)接受為國際標準。它采用7位二進製代碼來對字符進行編碼(第8位可用作奇偶校驗位)。

六、漢字的編碼

1.國標碼

為了使計算機能處理漢字,我國製定了“中華人民共和國國家標準信息交換漢字編碼”,簡稱為國標碼。國家標準號為“GB2312—80”。國標碼是一種機器內部編碼,它的主要作用是:用於統一不同漢字係統之間所用的不同的編碼。通過將不同漢字係統使用的不同漢字編碼統一轉換成國標碼,不同係統之間的漢字信息就可以相互轉換。在國標碼的字符集中共收錄了漢字和圖形符號7445個,其中一級漢字3755個,二級漢字3008個,圖形符號682個。國標碼規定,一個漢字用兩個字節來表示,每個字節隻用低七位,最高位未作定義(如表l_4)。為了書寫方便,常常用四位的十六進製數來表示一個漢字的國標碼。例如:漢字“大”的國標碼是“3473H”(H表示十六進製數)。

2.區位碼

國標GB2312—80規定,所有的國標漢字與符號按一定的順序排列,組成了一個94×94的方陣。在該方陣中,每一行稱為一個“區”,每一列稱為一個“位”,這樣該方陣實際就是一個有94個區(區號為O1-94)、每區有94個位(位號為O1-94)的漢字字符集。每個漢字所在的區號和位號組合在一起就構成了該漢字的“區位碼”。漢字的區位碼中,高兩位是區號,低兩位是位號。區位碼與漢字和符號之間是一一對應的。在區位碼表中,各種字母、數字、符號、漢字的分布情況如下:

1區:鍵盤上沒有的各種符號

2區:各種序號

3區:鍵盤上的各種符號(按純中文方式給出)

4區。5區:日文字母

6區:希臘字母

7區:俄文字母

8區:標識拚音聲調的母音及拚音字母名稱

9區:製表符號

10區~l5區:未用

16—55區:一級常用漢字(按拚音字母音序排列)

56—87區:二級常用漢字(按部首筆畫順序排列)

3.機內碼

為了防止區位碼與ASCI1碼衝突,在計算機中一般不采用區位碼表示漢字和符號,而是采用漢字的機內碼。所謂漢字的機內碼就是指在計算機中表示漢字的編碼。這樣用戶就可以根據自己的習慣使用不同的輸入碼輸入漢字,計算機係統會把它們統一轉換成機內碼存儲。漢字的機內碼一般都采用變形的國標碼格式,即每個漢字的機內碼就是把它的國標碼的每個字節的最高位置1而得到的編碼。

4.輸入碼

要想通過鍵盤輸入漢字,就必須先對漢字進行編碼,即漢字的輸入碼。漢字輸入碼必須具有易學、易記、易用的特點,且編碼與漢字的對應性要好,即重碼率要低。目前常用的輸入碼有:拚音碼、自然碼、、五筆字形碼、區位碼等等,用戶可以根據自己的喜好選擇使用一種適合自己的漢字輸入碼。

5.字形碼

漢字字形碼是一種漢字字模點陣的編碼,又叫漢字字模信息。有了漢字字形碼,計算機就能夠將輸入的漢字輸入碼統一成漢字機內碼存儲,在輸出時又將它還原成漢字。

漢字是一種象形文字,每個漢字可看成一個圖形,這種圖形可以用點陣來描述。例如,用16×16點陣來表示一個漢字,即一個漢字點陣占l6行,每行有16個點,每個點用一個二進製位來表示,即有筆畫的點亮,用“l”表示,無筆畫的點暗,用“0”表示,這樣就得到了字模點陣的漢字字形碼。