3.ASCII字符集与字符编码
ASCII编码https://baike.baidu.com/item/ASCII/3092961. ASCII 字符集全称American Standard Code for Information Interchange美国信息交换标准代码整合了128个字符第031及第127(共33个)是控制字符或通信专用字符其余为可显示字符其中包括33个控制字符10个数字字符26个大写字母26个小写字母33个其他字符例如运算符2. 字符编号从0-127即00000000到011111113. 字符编码ASCII码是单字节编码一个字节8位但是只使用到7位首位固定为0。4. 疑问疑问1.为什么大写字母在前小写字母在后可能是因为 拉丁字母最开始只有大写字母小写字母是后面出现的。疑问2.为什么前32个都是控制字符然后是可见字符最后一个又是控制字符del呢因为早期的计算机是用纸袋打孔来记录数据的比如要记录大写字母A他的二进制是 0b01000001那么纸带上就需要打两个孔。如果我发现这个字母打错了想要把他删掉怎么做总不能把孔补上吧于是干脆把孔都打上表示原先的字符被删除了。也就是01111111表示删除当计算机识别到7个孔就知道原先的字符被删除了。这就是为什么ASCII 编码中del这个字符在最后了。疑问3.ASCII是单字节编码首位为0。如果首位故意置为1会怎么样如果首位为1的话就不是标准的ASCII码的正确的字符编码会显示为乱码。4. 演示4.1可显示字符在 vscode中输入ABC然后使用插件查看可以看到显示的是他们的ASCII码的十六进制41、42、434.2 控制字符然后输入一个回车再用插件查看可以看到在window系统中换行符对应的是【两个字节 0D 0A】。注意在这个插件右边的Decoded Text 中控制字符显示为英文的句号。如果此时手动输入0001也就是ASCII字符集中的前两个字符 再切回去会怎么显示一般的编辑器控制字符是不会显示的比如vscode点击open anyway就直接显示了控制字符的缩写的图像。