第 二 章 习 题 答 案
1. 给出以下概念的解释说明。
真值 机器数 数值数据 非数值数据 无符号整数 带符号整数
定点数 原码 补码 变形补码 溢出 浮点数
尾数 阶 阶码 移码 阶码下溢 阶码上溢
规格化数 左规 右规 非规格化数 机器零 非数(NaN)
BCD 码 逻辑数 ASCII 码 汉字输入码 汉字内码 机器字长
大端方式 小端方式 最高有效位 最高有效字节(MSB) 最低有效位
最低有效字节(LSB) 掩码 算术移位 逻辑移位 0 扩展
符号扩展 零标志ZF 溢出标志OF 符号标志SF进位/借位标志CF
2 . 简单回答下列问题。
(1)为什么计算机内部采用二进制表示信息?既然计算机内部所有信息都用二进制表示,为什么还要
用到十六进制或八进制数?
(2 )常用的定点数编码方式有哪几种? 通常它们各自用来表示什么?
(3 )为什么现代计算机中大多用补码表示带符号整数?
(4 )在浮点数的基数和总位数一定的情况下,浮点数的表示范围和精度分别由什么决定?两者如何相
互制约?
(5 )为什么要对浮点数进行规格化?有哪两种规格化操作?
(6 )为什么有些计算机中除了用二进制外还用BCD 码来表示数值数据?
(7 )为什么计算机处理汉字时会涉及到不同的编码(如,输入码、内码、字模码)?说明这些编码中
哪些用二进制编码,哪些不用二进制编码,为什么?
3 .实现下列各数的转换。
(1)(25.8125) = (?) = (?) = (?)
10 2 8 16
(2 )(101101.011)2 = (?)10= (?) 8= (?) 16= (?) 8421
(3 )(0101 1001 0110.0011)8421 = (?)10= (?) 2= (?) 16
(4 )(4E.C)16 = (?) 10= (?) 2
参考答案:
(1)(25.8125) = ( 1 1001.1101) = (31.64) = ( 19.D)
10 2 8 16
(2 )(101101.011)2 = (45.375)10 = (55.3) 8 = (2D.6) 16 = (0100 0101.0011 0 111 0101) 8421
(3 )(0101 1001 0110.0011)8421 = (596.3)10 = (1001010100.0100 1100110011…) 2 = (254.4CCC…) 16
(4 )(4E.C)16 = (78.75)10 = (0100 1110.11) 2
4 . 假定机器数为8 位(1 位符号,7 位数值),写出下列各二进制数的原码表示。
+0.1001 ,–0.1001,+1.0 ,– 1.0,+0.010100 ,–0.010100,+0 ,–0
参考答案:
(后面添0) 原码
+0.1001 : 0.1001000
–0.1001 : 1.1001000
+1.0 : 溢出
–1.0: 溢出
+0.010100 : 0.0101000
–0.010100 : 1.0101000
+0 : 0.0000000
–0 : 1.0000000
5 . 假定机器数为8 位(1 位符号,7 位数