目录
一.字符编码
1.字符
a.文字+符号
文字->表意文字 例如汉字
表音文字 例如英文字母
符号->标点符号 例如全角和半角标点符号
运算符号..货币符号..数字符号..音乐符号..化学符号..表情符号等
2.字符集
多个字符整合在一起的就是字符集,(常用ASCII,GBK,GB2312,Unicode字符集)
3.字符编号
按照一定的规律给字符集里的字符进行编号
一般使用连续的自然数来进行编号
特别的编号方式,例如GB2312的区位码
字符集的字符编号不是必须的,不会影响字符在计算机中的储存方式。例如GBK GB18030
特点是唯一性
4.字符编码
让计算机中储存和识别
二.进制转换
十进制 | 二进制 | 十六进制 | |
数 | 0 1 2 3 4 5 6 7 8 9 | 0 1 | 0 1 2 3 4 5 6 7 8 9 a b c d e f |
进制 | 逢十进一 | 逢二进一 | 逢十六进一 |
进制表达方式 | 直接表示 (1000) | 0b前缀(0b1000) | 0x前缀 (0x1000) |
英文表示 | decimal | binary | hexadecimal |
前缀加0的原因:
编程语言的变量名一般不允许数字开头,如果b和x开头和容易混淆
二进制--->十进制
乘以2的次幂依次相加 例如0b1001 = 1*2^3+0*2^2+0*2^1+1*2^0=9
十进制--->二进制
1.除2取余法 倒序排列法 例如8=0b1000
2.8421 例如0b1111 8 4 8 1 十进制的9=8+1=0b1001
二进制--->十六进制
从后往前,前四位二进制转1位16进制 例如0b1001(2^3*1+2^0*1)1000(2^3*1)=0x98
为什么这样转呢?
2的4次方=16 二进制4位等于十六进制的1位
三.ASCII
1.字符
整合了128个字符
33个控制字符 例如:回车符
10个数字字符0 1 2 3 4 5 6 7 8 9
26个大写字母字符A-Z
26个小写字母字符a-z
33个其他字符 例如运算字符,标点字符
2.字符集
ASCII ->American Standard Code for Information Interchange 美国信息交换标准代码
3.字符编号
0~127给字符编码
4.字符编码
单字节编码8位 256个字符
128只需要用到7位
剩下的1位固定0 例如0b01111111
单字节位8位,使用7位 剩下一位为0