- 相關推薦
全國計算機應用基礎知識:漢字、字符編碼
(1)計算機中的信息單位
計算機中對信息表示的單位有位、字、字長及字節等,它們是用來表示信息量的大小的基本概念。
① 位:計算機中數據存儲的最小單位是一個二進制位,簡稱位,英文為bit,音譯為比特,可用小寫字母b表示。
② 字節:八位二進制位稱為一個字節,英文為Byte,可用大寫字母B表示,是計算機存儲的基本單位。一個字節的八位二進制數,其位編號自左至右為b7、b6、b5、b4、b3、b2、b1、b0。在計算機中,往往用字節數來表示存儲容量,容量可以以KB、MB、GB、TB為單位,它們相互之間的轉換關系如下:
1KB=210B=1024B
1MB=210KB=1024KB
1GB=210MB=1024MB
1TB=210GB=1024GB
③ 字:計算機在存儲、傳送或操作時,作為一個整體單位進行操作的一組二進制,稱為一個計算機字,簡稱字。
④ 字長:每個字所包含的位數稱為字長。由于字長是計算機一次可處理的二進制數的位數,因此它與計算機處理數據的速率有關,是衡量計算機性能的一個重要因素。
(2)字符的編碼。
① ASCII碼。
計算機只能識別二進制數,因此計算機中的數字、字母、符號也必須用二進制進行編碼。編碼方法有多種,微型機中普遍采用的是ASCII碼(美國標準信息交換碼),ASCII碼現已被國際標準化組織(ISO)接收為國際標準,稱為ISO-646。ASCII碼有7位版本和8位版本兩種,國際上通用的ASCII碼是7位版本。7位版本的ASCII碼包含10個阿拉伯數字、52個英文大小寫字母、32個標點符號和運算符及34個控制碼,共128個字符,所以可用7位二進制數表示。7位ASCII碼字符如下圖所示:
要確定一個數字、字母、符號或控制字符的ASCII碼,可在表中先找出它的位置,然后確定它所對應的十進制值或二進制值。例如小寫字母“a”的ASCII碼其十進制值是97,二進制值是1100001B(B表示二進制數),若轉換成十六進制,其值是61H(H表示十六進制數)。從表中可以看出,數字0~9的ASCII碼是30H~39H(后綴H表示是十六進制數),大寫字母A~Z的ASCII碼是41H~5AH,小寫字母a~z的ASCII碼是61H~7AH。字符大小的比較就是看它的ASCII碼值的大小。
表中,NUL、BEL、LF、FF、CR、DEL等是控制字符,NUL表示空,BEL是告警符,BS是退格符,LF是換行符,FF是換頁符,CR是回車符,SP是空格符,DEL是刪除符。
② BCD碼。
用計算機處理數字時,要進行二進制與十進制的相互轉換,這就要用二進制對十進制數進行編碼,BCD(Binary Coded Decimal)碼是二進制編碼的十進制數。最常用的BCD碼就是8421BCD碼,
它是用4位二進制數為一組表示一個十進制數字,4位二進制數從左到右其位權依次為8、4、2、1,它可以組合成16種狀態,對0~9這10個數字的編碼只取0000~1001這前10種狀態,其余6種狀態不用。為了能對一個多位十進制數進行編碼,需要有和十進制數的位數一樣多的4位二進制組,按順序分別進行編碼。表1-4表示8421BCD碼與十進制數的對應關系。
表1-4 BCD碼與十進制數的對應關系
③ Unicode編碼
ASCII碼提供了128個字符,擴展的ASC碼提供了256個字符,但用來表示世界各國的文字編碼還顯得不夠,還需要表示更多的字符和意義,因此又出現了Unicode編碼。
Unicode是一種16位的編碼,能夠表示65000多個字符或符號。目前世界上的各種語言一般所使用的字母或符號在34000個左右,所以Unicode編碼可以用于任何一種語言。Unicode編碼與現在流行的ASCII碼完全兼容,二者的前256個符號是一樣的。
(3)漢字的編碼
漢字是一種象形文字,字數極多(現代漢字中僅常用字就有六七千個,總字數高達5萬個以上),且字形復雜,每一個漢字都有“音、形、義”三要素,同音字、異體字也很多,這些都給漢字的計算機處理帶來了很大的困難。要在計算機中處理漢字,必須解決以下幾個問題:首先,是漢字的輸入,即如何把結構復雜的方塊漢字輸入到計算機中去,這是漢字處理的關鍵;其次,漢字在計算機內如何表示和存儲,如何與西文兼容;最后,如何將漢字的處理結果從計算機內輸出。為此,必須將漢字代碼化,
即對漢字進行編碼。對應于上述漢字處理過程中的輸入、內部處理及輸出這3個主要環節,每一個漢字的編碼都包括輸入碼、交換碼、內部碼和字形碼。在計算機的漢字信息處理系統中,處理漢字時要進行如下的代碼轉換:輸入碼→交換碼→內部碼→字形碼。以上簡述了對漢字進行計算機處理的基本思想和過程,下面具體介紹漢字的4種編碼。
① 輸入碼。
為了利用計算機上現有的標準西文鍵盤來輸入漢字,必須為漢字設計輸入編碼。輸入碼也稱為外碼。目前,已申請專利的漢字輸入編碼方案有六七百種之多,而且還不斷有新的輸入方法問世,以至于有“萬碼奔騰”之喻。按照不同的設計思想,可把這些數量眾多的輸入碼歸納為四大類:數字編碼、拼音碼、字形碼和音形碼。其中,目前應用最廣泛的是拼音碼和字形碼。
a. 數字編碼:數字編碼是用等長的
數字串為漢字逐一編號,以這個編號作為漢字的輸入碼,如區位碼、電XX等都屬于數字編碼。此種編碼的編碼規則簡單,易于與漢字的內部碼轉換,但難于記憶,僅適用于某些特定部門。
b. 拼音碼:拼音碼是以漢字的讀音為基礎的輸入碼。拼音碼使用方法簡單,一學就會,易于推廣,缺點是重碼率較高(因漢字同音字多),在輸入時常要進行屏幕選字,對輸入速度有影響。拼音碼是按照漢語拼音編碼輸入,因此在輸入漢字時,要求讀音標準,不能使用方言。拼音碼特別適合于對輸入速度要求不是太高的非專業錄入人員。
c. 字形碼:字形碼是以漢字的字形結構為基礎的輸入編碼。在微型計算機上廣為使用的五筆字型碼(王碼)是字形碼的典型代表。五筆字型碼的主要特點為輸入速度快,目前最高紀錄為每分鐘輸入293個漢字(該記錄為XXXX一女兵所保持),如此高的輸入速度已達
到人眼掃描的極限。但這種輸入方法因要記憶字根、練習拆字,前期學習花費的時間較多。此外,有極少數的漢字拆分困難,給出的編碼與漢字的書寫習慣不一致。
d. 音形碼:音形碼是兼顧漢字的讀音和字形的輸入編碼。目前使用較多的音形碼是自然碼。
② 交換碼。
交換碼用于漢字外碼和內部碼的交換。我國于1981年頒布的《信息交換用漢字編碼字符集·基本集》(代號為GB2312—1980)是交換碼的國家標準,所以交換碼也稱為國標碼。國標碼是雙字節代碼,即有兩個字節為一個漢字編碼,每個字節的最高位為“1”。國標GB2312—1980收入常用漢字6763個(其中一級漢字3755個,按拼音順序排列;二級漢字3008個,按部首順序),其他字母及圖形符號(如序號、數字、羅馬數字、英文字母、日文假名、俄文字母
和漢語注音等)682個,總計7445個字符。將這7445個字符按94行×94列排列在一起,組成GB2312—1980字符集編碼表,表中的每一個漢字都對應于唯一的行號(稱為區號)和列號(稱為位號),根據區位號確定漢字的國標碼值,分別用兩個字節存放。由于篇幅所限,本書未列出GB2312—1980字符編碼表,讀者可參看有關書籍。
③ 內部碼。
內部碼是漢字在計算機內的基本表示形式,是計算機對漢字進行識別、存儲、處理和傳輸所用的編碼。內部碼也是雙字節編碼,將國標碼兩個字節的最高位都置為“1”,即轉換成漢字的內部碼。計算機信息處理系統就是根據字符編碼的最高位是“1”還是“0”來區分漢字字符和ASCII碼字符的。
④ 字形碼。
字形碼是表示漢字字形信息(漢字的結構、形狀、筆畫等)的編碼,用來
實現計算機對漢字的輸出(顯示、打印)。由于漢字是方塊字,因此字形碼最常用的表示方式是點陣形式,有16×16點陣、24×24點陣和48×48點陣等。例如,16×16點陣的含義為:有256個點(16× 16=256)來表示一個漢字的字形信息,每個點有“亮”或“滅”兩種狀態,用一個二進制數的“1”或“0”來對應表示。因此,存儲一個16×16點陣的漢字需要256個二進制位,共32個字節(256位/8位)。以上的點陣可根據漢字輸出的不同需要進行選擇,點陣的點數越多,輸出的漢字就越精確、美觀。漢字的字形點陣要占用大量的存儲空間,通常將其以字庫的形式存放在機器的外存中,需要時才檢索字庫,輸出相應漢字的字形。
【全國計算機應用基礎知識:漢字、字符編碼】相關文章:
計算機應用基礎基礎知識12-24
計算機應用基礎知識備考試題11-03
2017計算機應用基礎知識模擬試題及答案06-13
計算機中的編碼知識09-22
中考語文基礎知識復習:漢字06-23
水泥功能與應用基礎知識06-13
計算機硬盤基礎知識11-09
美術色彩基礎知識高級灰的應用09-16