漢字的內碼和外碼

2021-07-05 05:54:05 字數 1397 閱讀 3138

輸入碼:

又稱漢字外碼,無論是區位碼或國標碼都不利於輸入漢字,為方便漢字的輸入而制定的漢字編碼,稱為漢字輸入碼。漢字輸入碼屬於外碼。不同的輸入方法,形成了不同的漢字外碼。常見的輸入法有以下幾類:

按漢字的排列順序形成的編碼(流水碼):如區位碼;

按漢字的讀音形成的編碼(音碼):如全拼、簡拼、雙拼等;

按漢字的字形形成的編碼(形碼):如五筆字體、鄭碼等;

按漢字的音、形結合形成的編碼(音形碼):如自然碼、智慧型abc

國標碼:

計算機只識別由0、1組成的**,ascii碼是英文資訊處理的標準編碼,漢字資訊處理也必須有乙個統一的標準編碼,所以國標碼應運而生。所謂「國標碼」,是指國家標準漢字編碼。一般是指國家標準局2023年發布的《資訊交換用漢字編碼字符集(基本集)》,簡稱gb-2312。在這個集中,收進漢字6763個,其中一級漢字3755個,二級漢字3008個。一級漢字為常用字,按拼音順序排列,二級漢字為次常用字,按部首排列。

區位碼:

簡單地理解的話,區位碼就是國標碼,但也是有些區別的,

在gb-2312中預留了一些空位,可以進行補充、擴充套件,經擴充套件的區位碼就從數量、範圍上超過了gb-2312(6763)了。上面是就大陸而言的,台灣、香港、和其他漢語國家,也是用區位碼,但他們的區位號與大陸用的就不一定相同了。

機內碼(漢字內碼):

計算機還不能將國標碼作為漢字在計算機中的機內碼,因為會和ascii碼發生衝突,如「保」,國標碼為31h和23h,而西文字元「1」和「#」的scii也為31h和23h,現假如記憶體中有兩個位元組為31h和23h,;這到底是乙個漢字?,還是兩個西文字元「1」;和「#」呢,於是就有了衝突。所以國家標準規定將漢字國標碼每個位元組的最高位統一規定為「1」作為識別漢字**的標誌,首位是「0」即為字元,首位是「1」即為漢字,這樣就形成了機內碼。漢字在計算機中是用機內碼來表示的。

區位碼,國標碼,機內碼的轉換

(1)區位碼先轉換成十六進製制數表示

(2)(區位碼的十六進製制表示)+2020h=國標碼;

(3)國標碼+8080h=機內碼

字型碼漢字輸出碼提供輸出漢字時所需要的漢字字型,用以將機內碼還原為漢字進行輸出。由於漢字是由筆畫組成的方字,所以對漢字來講,不論其筆畫多少,都可以放在相同大小的方框裡,如用m行n列的小圓點組成的方塊(稱為漢字的字模點陣),那麼每個漢字都可以用點陣中的一些點組成。每個點用一位二進位制表示,有筆形的為1,否則為0,就可得到該漢字的字形碼。全部漢字字碼的集合叫漢字字型檔。

總的來說,為方便漢字輸入而形成的漢字編碼為輸入碼,屬於漢字的外碼,輸入碼因編碼方式不同而不同。為在計算機內表示漢字而統一的編碼方式形成漢字編碼叫國標碼,計算機還不能將國標碼作為漢字在計算機中的表現形式,因為會和ascii碼發生衝突,所以又產生了漢字的機內碼,機內碼是惟一的。為顯示和列印輸出漢字而形成的漢字編碼為字型碼,計算機通過漢字內碼在字模庫中找出漢字的字型碼,實現其轉換。

windows內碼 外碼 字元對映表

1.內碼和外碼 我們常說漢字的 內碼 與 外碼 內碼是漢字在計算機內部儲存,處理和傳輸用的資訊編碼。它必須與ascii碼相容但又不能衝突。所以把國標碼兩個位元組的最高位置 1 以區別於西文,這就是內碼。漢字的輸入碼稱為 外碼 輸入碼即指我們輸入漢字時使用的編碼。常見的外碼分為數字編碼 如區位碼 拼音...

漢字機內碼

漢字機內碼,又稱 漢字ascii碼 簡稱 內碼 指計算機內部儲存,處理加工和傳輸漢字時所用的由0和1符號組成的 輸入碼被接受後就由漢字作業系統的 輸入碼轉換模組 轉換為機內碼,與所採用的鍵盤輸入法無關。機內碼是漢字最基本的編碼,不管是什麼漢字系統和漢字輸入方法,輸入的漢字外碼到機器內部都要轉換成機內...

漢字輸入碼和內碼

包括 數字碼 拼音碼 字形碼 1.數字輸入碼 常用的是國標區位碼,用數字串代表漢字 將6763個二級漢字分為94個區,每區94位,把漢字表示成二維陣列,陣列下標就是區位碼。優點 無重碼,輸入碼與內部碼的轉換方便 缺點 難以記憶。2.拼音輸入碼 以漢字拼音為基礎的輸入方法 優點 簡單方便 缺點 同音字...