日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

汉字区位码转换为“汉字ASCII码“

發(fā)布時間:2023/12/14 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汉字区位码转换为“汉字ASCII码“ 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
**僅供個人學習使用,如有問題歡迎提出**

每個漢字及符號都有一個區(qū)位碼,即每個漢字有一個區(qū)號(兩位十進制)和一個位號(兩位十進制)。一共分了94個區(qū),每個區(qū)中有94個漢字。
并且也有與其相對應的“漢字ASCII碼”,也稱漢字機內碼,指計算機內部存儲,處理加工和傳輸漢字時所用的由0和1符號組成的代碼。輸入碼被接受后就由漢字操作系統(tǒng)的“輸入碼轉換模塊”轉換為機內碼,與所采用的鍵盤輸入法無關。機內碼是漢字最基本的編碼,不管是什么漢字系統(tǒng)和漢字輸入方法,輸入的漢字外碼到機器內部都要轉換成機內碼,才能被存儲和進行各種處理。
其中轉換過程如下: 從鍵盤輸入一個漢字外碼,轉換模塊會獲得其區(qū)位碼,如“啊”的區(qū)號為16,位號為1,然后會將其轉換為國際碼漢字的國標碼可以在區(qū)位碼基礎上換算得到:國標碼=(區(qū)位碼的十六進制表示)+2020H(十六進制數(shù)后加H以用于辨識) 以“啊”為例:
區(qū)位碼 00010000 00000001
+2020H 00100000 00100000
國際碼 0011 0000 00100001
得到“啊”的國標碼為:3021H 隨后還要便要將國際碼轉換危機內碼進行存儲,機內碼和國標碼的轉換規(guī)則是:機內碼 = 國標碼+8080H =(區(qū)位碼的十六進制表示)+A0A0H。顯然,就是將國標碼的兩個字節(jié)的最高位均置為1。
國際碼 00110000 00100001
+8080H 00110000 00100000
機內碼 10110000 10100001
一個數(shù)在計算機中的二進制表示形式, 叫做這個數(shù)的機器數(shù)。機器數(shù)是帶符號的,在計算機用一個數(shù)的最高位存放符號, 正數(shù)為0, 負數(shù)為1,機內碼也不例外,并且負數(shù)在內存中是以補碼的方式存儲的,很明顯“啊”的機內碼表示一個負數(shù),現(xiàn)在將其轉換為原碼:11010000 1101111,再兩個十六進制數(shù)轉換成十進制,分別是 -80 -95,也就是“啊“所對應的”漢字ASCII碼 “ ,可以使用字符數(shù)組來進行驗證

int main() { char c[2]; c[0]=-80; c[1]=-95; printf("c=%c",c); return 0;

具體國標(GB2312-80)漢字編碼對照表

總結

以上是生活随笔為你收集整理的汉字区位码转换为“汉字ASCII码“的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。