第二章 数据的表示和运算 2.1.3 字符与字符串
本笔记参考书目:
- 计算机组成原理(第六版.立体化教材)白中英、戴志涛
- 2021王道计算机组成原理视频公开课
本节重点:
- ASCII码/汉字编码
- 字符串在内存中的表示
转载请注明文章来源!
ASCII码
英文中,数字/字母/符号 一共128个字符,只需要7位二进制编码即可表示( 2 7 = 128 2^7=128 27=128)。但计算机通常以字节为单位(1B=8b),所以, 实际ASCII采用8位二进制编码,并在高位补0 (256),这样就一定会产生冗余。
汉字编码
采用区位码,即一个汉字两字节,以坐标形式表示字的区位。
区位范围均为0~93.
为了防止区位码和0~32ASCII码控制/通讯字符冲突,区位码+20H(32),得到 国标码。
国标码再+80H(128),防止和英文字符冲突。避开ASCII0~127区间,让汉字和ASCII码兼容。得到 汉字机内码 。
输入:输入编码(输入法->区位码->国标码->汉字机内编码)
输出:汉字字形码
字符串在内存中的表示
通常,在末尾+\0 (0000 0000),表示结束。
大端模式:汉字机内码的高位存低地址;
小端模式:汉字机内码的低位存低地址。