Ⅰ 計算機數據編碼是什麼
電腦編碼是什麼意思
電腦編碼是信息從一種形式或格式轉換為另一種形式的過程也稱為計算機編程語言的代碼簡稱編碼。用預先規定的方法將文字、數字或其它對象編成數碼,或將信息、數據轉換成規定的電脈沖信號。編碼在電子計算機、電視、遙控和通訊等方面廣泛使用。編碼是信息從一種形式或格式轉換為另一種形式的過程。解碼,是編碼的逆過程。
什麼是計算機的數字信息編碼
電腦中的數字編碼稱為二進制。不管是字元編碼還是漢字編碼,在電腦里都是用二進制數字方式存儲的。
由於電路的復雜性因素,電腦中都使用二進制數,只有0和1兩個數碼,逢二進一,最容易用電路來表達,比如0代表電路不通,1代表電路通暢。我們平時用電腦時感覺不到它是在用二進制計算是因為電腦會把你輸入的信息自動轉換成二進制,算出的二進制數再轉換成你能看到的信息顯示到屏幕上。
一、ASCII碼。
美國信息交換標准碼是由美國國家標准學會(American National Standard Institute,ANSI)制定的,標準的單位元組字元編碼方案,用於基於文本的數據。起始於50年代後期,在1967年定案。它最初是美國國家標准,供不同計算機在相互通信時用作共同遵掘檔守的西文字元編碼標准,它已被國際標准化組織(ISO)定為國際標准,稱為ISO646標准。適用於所有拉丁文字字母。
ASCII碼使用指定的7位或8位二進制數組合來表示128或256種可能的字元罩散慎。標准ASCII碼也叫基礎ASCII碼,使用7位二進制數來表示所有的大寫和小寫字母,數字0到9、標點符號,以及在美式英語中使用的特殊控制字元(這里需要特別注意:ASCII碼與標准ASCII碼的位數上的區分,標准ASCII碼是7位二進製表示)。在電腦里,數字和字母都是用ASCII碼來存儲的,這就是為什麼一個英文字母或半形的數字、標點符號通常佔一個位元組的原因。
二、漢字編碼。
電腦內部漢字信息的存儲運算的代碼有四種:輸入碼、國標碼、內碼和字型碼。
輸入碼:包括拼音編碼和字型編碼。微軟拼音ABC就是拼音編碼,五筆字型輸入法就是字型編碼。
國標碼:又稱為漢字交換碼,在計算機之間交換信息用。用兩個位元組來表示,每個位元組的最高位均為0,因此可以表示的漢字數為2的14次冪,就是16384個。將漢字區位碼的高位位元組、低位位元組各加十進制數32(即十六進制數的20),便得到國標碼。例如「中」字的國標碼為8680(十進制)或7468(十六進制)。
內碼:漢字內碼是在設備和信息處理系統內部存儲、處理、傳輸漢字用的代碼。無論使用何種輸入碼,進入計算機後就立即被轉換為機內碼。規則是將國標碼的高位位元組、低位位元組各自加上128(十進制)或80(十六進制)。例如,「中」字的內碼以十六進製表示時應為F4E8。這樣做的目的是使漢字內碼區別於西文的ASCII,因為每個西文字母的ASCII的高位均為0,而漢字內碼的每個位元組的高位均為1。
字型碼:表示漢字字形的字模數據,因此也稱為字模碼,是漢字的輸出形式。通常用點陣、矢量函數等表示。用點陣表示時,字形碼指的就是這個漢字字形點陣的代碼。根據輸出漢字的要求不同,點陣的多少也不同。簡易型漢字為16′16點陣、提高型漢字為24′24點陣、48′48點陣等。如果是24′24點陣,每行24個點就是24個二進制位,存儲一行代碼需要3個位元組。那麼,24行共佔用3′24=72個位元組。計算公式:每行點數/8′行數。依此,對於48′48的點陣,一個漢字字形需要佔用的存儲空間為48/8′48=6′48=288個位元組。
計算機常用的信息編碼有哪幾種
在計算機硬體中,編碼(coding)是在一個主題或單元上為數據存儲,管理和分析的目的而轉換信息為編碼值(典型的如數字)的過程。在軟體中,編碼意味著邏輯地使用一個特定的語言如C或C++來執行一個程序字元編碼:使用二進物敬制數對字元進行的編碼稱字元編碼。
ASCII碼:美國標准信息交換碼的英文簡稱,是計算機中用二進製表示字母、數字、符號的一種編碼標准。ASCII碼有兩種,使用7位二進制數的稱為基本ASCII碼;使用8位二進制數的稱為擴展ASCII碼。
漢字編碼:用於表示漢字字元的二進制字元編碼。漢字編碼根據其用途不同可分為輸入碼、內部碼、字型碼和地址碼等。
1基本信息
編碼單位
最小的單元是位(bit),接著是位元組(Byte),一個位元組=8位,英語表示是1 byte=8 bits 。機器語言的單位Byte。1 KB=1024 Byte; 1 MB=1024 KB; 1 GB=1024 MB ; 1TB=1024 GB。
進制
二進制數由0和1,八進制數由0-7, 十進制數由0-9,十六進制數由0-9,A,B,C,D,E,F組成,
上層字元
字元是各種文字和符號的總稱,包括各國家文字、標點符號、圖形符號、數字等。字元集是多個字元的 *** ,字元集種類較多,每個字元集包含的字元個數不同,常見字元集名稱:ASCII字元集、GB2312字元集、BIG5字元集、 GB 18030字元集、Unicode字元集等。計算機要准確的處理各種字元集文字,需要進行字元編碼,以便計算機能夠識別和存儲各種文字。
2編碼分類
1.ASCII
ASCII(American Standard Code for Information Interchange,美國信息互換標准代碼)是基於羅馬字母表的一套電腦編碼系統,它主要用於顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,並等同於國際標准ISO 646。
包含內容:
控制字元:回車鍵、退格、換行鍵等。
可顯示字元:英文大小寫字元、 *** 數字和西文符號
ASCII擴展字元集擴展:表格符號、計算符號、希臘字母和特殊的拉丁符號。
第0~31號及第127號(共33個)是控制字元或通訊專用字元,如控制符:LF(換行)、CR(回車)、FF(換頁)、DEL(刪除)、BEL(振鈴)等;通訊專用字元:SOH(文頭)、EOT(文尾)、ACK(確認)等;
第32~126號(共94個)是字元,其中第48~57號為0~9十個 *** 數字;65~90號為26個大寫英文字母,97~122號為26個小寫英文字母,其餘為一些標點符號、運算符號等。
注意:在計算機的存儲單元中,一個ASCII碼值佔一個位元組(8個二進制位),其最高位(b7)用作奇偶校驗位。所謂奇偶校驗,是指在代碼傳送過程中用來檢驗是否出現錯誤的一種方法,一般分奇校驗和偶校驗兩種。奇校驗規定:正確的代碼一個位元組中1的個數必須是奇數,若非奇數,則在最高位b7添1;偶校驗規定:正確的代碼一個位元組中1的個數必須是偶數,若非偶數,則在最高位b7添1。
2.GB2312
GB2312又稱為GB2312-80字元集,全稱為《信息交換用漢字編碼字元集·基本集》,由原中國國家標准總局發布,1981年5月1日實施,是中國國家標準的簡體中文字元集。它所收錄的漢字已經覆蓋99.75%的使用頻率,基本滿足了漢字的計算機處理需要。在中國大陸和新加坡獲廣泛使用。
GB2312收錄簡化漢字及一般符號、序號、數字、拉丁字母、日文假名、希臘字母、俄文字母、漢語拼音符號、漢語注音字母,共 7445 個圖形字元。其中包括6763個漢字......>>
計算機中的數值編碼為什麼有+0和-0區別是什麼?
這是在編寫程序的時候才會碰到的一個問題,由於在程序設計語言中,有有符號整數和無符號整數之分,而有符號是的最高位是用來表示符號的,即最高位為正負號的標示位。這樣對這一個8位的數的表示法中就有這種現象了: 00000000(-0) 10000000(+0) 但是計算機把這兩種都作為0計算。這就是他在形式上的區別,其實在實際操作中是沒有什麼區別的。
希望採納
計算機數據輸入編碼實質上是什麼的過程?
編碼codec的過程
計算機數據輸入編碼的實質是什麼的過程
是可再看下的。
計算機中數據的表示、數據的存儲單位;字元、漢字及編碼分別具體指什麼?
計算機的數據存儲與數據表示?????
我知道數據的存儲有很多形式,光、磁、電……
數據表示我也知道一種很基本的形式:010110001,這種形式對應著電位的高低。
那再往後呢??像int型的i=2.那麼這個2是怎麼保存的計算機中的?保存有那些部位?在要調用時,
這個2又經歷了哪些途經才最終顯示在屏幕上??????
計算機存儲單位簡述
Bit意為「位」或「比特」,是計算機運算的基礎,屬於二進制的范籌;
Byte意為「位元組」,是計算機文件大小的基本計算單位;
這兩者應用的場合不同。通常用bit來作數據傳輸的單位,因為物理層,數據鏈路層的傳輸對於用戶是透明的,而這種通信傳輸是基於二進制的傳輸。在應用層通常是用byte來作單位,表示文件的大小,在用戶看來就是可見的數據大小。比如一個字元就是1byte,如果是漢字,則是2byte。
1 kilobyte kB = 1000 (103) byte
1 megabyte MB = 1 000 000 (106) byte
1 gigabyte GB = 1 000 000 000 (109) byte
1 terabyte TB = 1 000 000 000 000 (1012) byte
1 petabyte PB = 1 000 000 000 000 000 (1015) byte
1 exabyte EB = 1 000 000 000 000 000 000 (1018) byte
1 zettabyte ZB = 1 000 000 000 000 000 000 000 (1021) byte
1 yottabyte YB = 1 000 000 000 000 000 000 000 000 (1024) byte
1 nonabyte NB = 1 000 000 000 000 000 000 000 000 000 (1027) byte
1 doggabyte DB = 1 000 000 000 000 000 000 000 000 000 000 (1030) byte
kilo (k)* = 10 ^ 3 = 1,000 thousand 千
mega (M) = 10 ^ 6 = 1,000,000 million 百萬
giga (G) = 10 ^ 9 = 1,000,000,000 billion 十億
tera (T) = 10 ^ 12 = 1,000,000,000,000 trillion 萬億
* 在公制系統中, "k" 或者 "kilo" 前綴只使用小寫字母
在計算機/通訊行業中,計算數據傳送速度也使用每秒傳送公制數據量來計算
1 bit (b) = 0 or 1 = one binary digit 一個二進制位元
1 kilobit(kb)=10^3 bits = 1,000 bits 一千位元
1 Megabit(Mb)=10^6 bits = 1,000,000 bits 一百萬位元
1 Gigabit(Gb)=10^9 bits = 1,000,000,000 bits 一萬億位元...>>
Ⅱ 數控編程M30是什麼意思。
M30是數控程序裡面通用的字元,指的是數控程序已經運行完了,且程序執行游標也回到程序頭,等待下一個產品的加工。
以下是數碼編程一些常見的程序名:
O001 程序號
M03主軸正轉
G04程序暫停
M22是機床自定義功能 往往是 氣壓部分的 鎖緊和松開(M23)
M05主軸停
(2)程序編碼定義擴展閱讀:
數控程序由程序編號、程序內容和程序結束段組成。例如:
程序編號: 001
程序內容: N001 G92 X40.0 Y30.0
N002 G90 G00 X28.0 T01 S800 M03
N003 G01 X-8.0 Y8.0 F200
N004 X0 Y0
N005 X28.0 Y30.0
N006 G00 X40.0
程序結束段: N007 M02
程序編號
採用程序編號地址碼區分存儲器中的程序,不同數控系統程序編號地址碼不同,如日本FANUC6數控系統採用o作為程序編號地址碼;美國的AB8400數控系統採用P作為程序編號地址碼;德國的SMK8M數控系統採用%作為程序編號地址碼等。
Ⅲ 文件的「編碼」是指什麼
編碼指的就是字元集合,
編碼是根據一定的協議或格式把模擬信息轉換成比特流的過程。
在計算機硬體中,編碼(coding)是在一個主題或單元上為數據存儲,管理和分析的目的而轉換信息為編碼值(典型地如數字)的過程。在軟體中,編碼意味著邏輯地使用一個特定的語言如C或C++來執行一個程序。在密碼學中,編碼是指在編碼或密碼中寫的行為。
將數據轉換為代碼或編碼字元,並能譯為原數據形式。是計算機書寫指令的過程,程序設計中的一部分。在地圖自動制圖中,按一定規則用數字與字母表示地圖內容的過程,通過編碼,使計算機能識別地圖的各地理要素。
n位二進制數可以組合成2n個不同的信息,給每個信息規定一個具體碼組,這種過程也叫編碼。
數字系統中常用的編碼有兩類,一類是二進制編碼,另一類是二—十進制編碼。
漢字的編碼體系
1.ASCII與Binary
我們日常接觸到的文件分ASCII和Binary兩種。ASCII是「美國信息交換標准編碼」的英文字頭縮寫,可稱之為「美標」。美標規定了用從0到127的128個數字來代表信息的規范編碼,其中包括33個控制碼,一個空格碼,和94個形象碼。形象碼中包括了英文大小寫字母,阿拉伯數字,標點符號等。我們平時閱讀的英文電腦文本,就是以形象碼的方式傳遞和存儲的。美標是國際上大部分大小電腦的通用編碼。
然而電腦中的一個字元大都是用一個八位數的二進制數字表示。這樣每一字元便可能有256個不同的數值。由於美標只規定了128個編碼,剩下的另外128個數碼沒有規范,各家用法不一。另外美標中的33個控制碼,各廠家用法也不盡一致。這樣我們在不同電腦間交換文件的時候,就有必要區分兩類不同的文件。第一類文件中每一個字都是美標形象碼或空格碼。這類文件稱為「美標文本文件」(ASCII Text Files),或略為「文本文件」,通常可在不同電腦系統間直接交換。第二類文件,也就是含有控制碼或非美標碼的文件,通常不能在不同電腦系統間直接交換。這類文件有一個通稱,叫「二進制文件」(Binary Files)。
2.國標、區位、「准國標」
「國標」是「中華人民共和國國家標准信息交換用漢字編碼」的簡稱。國標表(基本表)把七千餘漢字、以及標點符號、外文字母等,排成一個94行、94列的方陣。方陣中每一橫行叫一個「區」,每個區有九十四個「位」。一個漢字在方陣中的坐標,稱為該字的「區位碼」。例如「中」字在方陣中處於第54區第48位,它的區位碼就是5448。
其實94這個數字。它是美標中形象碼的總數。國標表沿用這個數字,本意大概是要用兩個美標形象符代表一個漢字。由於美標形象符的編碼是從33到126,漢字區、位碼如果各加上32,就會與美標形象碼的范圍重合。如上例「中」字區、位碼加上32後,得86,80。這兩個數字的十六進制放在一起得5650,稱為該字的「國標碼」,而與其相對應的兩個美標符號,VP,也就是「中」字的「國標符」了。
這樣就產生了一個如何區分國標符與美標符的問題。在一個中英文混用的文件里,「VP」到底代表「中」字呢,還是代表某個英文字頭縮寫?電子工業部第六研究所開發CCDOS的時候,使用了一個簡便的解決方案:把國標碼的兩個數字各加上128,上升到非美標碼的位置。(改變後的國標碼,習慣上仍叫「國標」。)
這個方案固然解決了原來的問題,可是新的問題隨之產生。中文文件成了「二進制文件」,既不能可靠地在不同電腦系統間交換,也不與市場上大部分以美標符號為設計對象的軟體兼容。
為了區分以上兩種「國標」,我們把原與美標形象碼重合的國標碼稱為「純國標」 ,而把CCDOS加上128的國標碼稱為「准國標」。
3.GBK碼:
GBK碼是GB碼的擴展字元編碼,對多達2萬多的簡繁漢字進行了編碼,簡體版的Win95和Win98都是使用GBK作系統內碼。
從實際運用來看,微軟自win95簡體中文版開始,系統就採用GBK代碼,它包括了TrueType宋體、黑體兩種GBK字型檔(北京中易電子公司提供),可以用於顯示和列印,並提供了四種GBK漢字的輸入法。此外,瀏覽器IE4.0簡體、繁體中文版內部提供了一個GBK-BIG5代碼雙向轉換功能。此外,微軟公司為IE提供的語言包中,簡體中文支持(Simplified Chinese Language Support Kit)的兩種字型檔宋體、黑體,也是GBK漢字(珠海四通電腦排版系統開發公司提供)。其他一些中文字型檔生產廠商,也開始提供TrueType或PostScript GBK字型檔。
許多外掛式的中文平台,如南極星、四通利方(Richwin)等,提供GBK碼的支持,包括字型檔、輸入法和GBK與其他中文代碼的轉化器。
互聯網方面,許多網站網頁使用GBK代碼。
但是多數搜索引擎都不能很好的支持GBK漢字搜索,大陸地區的搜索引擎有些能不完善的支持GBK漢字檢索。
其實,GBK是又一個漢字編碼標准,全稱《漢字內碼擴展規范》(Chinese Internatial Code Specification),1995年頒布。GB是國標,K是漢字「擴展」的漢語拼音第一個字母。
GBK向下與GB-2312編碼兼容,向上支持ISO 10646.1國際標准,是前者向後者過渡的一個承啟標准。
GBK規范收錄了ISO 10646.1中的全部CJK漢字和符號,並有所補充。具體包括:GB 2312中的全部漢字、非漢字元號;GB 13000.1中的其他CJK漢字。以上合計20902個GB化漢字;《簡化總表中》未收入GB 13000.1的52個漢字;《康熙字典》以及《辭海》中未被收入GB 13000.1的28個部首及重要構件;13個漢字結構符;BIG-5中未被GB 2312收入、但存在於GB 13000.1的139個圖形符號;GB 12345增補的6個拼音符號;GB 12345增補的19個豎排圖形符號(GB 12345較GB 2312增補豎排標點符號29個,其中10個未被GB 13000.1收入,故GBK亦不收);從GB 13000.1的CJK兼容區挑選出的21個漢字;GB 13000.1收入的31個IBM OS/2專用符號。GBK亦採用雙位元組表示,總體編碼范圍為0x8140~0xFEFE之間,首位元組在0x81~0xFE之間,尾位元組在0x40~0xFE之間,剔除0x××7F一條線,總計23940個碼位,共收入21886個漢字和圖形符號,其中漢字(包括部首和構件)21003個,圖形符號883個。
4.BIG5碼:
BIG5碼是針對繁體漢字的漢字編碼,目前在台灣、香港的電腦系統中得到普遍應用。BIG5碼的編碼范圍參考下文。
5.HZ碼:
HZ碼是在Internet上廣泛使用的一種漢字編碼。「HZ」方案的特點,是以「純國標」的中文與美標碼混用。那麼「HZ」是怎樣區分國標符和美標符的呢?答案其實也很簡單:當一串美標碼中間插入一段國標碼的時候,我們便在國標碼的前面加上~,後面加上~。這些附加碼分別叫「逃出碼」和「逃入碼」。 由於這些附加碼本身也是美標形象碼,整個文件就儼然是一個美標文本文件,可以安然地 在電腦網上傳遞,也和大部分英文文本處理軟體兼容。
6.ISO-2022CJK碼:
ISO-2022是國際標准組織(ISO)為各種語言字元制定的編碼標准。採用二個位元組編碼,其中漢語編碼稱ISO-2022 CN,日語、韓語的編碼分別稱JP、KR。一般將三者合稱CJK碼。目前CJK碼主要在Internet網路中使用。
7.UCS 和 ISO 10646:
1993年,國際標准ISO10646 定義了通用字元集 (Universal Character Set, UCS)。 UCS 是所有其他字元集標準的一個超集。它保證與其他字元集是雙向兼容的。就是說, 如果你將任何文本字元串翻譯到 UCS格式,然後再翻譯回原編碼, 你不會丟失任何信息。
UCS 包含了用於表達所有已知語言的字元。不僅包括拉丁語,希臘語,斯拉夫語,希伯來語,阿拉伯語,亞美尼亞語和喬治亞語的描述, 還包括中文,日文和韓文這樣的象形文字,以及平假名,片假名,孟加拉語, 旁遮普語果魯穆奇字元(Gurmukhi), 泰米爾語, 印.埃納德語(Kannada),Malayalam,泰國語, 寮國語, 漢語拼音(Bopomofo), Hangul,Devangari,Gujarati, Oriya,Telugu 以及其它語種。對於還沒有加入的語言, 由於正在研究怎樣在計算機中最好地編碼它們, 因而最終它們都將被加入。這些語言包括Tibetian,高棉語,Runic(古代北歐文字),衣索比亞語, 其他象形文字,以及各種各樣的印-歐語系的語言,還包括挑選出來的藝術語言比如 Tengwar,Cirth 和 克林貢語(Klingon)。UCS 還包括大量的圖形的,印刷用的,數學用的和科學用的符號,包括所有由 TeX,Postscript, MS-DOS,MS-Windows, Macintosh, OCR 字體, 以及許多其他字處理和出版系統提供的字元。
ISO 10646 定義了一個 31 位的字元集。 然而, 在這巨大的編碼空間中, 迄今為止只分配了前 65534 個碼位 (0x0000 到 0xFFFD)。這個UCS的16位子集稱為基本多語言面 (Basic Multilingual Plane, BMP)。 將被編碼在16位BMP以外的字元都屬於非常特殊的字元(比如象形文字), 且只有專家在歷史和科學領域里才會用到它們。按當前的計劃, 將來也許再也不會有字元被分配到從0x000000到0x10FFFF這個覆蓋了超過100萬個潛在的未來字元的 21 位的編碼空間以外去了。ISO 10646-1標准第一次發表於1993年, 定義了字元集與 BMP 中內容的架構。定義 BMP以外的字元編碼的第二部分 ISO 10646-2 正在准備中, 但也許要過好幾年才能完成。新的字元仍源源不斷地加入到 BMP 中, 但已經存在的字元是穩定的且不會再改變了。
UCS 不僅給每個字元分配一個代碼, 而且賦予了一個正式的名字。表示一個 UCS 或 Unicode 值的十六進制數, 通常在前面加上 「U+」, 就象U+0041 代表字元「拉丁大寫字母A」。UCS字元U+0000到U+007F 與 US-ASCII(ISO 646) 是一致的, U+0000 到 U+00FF 與 ISO 8859-1(Latin-1) 也是一致的。從 U+E000 到 U+F8FF,已經BMP 以外的大范圍的編碼是為私用保留的。
1993年,ISO10646中定義的USC-4 (Universal Character Set) ,使用了4 個位元組的寬度以容納足夠多的相當可觀的空間,但是這個過於肥胖的字元標准在當時乃至現在都有其不現實的一面,就是會過分侵佔存儲空間並影響信息傳輸的效率。 與此同時,Unicode 組織於約 10 年前以 Universal, Unique和Uniform 為主旨也開始開發一個16位字元標准, 為避免兩種16位編碼的競爭,1992年兩家組織開始協商,以期折衷尋找共同點,這就是今天的 UCS-2 (BMP,Basic Multilingual Plane,16bit) 和Unicode,但它們仍然是不同的方案。
8.Unicode碼:
關於Unicode我們需要追溯一下它產生的源源。
當計算機普及到東亞時,遇到了使用表意字元而非字母語言的中、日、韓等國家。在這些國家使用的語言中常用字元多達幾千個,而原來字元採用的是單位元組編碼,一張代碼頁中最多容納的字元只有28=256個,對於使用表意字元的語言是在無能為力。既然一個位元組不夠,自然人們就採用兩個位元組,所有出現了使用雙位元組編碼的字元集(DBCS)。不過雙位元組字元集中雖然表意字元使用了兩個位元組編碼,但其中的ASCII碼和日文片假名等仍用單位元組表示,如此一來給程序員帶來了不小的麻煩,因為每當設計到DBCS字元串的處理時,總是要判斷當中的一個位元組到底表示的是一個字元還是半個字元,如果是半個字元,那是前一半還是後一半?由此可見DBCS並不是一種非常好的解決方案。
人們在不斷尋找這更好的字元編碼方案,最後的結果就是Unicode誕生了。Unicode其實就是寬位元組字元集,它對每個字元都固定使用兩個位元組即16位表示,於是當處理字元時,不必擔心只處理半個字元。
目前,Unicode在網路、Windows系統和很多大型軟體中得到應用。
關於GB編碼的一些常識
GB編碼標准中,比較常用的是GB2312和GBK兩種,GB2312是GBK的一個子集,GB2312編碼范圍是 0xA1A1 - 0xFEFE ,如果純粹的 GB2312編碼,處理起來是什分簡單的,但處理GBK字元集時有些小的提示,先說說GBK編碼的標准吧:
GBK 採用雙位元組表示,總體編碼范圍為 8140-FEFE,首位元組在 81-FE 之間,尾位元組在 40-FE 之間,剔除 xx7F 一條線。總計 23940 個碼位,共收入 21886 個漢字和圖形符號,其中漢字(包括部首和構件)21003 個,圖形符號 883 個。
全部編碼分為三大部分:
1. 漢字區。包括:
a. GB 2312 漢字區。即 GBK/2: B0A1-F7FE。收錄 GB 2312 漢字 6763 個,按原順序排列。
b. GB 13000.1 擴充漢字區。包括:
(1) GBK/3: 8140-A0FE。收錄 GB 13000.1 中的 CJK 漢字 6080 個。
(2) GBK/4: AA40-FEA0。收錄 CJK 漢字和增補的漢字 8160 個。
CJK 漢字在前,按 UCS 代碼大小排列;增補的漢字(包括部首和構件)在後,按《康熙字典》的頁碼/字位排列。
2. 圖形符號區。包括:
a. GB 2312 非漢字元號區。即 GBK/1: A1A1-A9FE。其中除 GB 2312 的符號外,
還有 10 個小寫羅馬數字和 GB 12345 增補的符號。計符號 717 個。
b. GB 13000.1 擴充非漢字區。即 GBK/5: A840-A9A0。BIG-5 非漢字元號、結構符和「○」排列在此區。計符號 166 個。
3. 用戶自定義區:分為(1)(2)(3)三個小區。
(1) AAA1-AFFE,碼位 564 個。
(2) F8A1-FEFE,碼位 658 個。
(3) A140-A7A0,碼位 672 個。
第(3)區盡管對用戶開放,但限制使用,因為不排除未來在此區域增補新字元的可能性。
這里有幾個小技巧:
一、在php中,字元編碼是按所發送的編碼為準的,因些使用的就是用戶輸入的編碼,不會自動改變,但在asp中,默認的編碼是unicode,這樣我們很容易就能得到gbk->unicode的編碼對照表,這樣即使在毫無基礎庫的情況下也能很容易的實現gbk到utf-8的轉換了;
二、由於GBK是高位最低數值是0x40,即是64,因此,有時候組織一些涉及中文的字串時,分割字元最好用64之前的ascii碼,這樣在任意情況下替換或分割都不會出現亂碼,比較常用的是 ","、";"、":"、" "、" "、" ",這些字元永遠都不會給gb編碼添亂。
Ⅳ 軟體項目開發編碼階段目的和范圍
編碼階段目的和范圍:編碼過程的目的是實現詳細設計中各個模塊的功能﹐能夠使用戶要求的實際業務流程通過代碼的方式被計算機識別並轉化為計算機程序。編碼過程就是用具體的數據結構來定義對象的屬性,用具體的語言來實現業務流程所表示的演算法。在對象設計階段形成的對象類和關系最後被轉換成特定的程序設計語言,資料庫或者硬體的實現。
進入標准:設計文檔已經形成基線;詳細設計變更編寫完畢並通過評審,並且代碼需要變更時;對於維護項目,維護需求分析已經形成基線,可進行代碼的變更﹔對於編碼的測試標准已經制定。輸入:詳細設計文檔;特定項目的編碼規范;相關的軟、硬體環境;維護分析文檔;測試計劃。退出標准:詳細設計中所有模塊的功能全部實現,並通過自我代碼審查,編譯通過。輸出:已完成的、需要進行測試的代碼﹔代碼編寫規范的更改建議。
過程描述:編碼過程是把詳細設計中的各個模塊功能轉化為計算機可識別代碼的過程,因此程序員在進行編碼時,一定要仔細認真,切勿有半點疏忽。編碼過程通常情況下占整個項目開發時間的20%左右。為了使代碼達到高質量、高標准,代碼編寫過程一定要合理規范。編碼過程主要包括制定編碼計劃;認真閱讀開發規范﹔編碼准備﹔專家指導,並填寫疑問或問題表;理解詳細設計書;編寫代碼;自我審查﹔提交代碼和更改代碼。驗證:驗證編碼的規范化﹔驗證是否進行了自我審查﹔驗證代碼的一致性和可跟蹤性;通過測試驗證代碼的正確、合理性;驗證每個編碼人員的工作能力。
質量保證檢查清單:編碼計劃;開發規范建議書;詳細設計疑問列表﹔代碼審查檢查列表;代碼審查記錄;代碼測試記錄。該階段要確保建立了編碼規范、文檔格式標准,並且按照該標准進行編碼;確保代碼被正確地測試和集成,代碼的修改符合變更控制和版本控制流程﹔確保按照進度計劃編寫代碼;確保按照進度計劃進行代碼審查。