目录
一、带符号数的表示
数的符号表示法
1. 原码
- 最高位为符号位,其余为有效数值位
- 有效数值位用二进制真值的绝对值来表示
2. 补码
- 最高位为符号位
- 对于正数,有效数值部分为二进制真值的绝对值
- 对于负数,有效数值部分是将真值的绝对值按位取反,且末位加1
这个只是补码的便捷求取方式,并不是原理性求取方式。
原码与补码之间的转换
分情况进行讨论:
3. 反码
- 最高位为符号位
- 对于正数,有效数值部分为二进制真值的绝对值
- 对于负数,有效数值部分是将真值的绝对值按位取反
4. 移码
在计算机中,移码通常用于表示浮点数的阶码。由于阶码一般取整数,所以移码通常只用于表示整数。
真值与移码对应图:
移码定义中的 X 加上 2^n 等价于将 X 正向平移 2^n ,因此称为移码。
由于 -2^n 是 n+1 位补码所能表示的最小负数,且 -2^n + 2^n = 0,因此可以认为移码就是无符号整数。
二、定点数与定点表示法
定点表示法:程序中所有数的小数点固定在同一位置不变。
1. 带符号的定点小数
约定所有数的小数点的位置固定在符号位之后。
计算机中没有硬件用于存储小数点,小数点是隐含约定的。
2. 带符号的定点整数
约定所有数的小数点的位置固定在最低数值位之后。
计算机中没有硬件用于存储小数点,小数点是隐含约定的。
3. 无符号定点整数
约定所有数的小数点的位置固定在最低数值位之后。
用于表示不带符号的定点正整数。
计算机中没有硬件用于存储小数点,小数点是隐含约定的。
三、浮点数与浮点表示法
1. 原理性的浮点数表示法
- R:阶码底,等于所选计数制的基数,是隐含约定的,一般为2。
- E:阶码,为定点整数,用补码或移码表示。
-
M:尾数,为定点小数,用补码或原码表示。
尾数的规格化
对于原码:规格化的特征是尾数最高有效位为 1
对于补码:
- 对于正数,规格化的特征是最高有效位为 1
- 对于负数,规格化的特征是最高有效位为 0
2. IEEE754 标准的浮点表示法
- S:符号位,0 表示正数,1 表示负数。
- E:阶码,长度为 8 位。采用非标准的移码方式来表示正负指数,只偏移 2^7 - 1 = 127,即 E = e + 127。
- M:尾数,长度为23位。采用原码方式,用纯小数表示。
- 隐含约定尾数的最高位为1,即尾数为 1.M。
- 第一题
例、将十进制数 20.59375 转换成 IEEE754 的 32 位标准浮点数的二进制格式来存储,并写出其 16 进制数。
- 第二题
例、IEEE754单精度浮点数 C0A00000H 的十进制值是多少?
不要忘了正在处理的数据是什么计数制!
四、字符的表示方法(非数值型数据)
ASCII码:128种常用字符,7位,最高位可以设置为奇偶校验位,共8位表示。
只需记忆常用的符号和控制字符。