ASCLL码介绍、转义字符详细介绍

ASCLL码介绍、转义字符详细介绍

一、ASCLL码

0~31及127(共33个)是控制字符,它们并没有特定的图形显示,在实际的工程项目中,会依不同的应用程序起特定的作用 。

32~126(共95个)是字符(32是空格):其中48~57为0到9十个阿拉伯数字。65~90为26个大写英文字母,97~122为26个小写英文字母,其余为一些标点符号、运算符号等。

Bin

(二进制)

Oct

(八进制)

Dec

(十进制)

Hex

(十六进制)

缩写/字符

解释

以下(0~31)为控制字符

0000 0000

00

0

0x00

NUL(null)

空字符

0000 0001

01

1

0x01

SOH(start of headline)

标题开始

0000 0010

02

2

0x02

STX (start of text)

正文开始

0000 0011

03

3

0x03

ETX (end of text)

正文结束

0000 0100

04

4

0x04

EOT (end of transmission)

传输结束

0000 0101

05

5

0x05

ENQ (enquiry)

请求

0000 0110

06

6

0x06

ACK (acknowledge)

收到通知

0000 0111

07

7

0x07

BEL (bell)

响铃

0000 1000

010

8

0x08

BS (backspace)

退格

0000 1001

011

9

0x09

HT (horizontal tab)

水平制表符

0000 1010

012

10

0x0A

LF (NL line feed, new line)

换行键

0000 1011

013

11

0x0B

VT (vertical tab)

垂直制表符

0000 1100

014

12

0x0C

FF (NP form feed, new page)

换页键

0000 1101

015

13

0x0D

CR (carriage return)

回车键

0000 1110

016

14

0x0E

SO (shift out)

不用切换

0000 1111

017

15

0x0F

SI (shift in)

启用切换

0001 0000

020

16

0x10

DLE (data link escape)

数据链路转义

0001 0001

021

17

0x11

DC1 (device control 1)

设备控制1

0001 0010

022

18

0x12

DC2 (device control 2)

设备控制2

0001 0011

023

19

0x13

DC3 (device control 3)

设备控制3

0001 0100

024

20

0x14

DC4 (device control 4)

设备控制4

0001 0101

025

21

0x15

NAK (negative acknowledge)

拒绝接收

0001 0110

026

22

0x16

SYN (synchronous idle)

同步空闲

0001 0111

027

23

0x17

ETB (end of trans. block)

结束传输块

0001 1000

030

24

0x18

CAN (cancel)

取消

0001 1001

031

25

0x19

EM (end of medium)

媒介结束

0001 1010

032

26

0x1A

SUB (substitute)

代替

0001 1011

033

27

0x1B

ESC (escape)

换码(溢出)

0001 1100

034

28

0x1C

FS (file separator)

文件分隔符

0001 1101

035

29

0x1D

GS (group separator)

分组符

0001 1110

036

30

0x1E

RS (record separator)

记录分隔符

0001 1111

037

31

0x1F

US (unit separator)

单元分隔符

以下为标点符号(32~47、58~64、91~96、123~126)

0010 0000

040

32

0x20

(space)

空格

0010 0001

041

33

0x21

!

叹号

0010 0010

042

34

0x22

"

双引号

0010 0011

043

35

0x23

#

井号

0010 0100

044

36

0x24

$

美元符

0010 0101

045

37

0x25

%

百分号

0010 0110

046

38

0x26

&

和号

0010 0111

047

39

0x27

'

闭单引号

0010 1000

050

40

0x28

(

开括号

0010 1001

051

41

0x29

)

闭括号

0010 1010

052

42

0x2A

*

星号

0010 1011

053

43

0x2B

+

加号

0010 1100

054

44

0x2C

,

逗号

0010 1101

055

45

0x2D

-

减号/破折号

0010 1110

056

46

0x2E

.

句号

0010 1111

057

47

0x2F

/

斜杠

48~57为字符 '0' ~ '9'

0011 1010

072

58

0x3A

:

冒号

0011 1011

073

59

0x3B

;

分号

0011 1100

074

60

0x3C

<

小于

0011 1101

075

61

0x3D

=

等号

0011 1110

076

62

0x3E

>

大于

0011 1111

077

63

0x3F

?

问号

0100 0000

0100

64

0x40

@

电子邮件符号

0101 1011

0133

91

0x5B

[

开方括号

0101 1100

0134

92

0x5C

\

反斜杠

0101 1101

0135

93

0x5D

]

闭方括号

0101 1110

0136

94

0x5E

^

脱字符

0101 1111

0137

95

0x5F

_

下划线

0110 0000

0140

96

0x60

`

开单引号

97~122为小写字母

0111 1011

0173

123

0x7B

{

开花括号

0111 1100

0174

124

0x7C

|

垂线

0111 1101

0175

125

0x7D

}

闭花括号

0111 1110

0176

126

0x7E

~

波浪号

127为控制字符

0111 1111

0177

127

0x7F

DEL (delete)

删除

ASCLL码是用来表示字符的,ASCLL码本身是数字。

“ 为什么要使用ASCII码?"

日常生活中,我们使用的字母a、b、c在计算机中是没法直接运算的,需要转成0、1组成的二进制数使计算机能够识别,这就出现了ASCLL码 (American Standard Code for Information Interchange): 美国信息交换标准代码)

我们在生活中常用的有字母a~z、A~Z、0~9,还有一些常用的符号(例如*、#、@等),ASCLL码是ANSI(美国国家标准学会(American National Standard Institute ))制定的,是一种单字符编码方案。用于基于文本的数据

任何一个字符都对应一个整数。计算机内部信息都是有0或1组成的,如果

ASCLL码共有128个,使用七位二进制数来表示字符'0'~'9'、小写字母'a'~'z'、大写字母'A'~'Z'、还有控制符

七位二进制数:0000000~1111111 (十进制的0~127)共128个数,所以有128个ASCLL码

(进制转换在第二章第一节1.3中介绍)

其中0不存储任何字符,

剩余127个表示如下字符:

十进制ASCLL码

表示的字符

ASCLL码本码

0~31及127

控制字符

48~57

字符'0'~'9'(10个)

二进制:110000~111001

97~122

小写字母'a'~'z'(26个)

65~90

大写字母'A'~'Z'(26个)

控制字符在C语言中用转义字符表示,当然转义字符不只是可以表示控制字符。如:'\41'→041(八进制)→33(十进制)→ !(标点符号)

字母记不住?

大写记忆方法:

只需记住A的ascll码为65,加几等于目标字符?

把A~Z想象成1~26,

E的ASCLL,码是多少?A就是1,E就是5,1加几等于5?4!那么E就等于A加4=65+4=69;

Z想象成26,26=1+25,Z就等于65+25=90

小写记忆方法:

小写a~z一样的,只需记住a的ascll码为97,加几等于目标字符?

把a~z想象成1~26,

f的ASCLL码是多少?a就是1,1加几等于6?5!那么f就等于a加5=97+5=102;

z就是26,1加几等于26?25,Z就等于97+25=122

数字记忆方法:

'0'是48,

'9'的ACSLL码是多少?0+几等于9?9!所以'0'就加9, ,等于 48+9=57

大小规则

常见ASCII码的大小规则:0~9

1)数字比字母要小。如 “7”<“F”;

2)数字0比数字9要小,并按0到9顺序递增。如 “3”<“8” ;

3)字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z” ;

4)同个字母的大写字母比小写字母要小32。如“A”<“a” 。

几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48 。

二、转义字符

转义字符和普通字符区别:

普通字符前加\就不是普通字符了,变为了转义字符

printf("%d\n",'\b'); //8 '\b'是转义字符对应ASCII码为8

printf("%d\n",'b'); //98 'b'是普通字符对应ASCII码为98

printf("%d\n",'\n'); //10 '\n'是转义字符对应ASCII码为10

printf("%d\n",'n'); //110 'n'是转义字符对应ASCII码为110

控制字符不显示:

分别以十、八、十六进制输出控制字符,结果:不会有字符显示在屏幕上

printf("%c,%c,%c\n",127,0177,0x7F); //,, (ASCII为127的字符是控制字符(del:删除),因此不显示)

printf("%c,%c,%c\n",7,'\7','\x7'); //,, (ASCII为7的字符是控制字符(\a:响铃),因此不显示)

转义字符的表示方法(3种):

'\+字符'

'\n'

换行

'\+1~3为8进制数'(0~7)

'\101'

即0101(八进制)→ 65(十进制)→ 'A'

'\x+1~2位十六进制数'(0~F)(即0~15)

'\x4F'

即0x4F(十六进制)→ 99(十进制)→ 'c '

注意:转义字符的前缀是反斜杠\,不是斜杠/。只有除以(/)和取余(%)是斜杠,其他(转义字符前缀、文件路径)的是反斜杠!!!!

所有的转义字符和所对应的意义:

转义字符

意义

ASCII码值(十进制)

\a

响铃(BEL)

007

\b

退格(BS) ,将当前位置移到前一列

008

\f

换页(FF),将当前位置移到下页开头

012

\n

换行(LF) ,将当前位置移到下一行开头

010

\r

回车(CR) ,将当前位置移到本行开头

013

\t

水平制表(HT) (跳到下一个TAB位置)

009

\v

垂直制表(VT)

011

\\

代表一个反斜线字符''\'

092

\'

代表一个单引号(撇号)字符

039

\"

代表一个双引号字符

034

\?

代表一个问号

063

\0

空字符(NUL)

000

\ddd

1到3位八进制数所代表的任意字符

三位八进制

\xhh

十六进制所代表的任意字符

十六进制

相关推荐

如何在阿迪达斯官网验证产品真伪?
beat365正版唯一官网

如何在阿迪达斯官网验证产品真伪?

🕒 08-13 👁️ 5634
拉伸洗后缩水的毛衣,如何恢复衣服的形状
beat365正版唯一官网

拉伸洗后缩水的毛衣,如何恢复衣服的形状

🕒 07-13 👁️ 6059