0 计算机为什么采用二进制?
1)易于物理实现
电路的导通(1)与截至(0);
电压的高(1)与低(0)
2)机器可靠性高
3)抗干扰能力强
4)运算简单 能胜任数值运算,也可方便进行逻辑运算
1 真 True;
0 假 False
1 二进制
1.1 二进制补码
正数:直接二进制转换
负数:取反加一
1.2 十进制小数转二进制
1.2.1 推广到X进制
2 字符的编码
2.1 ASCII
ASCII(American Standard Code for Information Interchange)美国国家标准信息交换码,现已成为国际通用的字符标准代码。
标准ASCII 码采用7位二进制进行编码,最多可以表示 2^7=128 个字符和符号。每个字符和符号用1个字节来表示,字节的最高位为0。
2.1.1 扩展ASCII
标准ASCII 码最多只能表示 128个字符和符号。扩展 ASCII 码采用 8 位二进制数,可对 256 个字母及符号进行编码。
0~127 与标准 ASCII 码相同,128~255 用来表示希腊字母(如ā、ë)、数学符号(如≥、∑)等。
2.2 汉字的编码
ASCII编码很好地解决了英文等语言的字符问题,但是对汉语却没有解决。汉字有上万个,常用的也有几千个, 8位(256)或者7位(128)的编码空间远远不能满足需要。因此在计算机中表示汉字,需要采用另外的编码方案。
2.2.1 GB码
国标码(GB2312)是指我国于1981年公布的国家标准《信息交换用汉字编码字符集-基本集》。
其中包含了6763个汉字,分作两级。
一级为常用字,包括3755个汉字,按汉语拼音字母的顺序排列;
二级汉字共 3008 个,按汉字部首笔划的顺序排列。
每个汉字用两个字节的二进制数编码,每个字节的最高位为1,其余7位作为编码使用,理论上最多可编码2^14=16384个字符。
2.2.2 GBK
采用双字节编码,仅要求汉字第一个字节的最高位为1,理论上最多可编码2^15个字符,共收录汉字21886个。
2.2.3 GB18030
采用单字节、双字节和四字节三种方式对字符编码,包含了多种少数民族语言的文字。
GB、 GBK、GB18030是向下兼容的,同一个符号在三种方案中的编码方式是相同的。
2.2.4 BIG-5码(繁体字)
台湾于1984年提出的汉字编码方案,通行于台湾、香港、澳门、新加坡等地区。
BIG-5 和 GB 码是不兼容的,需要经过编码转换。
2.3 Unicode
为满足跨语言信息处理的需要,解决不同语言不同编码标准的鸿沟。
Unicode 为每种语言的每个字符设定一个统一并且惟一的编码,以统一高效地处理世界上的各种语言。
常用的Unicode 编码规范是 UTF-8 和 UTF-16
3 字符的输出
每个字符必须表示为二进制代码并存储在计算机内的字形库中,这称为字形码
3.1 点阵式字形
将字形描述为点的矩阵,点有黑白两色,用不同的二进制位来表示。放大时呈锯齿状。
3.2 矢量字形
用多条直线或曲线描述字形的轮廓。计算机中常用的是矢量字形。