学历改变命运
24小时客服:4008135555/010-82335555
当前位置:首页> 理学 > 06年4月考前串讲计算机组成原理第二章(2)

06年4月考前串讲计算机组成原理第二章(2)

2006年12月15日    来源:   字体:   打印
查分预约

  五、定点数的乘除法:

  (2001年)请用补码一位乘中的 Booth 算法计算 x?y=?x=0101,y=-0101,列出计算过程。

  「分析」:补码一位乘法中的Booth算法是一种对带符号数进行乘法运算的十分有效的处理方法,采用相加和相减的操作计算补码数据的乘积。做法是从更低位开始,比较相临的数位,相等时不加不减,只进行右移位操作;不相等(01)时加乘数,不相等(10时)相减乘数,再右移位;直到所有位均处理完毕

  「答案」:

  x=0101,x补=0101, -x补=1011,y=-0101,y补=1011

  循环   步骤    乘积(R0 R1 P)

  0     初始值   0000 1011 0

  1     减0101   1011 1011 0

  右移1位   1101 1101 1

  2     无操作   1101 1101 1

  右移1位  1110 1110 1

  3     加0101   0011 1110 1

  右移1位   0001 1111 0

  4     减0101   1100 1111 0

  右移1位   1110 0111 1

  所以结果为[x?y]补=11101111,真值为-00011001,十进制值为-25.

  (2002年)已知x=0011, y=-0101,试用原码一位乘法求xy=?请给出规范的运算步骤,求出乘积。

  「分析」:原码一位乘法中,符号位与数值位是分开进行计算的。运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或。原码一位乘法的每一次循环的操作是更低位为1,加被乘数的绝对值后右移1位;更低位为0,加0后右移1位。几位乘法就循环几次。

  「答案」:

  x原=00011,y原=10101,|x|=0011, |y|=0101结果的符号位1 0=1

  循环    步骤     乘积(R0 R1)

  0      初始值    0000 0101

  1      加0011    0011 0101

  右移1位   0001 1010

  2      加0     0001 1010

  右移1位    0000 1101

  3      加0011    0011 1101

  右移1位    0001 1110

  4      加0      0001 1110

  右移1位    0000 1111

  所以结果为-00001111

  (2003年)32.用 Booth 算法计算7×(-3)。要求写出每一步运算过程及运算结果。

  参考2001年试题

  (2004年)32. 用原码的乘法方法进行 0110×0101 的四位乘法。要求写出每一步运算过程及运算结果。

  参考2002年试题

  (2005年)32.用原码加减交替一位除法进行7÷2运算。要求写出每一步运算过程及运算结果。

  「答案」:

  7的原码0111,3的原码0011,结果符号是0 0=0

  原码加减交替除法求x/y的分步运算过程。

  循环   步骤    余数(R0 R1)

  0     初始值   0000 0111

  左移,商0    0000 1110

  1    减0011    1101 1110

  加0011,商0   0000 1110(0)

  左移1位     0001 1100

  2    减0011    1110 1100

  加0011,商0  0001 1100(0)

  左移1位     0011 1000

  3    减0011    0000 1000

  商1    0000 1000(1)

  左移1位  0001 0001

  4    减0011  1110 0001

  加0011,商0  0001 0001(0)

  左移1位    0010 0010

  R0右移1位 0001 0010

  所以,商是0010,即2;余数是0001,即1.

  由上可见,定点数乘除法计算题每年必考(10分),同学除了掌握已经考过的三种题型外,还要特别注意原码恢复余数除法的计算过程,教材P44页例题:计算7/2.我们利用这种方法计算一下7/3.

  (2000年)1.在原码一位乘中,当乘数Yi为1时,( )。

  A.被乘数连同符号位与原部分积相加后,右移一位

  B.被乘数绝对值与原部分积相加后,右移一位

  C.被乘数连同符号位右移一位后,再与原部分积相加

  D.被乘数绝对值右移一位后,再与原部分积相加

  「分析」:原码一位乘法中,符号位与数值位是分开进行计算的。运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或。数值位相乘时,当乘数某位为1时,将被乘数绝对值与原部分积相加后,右移一位。

  「答案」:B

  (2001年)7.原码乘法是( )。

  A.先取操作数绝对值相乘,符号位单独处理

  B.用原码表示操作数,然后直接相乘

  C.被乘数用原码表示,乘数取绝对值,然后相乘

  D.乘数用原码表示,被乘数取绝对值,然后相乘

  「分析」:原码一位乘法中,符号位与数值位是分开进行计算的。运算结果的数值部分是乘数与被乘数数值位的乘积,符号是乘数与被乘数符号位的异或。

  「答案」:A

  8.原码加减交替除法又称为不恢复余数法,因此( )。

  A.不存在恢复余数的操作

  B.当某一步运算不够减时,做恢复余数的操作

  C.仅当更后一步余数为负时,做恢复余数的操作

  D.当某一步余数为负时,做恢复余数的操作

  「分析」:在用原码加减交替法作除法运算时,商的符号位是由除数和被除数的符号位异或来决定的,商的数值是由除数、被除数的绝对值通过加减交替运算求得的。由于除数、被除数取的都是绝对值,那么更终的余数当然应是正数。如果更后一步余数为负,则应将该余数加上除数,将余数恢复为正数,称为恢复余数。

  「答案」:C

  (2002年)5.原码乘法是指( )。

  A.用原码表示乘数与被乘数,直接相乘

  B.取操作数绝对值相乘,符号位单独处理

  C.符号位连同绝对值一起相乘

  D.取操作数绝对值相乘,乘积符号与乘数符号相同

  答案:B

  六、逻辑运算:

  (2005年)5.已知一个8位寄存器的数值为11001010,将该寄存器小循环左移一位后,结果为( )。

  A.01100101     B.10010100   C.10010101   D.01100100

  「分析」:

  移位种类 运算规则

  算术左移 每位左移一位,更右位移入0,更高位移出进入标志寄存器C位

  算术右移 每位右移一位,更高位符号复制,更低位移出进入标志寄存器C位

  逻辑左移 每位左移一位,更右位移入0,更高位移出进入标志寄存器C位

  逻辑右移 每位右移一位,更右位移入0,更低位移出进入标志寄存器C位

  小循环左移 每位左移一位,更高位进入更低位和标志寄存器C位

  小循环右移 每位右移一位,更低位进入更高位和标志寄存器C位

  大循环左移 每位左移一位,更高位进入标志寄存器C位,C位进入更低位

  大循环右移 每位右移一位,更低位进入标志寄存器C位,C位进入更高位

  「答案」:C

  七、浮点数运算:

  (2001)6.浮点加减中的对阶的( )。

  A.将较小的一个阶码调整到与较大的一个阶码相同

  B.将较大的一个阶码调整到与较小的一个阶码相同

  C.将被加数的阶码调整到与加数的阶码相同

  D.将加数的阶码调整到与被加数的阶码相同

  「分析」:浮点加减法中的对阶是向较大阶码对齐,即将较小的一个阶码调整到与较大的一个阶码相同。

  「答案」:A

  注意有关浮点数的运算

  例:用浮点数运算步骤对56+5进行二进制运算,浮点数格式为1位符号位、5位阶码、10位尾码,基数为2.

  「答案」:

  5610=1110002=0.111000×26  510=1012=0.101×23

  ① 对阶:0.101×23=0.000101×26

  ② 尾数相加:0.111000+0.000101=0.111101

  ③ 规格化结果:0.111101×26

  ④ 舍入:数据己适合存储,不必舍入

  ⑤ 检查溢出:数据无溢出。

  第二章一般不考简答题

新人有礼
关闭