1、 什么是ASCII码ASCII 码英文全称America Standard Code for Information Interchange,中文意思:美国信息交换标准码。它已被国际标准化组织(ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母,ASCII码有7位码和8位码两种形式。ASCII码于1968年提出,用于在不同计算机硬件和软件系统中实现数据 传输标准化,在大多数的小型机和全部的个人计算机都使用此码。ASCII码划分为两个集合:128个字符的标准ASCII码和附加的128个字符的扩充和 ASCII码。因 为1位二进制数可以表示(21=)2种状态:0、1;而2位二进制
2、数可以表示(22)=4种状态:00、01、10、11;依次类推,7位二进制数可以表 示(27=)128种状态,每种状态都唯一地编为一个7位的二进制码,对应一个字符(或控制码),这些码可以排列成一个十进制序号0127。所以,7位 ASCII码是用七位二进制数进行编码的,可以表示128个字符。第032号及第127号(共34个)是控制字符或通讯专用字符,如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BEL(振铃)等;通讯专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;第33126号(共94个)是字符,其中第4857号为09十个阿拉伯数字;6590号为26个大写英文字
3、母,97122号为26个小写英文字母,其余为一些标点符号、运算符号等。注 意:在计算机的存储单元中,一个ASCII码值占一个字节(8个二进制位),其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检 验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规 定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。八进制十六进制十进制字符八进制十六进制十进制字符00000nul100406401011soh1014165A02022stx1024266B03033etx10
4、34367C04044eot1044468D05055enq1054569E06066ack1064670F07077bel1074771G10088bs1104872H11099ht1114973I120a10nl1124a74J130b11vt1134b75K140c12ff1144c76L150d13er1154d77M160e14so1164e78N170f15si1174f79O201016dle1205080P211117dc11215181Q221218dc21225282R231319dc31235383S241420dc41245484T251521nak1255585U26
5、1622syn1265686V271723etb1275787W301824can1305888X311925em1315989Y321a26sub1325a90Z331b27esc1335b91341c28fs1345c92351d29gs1355d93361e30re1365e94371f31us1375f95_402032sp1406096412133!1416197a4222341426298b432335#1436399c442436$14464100d452537%14565101e462638&14666102f47273914767103g502840(15068104h512
6、941)15169105i522a42*1526a106j532b43+1536b107k542c44,1546c108l552d45-1556d109m562e46.1566e110n572f47/1576f111o603048016070112p613149116171113q623250216272114r633351316373115s643452416474116t653553516575117u663654616676118v673755716777119w703856817078120x713957917179121y723a58:1727a122z733b59;1737b123
7、743c601767e126773f63?1777f127delASCII表ASCII值控制字符ASCII值控制字符ASCII值控制字符ASCII值控制字符0NUT32(space)6496、1SOH33!65A97a2STX34”66B98b3ETX35#67C99c4EOT36$68D100d5ENQ37%69E101e6ACK38&70F102f7BEL39,71G103g8BS40(72H104h9HT41)73I105i10LF42*74J106j11VT43+75K107k12FF44,76L108l13CR45-77M109m14SO46.78N110n15SI47/79O111
8、o16DLE48080P112p17DCI49181Q113q18DC250282R114r19DC351383X115s20DC452484T116t21NAK53585U117u22SYN54686V118v23TB55787W119w24CAN56888X120x25EM57989Y121y26SUB58:90Z122z27ESC59;9112328FS609412631US63?95127DELNULVT 垂直制表SYN 空转同步SOH 标题开始FF 走纸控制ETB 信息组传送结束STX 正文开始CR 回车CAN 作废ETX 正文结束SO 移位输出EM 纸尽EOY 传输结束SI 移位输
9、入SUB 换置ENQ 询问字符DLE 空格ESC 换码ACK 承认DC1 设备控制1FS 文字分隔符BEL 报警DC2 设备控制2GS 组分隔符BS 退一格DC3 设备控制3RS 记录分隔符HT 横向列表DC4 设备控制4US 单元分隔符LF 换行NAK 否定DEL 删除键盘常用ASCII码ESC键 VK_ESCAPE (27)回车键: VK_RETURN (13)TAB键: VK_TAB (9)Caps Lock键: VK_CAPITAL (20)Shift键: VK_SHIFT ($10)Ctrl键: VK_CONTROL (17)Alt键: VK_MENU (18)空格键: VK_SPA
10、CE ($20/32)退格键: VK_BACK (8)左徽标键: VK_LWIN (91)右徽标键: VK_LWIN (92)鼠标右键快捷键:VK_APPS (93) Insert键: VK_INSERT (45)Home键: VK_HOME (36)Page Up: 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
11、)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)Num Lock键: VK_NUMLOCK (144)小键盘0: VK_NUMPAD0 (96)小键盘1: VK_NUMPAD0 (97)小键盘2: VK_NUMPAD0 (98)小键盘3: VK_NUMPAD0 (99)小键盘4:
12、VK_NUMPAD0 (100)小键盘5: VK_NUMPAD0 (101)小键盘6: VK_NUMPAD0 (102)小键盘7: VK_NUMPAD0 (103)小键盘8: VK_NUMPAD0 (104)小键盘9: VK_NUMPAD0 (105)小键盘.: VK_DECIMAL (110)小键盘*: VK_MULTIPLY (106)小键盘+: VK_MULTIPLY (107)小键盘-: VK_SUBTRACT (109)小键盘/: VK_DIVIDE (111)Pause Break键: VK_PAUSE (19)Scroll Lock键: VK_SCROLL (145)7位 ASCII码是用七位二进制数进行编码的,可以表示128个字符。我的问题是:ASCII码为什么不是用8位二进制数进行编码的?扩充字符集(Extended Character Set)