金沙网址它包含了 33

ASCII(American Standard Code for Information
Interchange,U.S.音讯沟通规范代码)是风姿罗曼蒂克套基于拉丁字母的字符编码,共收音和录音了
128 个字符,用三个字节就能够积存,它雷同国际规范 ISO/IEC 646。ASCII
标准于 1970 年第壹遍透露,最后二次创新是在 1988 年,它满含了 三十个调控字符(具备某个特殊功能可是不能彰显的字符)和 95 个可展现字符。

ASCII码表

二进制 十进制 十六进制 缩写/字符 解释
00000000 0 00 NUL (NULL) 空字符
00000001 1 01 SOH (Start Of Headling) 标题开始
00000010 2 02 STX (Start Of Text) 正文开始
00000011 3 03 ETX (End Of Text) 正文结束
00000100 4 04 EOT (End Of Transmission) 传输结束
00000101 5 05 ENQ (Enquiry) 请求
00000110 6 06 ACK (Acknowledge) 回应/响应/收到通知
00000111 7 07 BEL (Bell) 响铃
00001000 8 08 BS (Backspace) 退格
00001001 9 09 HT (Horizontal Tab) 水平制表符
00001010 10 0A LF/NL(Line Feed/New Line) 换行键
00001011 11 0B VT (Vertical Tab) 垂直制表符
00001100 12 0C FF/NP (Form Feed/New Page) 换页键
00001101 13 0D CR (Carriage Return) 回车键
00001110 14 0E SO (Shift Out) 不用切换
00001111 15 0F SI (Shift In) 启用切换
00010000 16 10 DLE (Data Link Escape) 数据链路转义
00010001 17 11 DC1/XON (Device Control 1/Transmission On) 设备控制1/传输开始
00010010 18 12 DC2 (Device Control 2) 设备控制2
00010011 19 13 DC3/XOFF (Device Control 3/Transmission Off) 设备控制3/传输中断
00010100 20 14 DC4 (Device Control 4) 设备控制4
00010101 21 15 NAK (Negative Acknowledge) 无响应/非正常响应/拒绝接收
00010110 22 16 SYN (Synchronous Idle) 同步空闲
00010111 23 17 ETB (End of Transmission Block) 传输块结束/块传输终止
00011000 24 18 CAN (Cancel) 取消
00011001 25 19 EM (End of Medium) 已到介质末端/介质存储已满/介质中断
00011010 26 1A SUB (Substitute) 替补/替换
00011011 27 1B ESC (Escape) 逃离/取消
00011100 28 1C FS (File Separator) 文件分割符
00011101 29 1D GS (Group Separator) 组分隔符/分组符
00011110 30 1E RS (Record Separator) 记录分离符
00011111 31 1F US (Unit Separator) 单元分隔符
00100000 32 20 (Space) 空格
00100001 33 21 !  
00100010 34 22 "  
00100011 35 23 #  
00100100 36 24 $  
00100101 37 25 %  
00100110 38 26 &  
00100111 39 27  
00101000 40 28 (  
00101001 41 29 )  
00101010 42 2A *  
00101011 43 2B +  
00101100 44 2C ,  
00101101 45 2D  
00101110 46 2E .  
00101111 47 2F /  
00110000 48 30 0  
00110001 49 31 1  
00110010 50 32 2  
00110011 51 33 3  
00110100 52 34 4  
00110101 53 35 5  
00110110 54 36 6  
00110111 55 37 7  
00111000 56 38 8  
00111001 57 39 9  
00111010 58 3A :  
00111011 59 3B ;  
00111100 60 3C <  
00111101 61 3D =  
00111110 62 3E >  
00111111 63 3F ?  
01000000 64 40 @  
01000001 65 41 A  
01000010 66 42 B  
01000011 67 43 C  
01000100 68 44 D  
01000101 69 45 E  
01000110 70 46 F  
01000111 71 47 G  
01001000 72 48 H  
01001001 73 49 I  
01001010 74 4A J  
01001011 75 4B K  
01001100 76 4C L  
01001101 77 4D M  
01001110 78 4E N  
01001111 79 4F O  
01010000 80 50 P  
01010001 81 51 Q  
01010010 82 52 R  
01010011 83 53 S  
01010100 84 54 T  
01010101 85 55 U  
01010110 86 56 V  
01010111 87 57 W  
01011000 88 58 X  
01011001 89 59 Y  
01011010 90 5A Z  
01011011 91 5B [  
01011100 92 5C \  
01011101 93 5D ]  
01011110 94 5E ^  
01011111 95 5F _  
01100000 96 60 `  
01100001 97 61 a  
01100010 98 62 b  
01100011 99 63 c  
01100100 100 64 d  
01100101 101 65 e  
01100110 102 66 f  
01100111 103 67 g  
01101000 104 68 h  
01101001 105 69 i  
01101010 106 6A j  
01101011 107 6B k  
01101100 108 6C l  
01101101 109 6D m  
01101110 110 6E n  
01101111 111 6F o  
01110000 112 70 p  
01110001 113 71 q  
01110010 114 72 r  
01110011 115 73 s  
01110100 116 74 t  
01110101 117 75 u  
01110110 118 76 v  
01110111 119 77 w  
01111000 120 78 x  
01111001 121 79 y  
01111010 122 7A z  
01111011 123 7B {  
01111100 124 7C |  
01111101 125 7D }  
01111110 126 7E ~  
01111111 127 7F DEL (Delete) 删除

对调节字符的讲授

ASCII 编码中第 0~31 个字符(开首的 32 个字符)以至第 1二十六个字符(最终叁个字符)都以不可以预知的(不能展示),然则它们都具备部分优越效率,所以称为调节字符( Control
Character)或许效能码(Function Code)。

这 叁11个调控字符大都与通讯、数据存款和储蓄以至老式器材有关,有些在现代微机中的含义已经济体改成了。

些微调节符供给料定的微机基本功手艺精晓,初读书人可以跳过,选取轻巧的理解就能够。

 

上边列出了一些调整字符的现实性职能:

  • #### NUL (0)

    NULL,空字符。空字符初始本意能够看作为
    NOP(中文意为空操作,正是吗都不做的乐趣),此任务能够忽视三个字符。

    据此有那一个空字符,首借使用于Computer早期的笔录消息的纸带,此处留个
    NUL
    字符,意思是先占那个岗位,以待后用,比方您曾几何时想起来了,在此个职位在放贰个别的什么字符之类的。

    后来吧,NUL 被用于C语言中,表示字符串的终止,当叁个字符串中间现身NUL
    时,就表示那么些是一个字符串的末尾了。那样就便于遵照本人要求去定义字符串,多少长度都行,当然假令你内部存款和储蓄器放得下,然后最终加二个\0,即空字符,意思是现阶段字符串到此甘休。

  • #### SOH (1)

    Start Of
    Heading,标题开端。借使音信沟通交流着重以命令和音信的款式来讲,SOH
    就能够用于标识每一个音讯的发轫。

    一九六二年,最开首 ASCII 标准中,把此字符定义为 Start of
    Message,后来又改为当今的 Start Of Heading。

    今昔,那么些 SOH 不足为怪于主从(master-slave)情势的 安德拉S232
    的通讯中,叁个主设备,以 SOH
    伊始,和从设备实行通讯。那样便于从设备在数据传输现身谬误的时候,在下一回通讯从前,去完毕再次联合(resynchronize)。如果未有一个清楚的近乎于
    SOH
    那样的号子,去标识各样命令的开端或开首的话,那么重新联合,就很难实现了。

  • #### STX (2) 和 ETX (3)

    STX 表示 Start Of Text,意思是“文本最早”;ETX 表示 End Of
    Text,意思是“文本停止”。

    透过某种通信合同去传输的一个数额(包),称为少年老成帧来讲,常会含有二个帧头,满含了寻址音信,即你是要发给何人,要发送到目标地是哪儿,其后跟着真正要发送的数额内容。

    而 STX,就用来标志那些数据内容的最早。接下来是要传输的数码,最终是
    ETX,注明数据的扫尾。

    而中级具体传输的数据内容,ASCII
    并从未去定义,它和您所用的传导公约有关。

    帧头

  • #### BEL (7)

    BELl,响铃。在 ASCII 编码中,BEL 是个比较风趣的东西。BEL
    用多个方可听得见的声音来吸引大伙儿的注意,既可以够用来Computer,也得以用来周边设备(比方打字与印刷机)。

    注意,BEL
    不是声卡只怕喇叭发出的声响,而是蜂鸣器发出的音响,重要用来报告急方,比方硬件现身故障时就能听到那几个声音,有的计算机操作系统符合规律运维也会听到那么些声音。蜂鸣器未有一向设置到主板上,而是供给连接到主板上的后生可畏种外设,今世为数不菲Computer都不设置蜂鸣器了,纵然输出
    BEL 也听不到声音,这时 BEL 就向来不此外意义了。

  • #### BS (8)

    BackSpace,退格键。退格键的魔法,随着年华转移,意义也变得比不上了。

    退格键开始的意思是,在打字与印刷机和电传机上,往回移动风度翩翩格光标,以起到重申该字符的功力。比方您想要打字与印刷叁个a,然后加上退格键后,就成了
    aBS^。在机械类打字机上,此办法能够起到实在的着重提出字符的效果,但是对于新兴的
    CTRAV4 本年代以来,就不能起到对应效果了。

    前段时间世所用的退格键,不唯有意味着光标往回移动了生龙活虎格,同有的时候候也删除了活动后该地方的字符。

  • #### HT (9)

    Horizontal Tab,水平制表符,也便是 Table/Tab 键。

    水平制表符的效果是用来布局,它决定输出设备前行到下四个表格去管理。而制表符
    Table/Tab 的上涨的幅度也是灵活不固定的,只然而在好多器械上制表符 Tab
    都预约义为 4 个空格的急剧。

    水平制表符 HT
    不仅可以减小多少输入者的专门的职业量,对于格式化好的文字来讲,仍然是能够够缩小存款和储蓄空间,因为三个Tab键,就代表了
    4 个空格。

  • #### LF (10)

    Line Feed,直译为“给打字与印刷机等喂风流罗曼蒂克行”,也正是“换行”的情趣。LF 是 ASCII
    编码中常被误用的字符之风度翩翩。

    LF 的最原始的意思是,移动打字与印刷机的头到下生龙活虎行。而此外叁个 ASCII
    字符,CR(Carriage
    Return)才是将打字与印刷机的头移到最左边,即生机勃勃行的以前(行首)。非常多串口公约和
    MS-DOS 及 Windows 操作系统,也都以这么实现的。

    而C语言和 Unix 操作系统将 LF 的意思重新定义为“新行”,即 LF 和 C奥迪Q5的咬合效应,也正是回车且换行的情致。

    从程序的角度出发,C语言和 Unix 对 LF 的定义显得特别自然,而 MS-DOS
    的兑现更就如于 LF 的本心。

    今天大家常将 LF
    用做“新行(newline)”的作用,大非常多文本编辑软件也都足以管理单个 LF
    可能 CENCORE/LF 的结合了。

  • #### VT (11)

    Vertical Tab,垂直制表符。它雷同于水平制表符
    Tab,目标是为了减小构造中的工作,同时也回退了格式化字符时所须要仓库储存字符的半空中。VT
    调控符用于跳到下贰个标识行。

    说真的,还真没看见微微地方要求用 VT,因为日常在换行的时候都以用 LF
    取代 VT 了。

  • #### FF (12)

    Form
    Feed,换页。设计换页键,是用来支配打字与印刷机行为的。当打字与印刷机械收割到此键码的时候,打字与印刷机移动到下黄金时代页。

    不等的设备的尖峰对此决定符所表现的一坐一起各分化,有些会消亡显示器,有些只是显得^L字符,有些只是新换生机勃勃行而已。比方,Unix/Linux
    下的 Bash Shell 和 Tcsh 就把 FF 看做是一个清空显示屏的下令。

  • #### CR (13)

    Carriage return,回车,表示机器的滑行部分(可能底座)重回。

    CGL450回车的本意是让打字与印刷头回到右侧界,并从未活动到下大器晚成行的意趣。随着岁月的蹉跎,后来大家把
    C福睿斯 的意味弄成了 Enter 键,用于暗意输入达成。

    在多少以显示器展现的情事下,大家按下 Enter
    的还要,也指望把光标移动到下生机勃勃行,因而C语言和 Unix 重新定义了 C讴歌ZDX的意思,将其象征为活动到下一行。当输入 C宝马7系时,系统也平常隐式地将其转移为LF。

  • #### SO (14) 和 SI (15)

    SO,Shift Out,不用切换;SI,Shift In,启用切换。

    早在 壹玖伍玖s 时期,设计 ASCII 编码的匈牙利人就已经想到了,ASCII
    编码不止能用来罗马尼亚语,也要能用于外文字符集,这很关键,定义 Shift In
    和 Shift Out 就是思考到了这一点。

    最开头,其意为在西比勒陀利亚语和拉丁语之间切换。西克拉科夫语 ASCII(也即 KOI-7
    编码)将 Shift 作为贰个惯常字符,而拉丁语
    ASCII(也正是大家嗤之以鼻所说的 ASCII)用 Shift
    去改换打字与印刷机的书体,它们统统是三种意义。

    在拉丁语 ASCII 中,SO 用于发生双倍宽度的字符(相通于全角),而用 SI
    打字与印刷压缩的书体(雷同于半角)。

  • #### DLE (16)

    Data Link Escape,数据链路转义。

    临时大家必要在通信过程中发送一些调控字符,不过总有意气风发对动静下,那么些调整字符被视作了习认为常的数据流,而未有起到相应的支配作用,ASCII
    编码引进 DLE 来缓慢解决那类难点。

    豆蔻梢头旦数额流中检查测量试验到了
    DLE,数据接收端会对数据流中接下去的字符另作管理。不过实际如何地理,ASCII
    标准中并不曾概念,只是弄了个 DLE
    去封堵正常的数据流,告诉接下去的数据要非常对待。

  • #### DC1 (17)

    Device Control 1,或者 XON – Transmission on。

    那些 ASCII 调节符就算原先定义为 DC1, 可是今日常表示为
    XON,用于串行通讯中的软件流动调查控。其重要性意义为,在通讯被操纵符 XOFF
    中断之后,重新最初消息传输。

    用过串行终端的人相应还记得,当临时候数据出错了,按
    Ctrl+Q(等价于XON)有的时候候可以起到再度传输的意义。那是因为,此 Ctrl+Q
    键盘体系实际上就是爆发 XON
    调节符,它能够将那多少个由于终端可能主机方面,由于临时现身的大错特错的 XOFF
    调节符而中断的通讯解锁,使其健康通讯。

  • #### DC3 (19)

    Device Control 3,可能 XOFF(Transmission off,传输中断)。

    #### EM (25)

    End of Medium,已到介质媒质末端,媒质存款和储蓄已满。

    EM
    用于,当数码存款和储蓄达到串行存款和储蓄介质媒质末尾的时候,就如磁带或磁头滚动到介质媒质末尾同样。其用于表述数据的逻辑终点,即不用非假如情理上的高达多少载体的末尾。

  • #### FS(28)

    File Separator,文件分隔符。FS
    是个很有意思的调控字符,它能够让我们看来 1959s
    时期的微处理机是哪些组织的。

    大家现在习于旧贯于自由访谈一些存款和储蓄媒介物,举例 RAM、磁盘等,但是在规划
    ASCII
    编码的老新禧代,超越黄金时代十分六量或许种种的、串行的,而不是即兴拜会的。此处所说的串行,不仅指的是串行通信,还指的是顺序存款和储蓄介质媒质,举例穿刺卡片、纸带、磁带等。

    在串行通讯的时日,设计那样一个用于表示文件分隔的调整字符,用于私分八个独立的文件,是生机勃勃件很精明的事体。

  • #### GS(29)

    Group Separator,分组符。

    ASCII 定义调整字符的缘故之生机勃勃正是思谋到了数额存款和储蓄。

    好多动静下,数据库的创制都和表有关,表富含了多条记下。同一个表中的全体记录归属同生机勃勃等级次序,分裂的表中的笔录归属不一致的系列。

    而分组符 GS
    正是用来分隔串行数据存款和储蓄系统中的不相同的组。值得注意的是,此时还不曾利用
    Excel 表格,ASCII 时期的人把它叫做组。

  • #### RS(30)

    Record Separator,记录分隔符,用于分隔六个组或表中的多条记下。

  • #### US(31)

    Unit Separator,单元分隔符。

    在 ASCII
    定义中,数据库中所存款和储蓄的微小的多寡项叫做单元(Unit)。这两天天我们称其字段(Field)。单元分隔符
    US 用于私分串行数据存款和储蓄情况下的不等单元。

    现行反革命的数据库达成都务求一大半项目都抱有稳固的长度,尽管有的时候候大概用不到,可是对于每二个字段,却都要分配丰硕大的上空,用于寄存最大恐怕的数额。

    这种做法的弊病正是挤占了汪洋的存放空间,而 US
    调节符允许字段具有可变的长度。在 1957s 时代,数据存款和储蓄空间比较轻便,用
    US 将区别单元分隔离,能省掉无尽空中。

  • #### DEL (127)

    Delete,删除。

    有人大概会问,为啥 ASCII 编码中其余调节字符的值都极小(即 0~31),而
    DEL 的值却非常的大啊(为 127)?

    那是由于那几个新鲜的字符是为纸带而定义的。在极度时代,绝大许多的纸带都是用7个孔洞去编码数据的。而
    127 这么些值所对应的二进制值为111 1111(全部 7 个比特位都以1),将 DEL
    用在现有的纸带上时,全部的洞就都被揭穿了,就把已经存在的多寡都擦除掉了,就起到了删减的效能。

判断题:

C语言使用的就是 ASCII 编码,字符在仓库储存时会转变到对应的 ASCII
码值,在读取时也是依据 ASCII 码找到呼应的字符。(X)

答:C语言有的时候候使用 ASCII
编码,一时候却不是,而是采纳后边两节中就要讲到的 GBK 编码和 Unicode
字符集。

 

相关文章