计算机组成原理辅导与实验 联系客服

发布时间 : 星期日 文章计算机组成原理辅导与实验更新完毕开始阅读

+[y]补

+[-y]补

+[y]补

+[y]补

+[-y]补

被除数x/余数r 11. 0111 00. 1011 00. 0010 00. 0100 11. 0101 11. 1001 11. 0010 00. 1011 11. 1101 11. 1010 00. 1011 00. 0101 00. 1010 11. 0101 11. 1111

商数q 1 1

1. 0 1. 0

1. 00 1. 00

1. 001 1.001

说 明

x和y异号,[x]补+[y]补 余数与 y同号,商上1 r和q左移一位 减去除数

余数与 y异号,商上0 r和q左移一位 加上除数

余数与 y异号,商上0 r和q左移一位 加上除数

余数与 y同号,商上1 r和q左移一位 减去除数

余数与 y异号,商上0

1. 0010

不能除尽,商为负,故需校正:[x/y]补= 1. 0010+ 0. 0001= 1. 0011 余数与被除数同号,则不需校正:

-余数[r]补=1. 1111×24(余数与被除数同号)。

例2.24 设数的阶码3位,尾数6位(不包括符号位),试按机器的浮点运算步骤计算[X±Y]补。X=2-011×0.100101, Y=2-010×0.011101 解 (1)求[X+Y]补

两数以补码表示如下: [X]补=11101,00.100101

[Y]补=11110,00.011101

① 对阶: [△E]补=[EX]补-[EY]补=11101+00010=11111

△E=-1,EX < EY ,X的尾数应右移1次。 得[X]补=11110,00.010011 (0舍1入)

② 尾数求和

[X+Y]补=11110,00.110000

③ 规格化:求和之后得到的数为已经是规格化了的数,即得

[X+Y]补=11110,00.110000

④ 溢出检测:运算结果阶码的双符号位相同,结果无溢出。 (2)求[X-Y]补

① 对阶过程同(1) ② 尾数相减 [X]补=00.010011 [Y]补=00.011101

[–Y]补=11.100011 [X]补 00.010011 + [–Y]补 11.100011

[X-Y]补 11.110110

③ 规格化 由于所得的数不是规格化数,故需将尾数左移2位,阶码减2,得

[X-Y]补=11100,11.011000

④ 溢出检测:运算结果阶码的双符号位相同,结果无溢出。 讨论:

参与运算的浮点数如果为非规格化数,则应先进行规格化,再运算。浮点数运算的结果

17

应该表示成规格化数。这样做的主要目的是使尾数表示尽可能多的有效数字,从而提高数的表示精度。在运算时,阶码和尾数通常采用双符号位进行运算,便于溢出检测和规格化。双符号位运算时,高位符号运算产生的进位要丢掉。补码的双符号位形式即符号位双写。

1.5 练习题

一、选择题 1. 在机器数 中,零的表示形式是唯一的。 A. 原码 B. 补码 C. 补码和反码 D. 原码和反码

2. 若浮点数格式为1位阶符、6位阶码、1位数符、8位尾数,则浮点数所能表示的数的

范围是 。 说明:负数用2的补码表示,尾数部分没有规格化的情况也在考虑范围之内。 A. –263~(1–2–8)×263 B. –263~(1–2–7)×263

C. –264~(1–2–8)×264 D. –264~(1–2–7) ×264

3. 若浮点数用补码表示,则判断运算结果是否为规格化数的方法是 。 A. 阶符与数符相同为规格化数 B. 阶符与数符相异为规格化数 C. 数符与尾数小数点后第1位数字相异为规格化数 D. 数符与尾数小数点后第1位数字相同为规格化数 4. 原码加减法是指 。 A. 操作数用原码表示,连同符号位直接相加减 B. 操作数用原码表示,尾数直接相加减,符号位单独处理 C. 操作数用原码表示,根据两数符号决定实际操作,符号位单独处理 D. 操作数取绝对值,直接相加减,符号位单独处理 5. 补码加减法是指 。 A. 操作数用补码表示,两数尾数相加减,符号位单独处理,减法用加法代替 B. 操作数用补码表示,符号位与尾数一起参加运算,结果的符号与加减相同 C. 操作数用补码表示,连同符号位直接相加减,减某数用加负某数的补码代替,结果的符号在运算中形成 D.操作数用补码表示,由数符决定两尾数的操作,符号位单独处理 6. 若一个数的编码是10000111,它的真值为+7,则该编码是 。

A.原码 B.反码 C.补码 D.移码 7. n+1位定点整数补码的范围为 。

n n n n

A.-2 ~ 2-1 B.-2+1~2-1

n n n-1 n

C.-2+1~2-1 D.-2~2-1 8. 运算器的主要功能是进行 。 A. 逻辑运算 B. 算术运算 C. 逻辑运算与算术运算 D. 初等函数运算

9. 运算器由许多部件组成,其核心部分是 。 A. 数据总线

18

B. 算术逻辑运算单元 C. 多路开关 D. 累加寄存器

10. 在定点二进制运算器中,减法运算一般通过 来实现。 A. 原码运算的二进制减法器 B. 补码运算的二进制减法器

C. 补码运算的十进制加法器 D. 补码运算的二进制加法器

11. 计算机内进行加/减法运算时常采用 。

A.ASCII码 B.原码 C.反码 D.补码 12. 计算机内常采用 作为字符编码。

A.ASCII码 B.原码 C.反码 D.补码 13. 补码运算的特点是符号位 。

A.与数值位分别进行运算 B.与数值位一起参与运算 C.要舍去 D.表示溢出 14. 原码一位乘法中符号位 。

A.与数值位分别进行运算 B.与数值位一起参与运算 C.表示进位 D.表示溢出 15. 在原码加减交替除法中,当余数为负时的算法为 。

A.商1,余数左移一位,加除数 B.商1,余数左移一位,减除数 C.商0,余数左移一位,加除数 D.商0,余数左移一位,减除数

16. 采用原码一位乘法运算时,结果的符号可由两数的符号位进行

得到。A.逻辑加 B.逻辑乘 C.异或 D.与非运算 17. 有关算术右移中,说法正确的是 。

A.数据右移1位,最高位用0补充 B.数据右移1位,最高位用1补充

C.数据右移1位,最高位用原最低位补充 D.数据右移1位,最高位用原最高位补充 18. 有关逻辑右移中,说法正确的是 。

A.数据右移1位,最高位用0补充 B.数据右移1位,最高位用1补充

C.数据右移1位,最高位用原最低位补充 D.数据右移1位,最高位用原最高位补充 19. 加/减法器做减法运算使用的方法是 。

A.用减法器实现被减数减去减数 B.从被减数中减去减数后求反 C.将减法转化为补码的加法运算 D.根据减数形式选择一种适当的方法 20. 关于浮点数加减法以下论述正确的是 。

A.对阶时较小的数进行左移 B.对阶时小阶向大阶对齐 C.对阶时大阶向小阶对齐

19

D.对阶时较大的数进行左移 21. 若寄存器中存放的是数据的 ,则经过一次算术右移操作后,结果相当于原来的

数除以2。

A.原码 B.反码 C.补码 D.无符号数

二、填空题

1. 8位补码定点整数所能表示的绝对值最大的负数(即最负的数)为 A 。 2. 8位二进制补码表示的最小值为 A ,最大值为 B 。

3. 二进制数X的真值为-0.1101B,其原码表示为 A ,补码表示位 B ,反码表示为

C 。

4. 补码一位乘法运算法则通过判断乘数最未位yn和补充位yn+1的值决定下一步操作,当

ynyn+1= A 时,执行部分积加[-x]补,再右移一位,当ynyn+1= B 时,执行部分积加[x]补,再右移一位。

5. 在浮点加法运算中,主要的操作内容及步骤是 A 、 B 、 C 。 6. 完成浮点加法或减法时,需要进行对阶、求和、规格化和舍入等步骤,在对阶时,使

A 阶向 B 阶看齐,使小阶的尾数向 C 移位,每 D 移一位,其阶码加1,直到两数的阶码相等为止。

7. 两个用n+1位(包括符号位)原码表示的数,在机器中作一位乘法运算时,需要重复

进行 A 次 B 操作和 C 操作,才能得到最后乘积,而符号位需要D 。 8. 浮点数的编码表示通常由 A 和 B 两部分组成。 9. 浮点数中尾数用补码表示时,其规格化的特征是 A 。 10. ASCII码用 A 个二进制位表示,共有 B 种字符。 11. 变形补码判断溢出的条件是 A 。 12. 运算器的基本功能是实现 A 和 B 运算。

13. 运算器组成除了加法器外,还应有 A 、 B 、 C 、 D 和 E 。 14. 现代计算机的运算器一般通过总线结构来组织。按其总线数不同,大体有 A 、 B 和 C 三种形式。其中 D 操作速度慢, E 操作速度最快。 15. 内部总线是指 A 内部连接各逻辑部件的一组 B ,它用 C 或 D 来实现。

16. 浮点运算器由 A 和 B 组成,它们都是 C 运算器。 D 只要求能执

行 E 运算,而 F 要求能进行 G 运算。 17. 采用双符号位的方法进行溢出检测时,若运算结果中两个符号位 A 则表明发生了溢

出。若结果的符号位为 B 时,表示发生正溢出;为 C 时,表示发生负溢出。

18. 在减法运算中,正数减 A 数可能产生溢出,此时的溢出为 B 溢出;负数减

C 数可能产生溢出,此时的溢出为 D 溢出。

19. 原码一位乘法中,符号位与数值位 A ,运算结果的符号位等于 B 。

20. 原码加减交替除法的算法中,当余数为正时,商为 A ,余数 B 一位, C 除

数。

21. 机器码1.0000在原码表示法中表示为 A ,在反码表示法中表示为 B ;在补码

表示法中,表示为 C 。

22. 十六进制数(3A.4)的二进制形式为 A ,八进制形式为 B ,十进制形式为

C 。

23. 变形补码形式中,判断是否溢出的条件是 A 。

24. 移码表示法的主要用途是:表示_ A _ _数的阶码E,以便于比较两个_ B_ _的大小和_

20