- 数据的表示
- 计算机结构
- Flynn分类法
- CISC与RISC
- 流水线技术
- 存储系统
- 总线系统
- 可靠性
- 校验码
-
数据的表示
1、进制
(1)m进制转十进制,使用按权展开法,具体方式为:将m进制的每一位数值用m的n次方表示,n与当前位和小数点之间的位数有关。当当前位位于小数点左侧时,n值是当前位和小数点之间数字的个数;当当前位位于小数点右侧时,n值是负数,其绝对值是当前位和小数点之间数字个数加1。
例子:
二进制转十进制:
七进制转十进制:
(2)十进制转m进制,使用短除法,具体方式为:将十进制数除以m获取每次的余数,将余数按逆向排序的数字即为十进制数对应的m进制数。
例子:
十进制转二进制:97转2进制
97/2=48余1
48/2=24余0
24/2=12余0
12/2=6余0
6/2=3余0
3/2=1余1
1/2=0余1
所以,97转2进制是1100001
(3)二进制与八进制和十六进制之间的转换
二进制数从右向左每3位转一位八进制,左侧不足3位的用0补充;
二进制数从右向左每4位转一位十六进制,左侧不足4位的用0补充。
例子:
10 001 110 => 010 001 110 => 216
1000 1110 => 8E
(4)八进制与十六进制之间的转换,可通过二进制实现。
2、编码
(1)数据的编码有原码、反码、补码、移码。
(2)数据编码的取值范围:
编码 | 取值范围 |
原码 | ![]() ![]() |
反码 | ![]() ![]() |
补码 | ![]() ![]() |
补码比原码和反码表示的范围大一个数,是因为在0数字上,原码和反码表示0占用了2个二进制数,而补码占用了1个二进制数。
0的原码 0000 0000 和 1000 0000
0的反码 0000 0000 和 1111 1111
0的补码 0000 0000 和 0000 0000,即0000 0000
3、浮点数及其运算
(1)浮点数表示
其中,M称为尾数、R是基数、n是阶数(指数),M的取值范围1.0 <= M < 10。
(2)浮点数的计算
对阶 => 尾数计算 => 结果格式化
例子: +
步骤1:对阶
把相加的两个数的阶数按高阶转换:
步骤2:尾数计算
步骤3:结果格式化,结果符合浮点数格式,步骤省略。
如果在步骤1中阶数向低阶转换,,在最后一步仍需要将阶数转成高阶,步骤繁琐了。因此在步骤1中将阶数转为高阶。