• 2.1.3字符和字符串


    字符和字符串

    1.1 ASCLL码

    键盘中有一些字符数字,还有在屏幕总无法打印出来的,用于控制计算机的字符,上下键,Delete等等

    由于计算机硬件只能识别0101这样的二进制数,所以用一定规则映射成0101这样的二进制数

    常用控制字符共128个 =7位的二进制编码=27=128

    一个bit表示0和1两种,用来代表二进制位,8个bit便可以表示256种情况=28

    通常计算机处理数据的时候1个字节为处理单位=8bit

    image-20200823104615104

    可印刷字符:32~126,其余为控制、通信字符

    数字:48对应二进制为(00110000)=(0011 0000)~57(0011 1001) 0011相同,后面0000、1001刚好代表十进制数为0-9

    大写字母:65对应二进制为(01000001)=(0100 0001)~90(0101 1010) 010相同,后面00001、11010代表的十进制数为0、26,范围就是0-26

    小写字母:97对应二进制为(01100001)=(0110 0001)~122(0111 1010) 010相同,后面00001、11010代表的十进制数为0、26,范围就是0-26

    image-20200823110459653

    1.2 汉字的表示和编码

    GB 2312-80:汉字+各种符号共7445个

    区位码:94个区,每个区94个位置 相当于一个格子(区,位)

    国标码:在区位码基础上每个区位加上20H,防止信息交换时“控制/通信字符冲突”

    区位码需要在加上20H,就是32的16进制表示,因为控制编码位于0-32.为了防止计算机把识别的字符当成指令,

    所以区位码都会从32开始,而不是从0开始,这时候ASCLL码表,表示汉字的范围是32-125

    汉字内码:在国标码基础上每个区位+80H(80H十六进制对应10000000二进制 最高位为1 ),ASCLL码最高位为0,加上1的话,保证与ASCLL码区分,不重合。就在原来的基础上加128,这时候一个计算机判断输入的字符为一个字节<128,就说明这是一个英文字符。如果计算机读了一个字节,还有下一个字节,把这两个字节组合起来,就能对应上一个汉字

    image-20200823113936824

    输出:汉字字形码

    image-20200823114110089

    1.3 字符串

    英文字符

    image-20200823114647363

    中文字符

    image-20200823114826893
  • 相关阅读:
    Windows Install Twisted 安装Twisted
    raspberry pi随图形界面开机启动 被执行两次的问题
    将任意程序(如.bat文件)作为Windows服务运行
    xampp无法打开phpmyadmin解决方案
    python的subprocess无法进行通信(无法通过管道输入数据)的问题解决
    关于接地/共地
    树莓派字体安装
    windows 不能在本地计算机启动apache2 的解决方法(不是修改端口)
    5 November in 614
    模拟退火算法
  • 原文地址:https://www.cnblogs.com/cg-ww/p/14546481.html
Copyright © 2020-2023  润新知