ascll

ascll

ASCII(American Standard Code for Information Interchange,美國標準信息交換代碼)是基於拉丁字母的一套電腦編碼系統,主要用於顯示現代英語和其他西歐語言。它是現今最通用的單位元組編碼系統,並等同於國際標準ISO/IEC 646。請注意,ASCII是American Standard Code for Information Interchange縮寫,而不是ASC2,有很多人在這個地方產生誤解。

基本信息

產生

在計算機中,所有的數據在存儲和運算時都要使用二進制數表示(因為計算機用高電平和低電平分別表示1和0),例如,像a、b、c、d這樣的52個字母(包括大寫)、以及
常用字元的ASCII碼常用字元的ASCII碼
0、1等數字還有一些常用的符號(例如*、#、@等)在計算機中存儲時也要使用二進制數來表示,而具體用哪些二進制數字表示哪個符號,當然每個人都可以約定自己的一套(這就叫編碼),而大家如果要想互相通信而不造成混亂,那么大家就必須使用相同的編碼規則,於是美國有關的標準化組織就出台了ASCII編碼,統一規定了上述常用符號用哪些二進制數來表示。
美國標準信息交換代碼是由美國國家標準學會(AmericanNationalStandardInstitute,ANSI)制定的,標準的單位元組字元編碼方案,用於基於文本的數據。起始於50年代後期,在1967年定案。它最初是美國國家標準,供不同計算機在相互通信時用作共同遵守的西文字元編碼標準,它已被國際標準化組織(InternationalOrganizationforStandardization,ISO)定為國際標準,稱為ISO646標準。適用於所有拉丁文字字母。

字元表

非列印字元表

ASCII 表上的數字 0–31 分配給了控制字元,用於控制像印表機等一些 外圍設備。例如,12 代表換頁/新頁功能。此命令指示印表機跳到下一頁的開頭
十進制 十六進制 字元
十進制 十六進制 字元
0 00 空
16 10 數據鏈路轉意
1 01 頭標開始
17 11 設備控制 1
2 02 正文開始
18 12 設備控制 2
3 03 正文結束
19 13 設備控制 3
4 04 傳輸結束
20 14 設備控制 4
5 05 查詢
21 15 反確認
6 06 確認
22 16 同步空閒
7 07 震鈴
23 17 傳輸塊結束
8 08 backspace
24 18 取消
9 09 水平制表符
25 19 媒體結束
10 0A 換行/新行
26 1A 替換
11 0B 豎直制表符
27 1B 轉意
12 0C 換頁/新頁
28 1C 檔案分隔設定
13 0D 回車
29 1D 組分隔設定
14 0E 移出
30 1E 記錄分隔設定
15 0F 移入
31 1F 單元分隔設定

列印字元

數字 32–126 分配給了能在鍵盤上找到的字元,當您查看或列印文檔時就會出現。數字 127 代表 DELETE 命令。
ASCII 列印字元表
十進制 十六進制 字元
十進制 十六進制 字元
32 20 space
80 50 P
33 21 !
81 51 Q
34 22 "
82 52 R
35 23 #
83 53 S
36 24 $
84 54 T
37 25 %
85 55 U
38 26 &
86 56 V
39 27 '
87 57 w
40 28 (
88 58 X
41 29 )
89 59 Y
42 2A *
90 5A Z
43 2B +
91 5B [
44 2C ,
92 5C \
45 2D -
93 5D ]
46 2E .
94 5E ^
47 2F /
95 5F _
48 30 0
96 60 `
49 31 1
97 61 a
50 32 2
98 62 b
51 33 3
99 63 c
52 34 4
100 64 d
53 35 5
101 65 e
54 36 6
102 66 f
55 37 7
103 67 g
56 38 8
104 68 h
57 39 9
105 69 i
58 3A :
106 6A j
59 3B ;
107 6B k
60 3C <
108 6C l
61 3D =
109 6D m
62 3E >
110 6E n
63 3F ?
111 6F o
64 40 @
112 70 p
65 41 A
113 71 q
66 42 B
114 72 r
67 43 C
115 73 s
68 44 D
116 74 t
69 45 E
117 75 u
70 46 F
118 76 v
71 47 G
119 77 w
72 48 H
120 78 x
73 49 I
121 79 y
74 4A J
122 7A z
75 4B K
123 7B {
76 4C L
124 7C |
77 4D M
125 7D }
78 4E N
126 7E ~
79 4F O
127 7F DEL

擴展列印字元

擴展的 ASCII 字元滿足了對更多字元的需求。擴展的 ASCII 包含 ASCII 中已有的 128 個字元(數字 0–32 顯示在下圖中),又增加了 128 個字元,總共是 256 個。即使有了這些更多的字元,許多語言還是包含無法壓縮到 256 個字元中的符號。因此,出現了一些 ASCII 的變體來囊括地區性字元和符號。例如,許多 軟體程式把 ASCII 表(又稱作 ISO 8859-1)用於北美、 西歐、澳大利亞和 非洲的語言。
擴展的ASCII 列印字元表  
十進制 十六進制 字元
十進制 十六進制 字元
128 80 Ç
192 C0 └
129 81 ü
193 C1 ┴
130 82 é
194 C2 ┬
131 83 â
195 C3 ├
132 84 ä
196 C4 ─
133 85 à
197 C5 ┼
134 86 å
198 C6 ╞
135 87 ç
199 C7 ╟
136 88 ê
200 C8 ╚
137 89 ë
201 C9 ╔
138 8A è
202 CA ╩
139 8B ï
203 CB ╦
140 8C î
204 CC ╠
141 8D ì
205 CD ═
142 8E Ä
206 CE ╬
143 8F Å
207 CF ╧
144 90 É
208 D0 ╨
145 91 æ
209 D1 ╤
146 92 Æ
210 D2 ╥
147 93 ô
211 D3 ╙
148 94 ö
212 D4 Ô
149 95 ò
213 D5 ╒
150 96 û
214 D6 ╓
151 97 ù
215 D7 ╫
152 98 ÿ
216 D8 ╪
153 99 Ö
217 D9 ┘
154 9A Ü
218 DA ┌
155 9B ¢
219 DB █
156 9C £
220 DC ▄
157 9D ¥
221 DD ▌
158 9E ₧
222 DE ▐
159 9F ƒ
223 DF ▀
160 A0 á
224 E0 α
161 A1 í
225 E1 ß
162 A2 ó
226 E2 Γ
163 A3 ú
227 E3 π
164 A4 ñ
228 E4 Σ
165 A5 Ñ
229 E5 σ
166 A6 ª
230 E6 µ
167 A7 º
231 E7 τ
168 A8 ¿
232 E8 Φ
169 A9 ⌐
233 E9 Θ
170 AA ¬
234 EA Ω
171 AB ½
235 EB δ
172 AC ¼
236 EC ∞
173 AD ¡
237 ED φ
174 AE «
238 EE ε
175 AF »
239 EF ∩
176 B0 ░
240 F0 ≡
177 B1 ▒
241 F1 ±
178 B2 ▓
242 F2 ≥
179 B3 │
243 F3 ≤
180 B4 ┤
244 F4 ⌠
181 B5 ╡
245 F5 ⌡
182 B6 ╢
246 F6 ÷
183 B7 ╖
247 F7 ≈
184 B8 ╕
248 F8 ≈
185 B9 ╣
249 F9 ∙
186 BA ║
250 FA ·
187 BB ╗
251 FB √
188 BC ╝
252 FC ⁿ
189 BD ╜
253 FD ²
190 BE ╛
254 FE ■
191 BF ┐
255 FF ÿ

國際問題

ASCII是美國標準,所以它不能良好滿足其它講英語國家的需要。例如英國的英鎊符號(£)在哪裡?
拉丁語字母表重音符號
使用斯拉夫字母表的希臘語、希伯來語、阿拉伯語和俄語。
漢字系統的中國象形漢字,日本和朝鮮。
1967年,國際標準化組織(ISO:InternationalStandardsOrganization)推薦一個ASCII的變種,代碼0x40、0x5B、0x5C、0x5D、0x7B、0x7C和0x7D“為國家使用保留”,而代碼0x5E、0x60和0x7E標為“當國內要求的特殊字元需要8、9或10個空間位置時,可用於其它圖形符號”。這顯然不是一個最佳的國際解決方案,因為這並不能保證一致性。但這卻顯示了人們如何想盡辦法為不同的語言來編碼的。

虛擬ASCII值

ESC鍵VK_ESCAPE(27)

ASCII碼錶ASCII碼錶

回車鍵:VK_RETURN(13)
TAB鍵:VK_TAB(9)
Caps Lock鍵:VK_CAPITAL(20)
Shift鍵:VK_SHIFT(16)
Ctrl鍵:VK_CONTROL(17)
Alt鍵:VK_MENU(18)
空格鍵:VK_SPACE(32)
退格鍵:VK_BACK(8)
左徽標鍵:VK_LWIN(91)
右徽標鍵:VK_RWIN(92)
滑鼠右鍵快捷鍵:VK_APPS(93)
Insert鍵:VK_INSERT(45)
Home鍵:VK_HOME(36)
PageUp:VK_PRIOR(33)
PageDown:VK_NEXT(34)
End鍵:VK_END(35)
Delete鍵:VK_DELETE(46)
方向鍵(←):VK_LEFT(37)
方向鍵(↑):VK_UP(38)
方向鍵(→):VK_RIGHT(39)
方向鍵(↓):VK_DOWN(40)
F1鍵:VK_F1(112)
F2鍵:VK_F2(113)
F3鍵:VK_F3(114)
F4鍵:VK_F4(115)
F5鍵:VK_F5(116)
F6鍵:VK_F6(117)
F7鍵:VK_F7(118)
F8鍵:VK_F8(119)
F9鍵:VK_F9(120)
F10鍵:VK_F10(121)
F11鍵:VK_F11(122)
F12鍵:VK_F12(123)
NumLock鍵:VK_NUMLOCK(144)
小鍵盤0:VK_NUMPAD0(96)
小鍵盤1:VK_NUMPAD1(97)
小鍵盤2:VK_NUMPAD2(98)
小鍵盤3:VK_NUMPAD3(99)
小鍵盤4:VK_NUMPAD4(100)
小鍵盤5:VK_NUMPAD5(101)
小鍵盤6:VK_NUMPAD6(102)
小鍵盤7:VK_NUMPAD7(103)
小鍵盤8:VK_NUMPAD8(104)
小鍵盤9:VK_NUMPAD9(105)
小鍵盤。:VK_DECIMAL(110)
小鍵盤*:VK_MULTIPLY(106)
小鍵盤+:VK_ADD(107)
小鍵盤-:VK_SUBTRACT(109)
小鍵盤/:VK_DIVIDE(111)
PauseBreak鍵:VK_PAUSE(19)
ScrollLock鍵:VK_SCROLL(145)

編程相關

Pascal

取得ASCII碼:Ord(ch)
得到對應字元:Chr(n)

Visual Basic

取得ASCII碼:Asc(ch)
得到對應字元:Chr(n)

PCLOGO編程

取得ASCII碼:asc"(某個字元,如大寫的A)(輸出答案:65)

漢字編碼

0-127是7位ASCII碼的範圍,是國際標準。
至於漢字,不同的字元集用的ascii碼的範圍也不一樣,常用的漢字字元集有GB2312-80,GBK,
Big5,unicode等。下面我重點說一說最常用的GB_2312的字元集。
GB_2312字元集是目前最常用的漢字編碼標準,windows
95/98/2000中使用的GBK字元集就包含了GB2312,或者說和GB2312兼容,GB_2312字元集包含了6763個的
簡體漢字,和682個標準中文符號。在這個標準中,每個漢字用2個位元組來表示,每個位元組的ascii碼為161-254(16進制A1-
FE),第一個位元組對應於區碼的1-94區,第二個位元組對應於位碼的1-94位。
161-254其實很好記憶,大家知道英文字元中,可列印的字元範圍為33-126。將這對數加上
128(或者說最高位置1),就得到漢字使用的字元的範圍。
//GB18030的規範是漢字第一個位元組在0x81-0xFE之間,第二個位元組位於區間0x40-0x7E以及0x80-0xFE。每個位元組轉化為整數大於128。
if((char_temp>=0x81)&&(char_temp<=0xFE))
{
if(*len<nlen)
{
*len+=1;
*p_temp++=char_temp;
_putch(char_temp);
x++;
}
}
}

相關詞條

相關搜尋

熱門詞條

聯絡我們