傻大方摘要:【计算机|计算机组成与系统结构课后答案全清华大学出版社袁春风主编( 二 )|组成|系统|结构|课后|答案|清华】9、(78.75)10 = (0100 1110.11) 2假定机器数为 8 位(1 位符号 ,7 位数值) , 写出下列各二进制数的原码和补码表示+0.1001 , -0.1001 , +1.0 , -1.0 ,+0.010100 , -0.01...
按关键词阅读: 课后 系统 答案 计算机 组成 结构 主编 春风
9、(78.75)10 = (0100 1110.11) 2假定机器数为 8 位(1 位符号 ,7 位数值) , 写出下列各二进制数的原码和补码表示+0.1001 , -0.1001 , +1.0 , -1.0 ,+0.010100 , -0.010100 , +0 , -0参考答案:原码补码+0.1001:0.10010000.1001000-0.1001:1.10010001.0111000+1.0:溢出溢出-1.0:溢出1.0000000+0.010100:0.01010000.0101000-0.010100:1.01010001.1011000+0:0.00000000.0000000-0:1.00000000.0 。
10、000000假定机器数为 8 位(1 位符号 ,7 位数值) , 写出下列各二进制数的补码和移码表示+1001 , -1001 ,+1 , -1 ,+10100 , -10100 , +0 , -084214.参考答案:OO移码01110111补码+1001:-001 :5.-0100 :011011006.已知x补 , 求x(1) x补=1.1100111(2) x补(3)凶补=0.1010010(4) x补参考答案:(1)x补=1.1100111x =-0.0011001B(2)x补x = - -28(3)x补=0.1010010x =+0.101001B(4)x补x = - 101101B = - 457.假定一台 。
11、32位字长的机器中带符号整数用补码表示 , 浮点数用IEEE 754标准表示 , 寄存器 R1和R2的内容分别为 R1 : 0000108BH , R2: 8080108BH 。
不同指令对寄存器进行不同的操作 ,因而 , 不同指令执行时寄存器内容对应的真值不同 。
假定执行下列运算指令时 , 操作数为寄存器R1和R2的内容 , 贝U R1和R2中操作数的真值分别为多少?(1) 无符号数加法指令(2) 带符号整数乘法指令(3) 单精度浮点数减法指令参考答案:R1 = 0000108BH = 0000 0000 0000 0000 0001 0000 1000 1011bR2 = 8080108BH = 1000 0000 1 。
【计算机|计算机组成与系统结构课后答案全清华大学出版社袁春风主编】12、000 0000 0001 0000 1000 1011b(1)对于无符号数加法指令 ,R1和R2中是操作数的无符号数表示 , 因此 , 其真值分别为 R1:108BH, R2 : 8080108BH 。
(2) 对于带符号整数乘法指令 , R1和R2中是操作数的带符号整数补码表示 , 由最高位可知 , R1为正数 , R2为负数 。
R1的真值为+108BH, R2的真值为 -0111 1111 0111 1111 1110 1111 01110100b + 1b) = -T7FEF75H 。
(3) 对于单精度浮点数减法指令 , R1和R2中是操作数的IEEE754单精度浮点数表示 。
在IEEE754标准中 , 单精度浮点数的位数为3 。
13、2位 , 其中包含1位符号位 , 8位阶码 , 23位尾数 。
由R1中的内容可知 , 其符号位为0,表示其为正数 , 阶码为0000 0000 , 尾数部分为0000000 0001 0000 1000 1011 , 故其为非规格化浮点数 , 指数为-26 , 尾数中没有隐藏的 1,用十六进制表示尾数为 +0.002116H , 故R1表示的真值为+0.002116H X10-126 。
由R2中的内容可知 , 其符号位为1 , 表示其为负数 , 阶码为0000 0001 ,尾数部分为0000000 0001 0000 1000 1011 , 故其为规格化浮点数 , 指数为 1 -27 = -126 , 尾数中有隐藏的-1261,用十六进制表示尾数为 -1.00 。
14、2116H , 故R2表示的真值为 -1.002116H 10&假定机器M的字长为32位 , 用补码表示带符号整数 。
下表第一列给出了在机器M上执行的C语言程序中的关系表达式 , 请参照已有的表栏内容完成表中后三栏内容的填写 。
关系表达式运算类型结果说明0 = 0U无符号整数100 0B = 00 0B- 00 0B(0)-1 -有符号整数1011 1B (231 - 1) 100 062-(unsigned)- -无符号整数0011 1B (231 -1) 100 0B ( -31)有符号整数111 1B ( -) 11 10B ( -2)无符号整数1323211 1B (2-) 11 - 10B (2-2 。
15、)9以下是一个 C语言程序 , 用来计算一个数组a中每个元素的和 。
当参数 len为0时 , 返回值应该是0 , 但是在机器上执行时 , 却发生了存储器访问异常 。
请问这是什么原因造成的 , 并说明 程序应该如何修改 。
1float sum_eleme nts(float a, un sig ned len)23int i;
4float result = 0;
56for (i = 0;
i 24);
int func2(unsigned word) return ( (int) word v 24;
假设在一个32位机器上执行这些函数 , 该机器使用二进制补码表示带符号整数 。
无符号数采用逻辑移位 , 带符号整数采用算术移位 。
请填写 。
16、下表 , 并说明函数funci和func2的功能 。
Wfunc1(w)func2(w)机器数值机器数值机器数值0000 007FH1270000 007FH+1270000 007FH+1270000 0080H1280000 0080H+128FFFF FF80H-280000 00FFH2550000 00FFH+255FFFF FFFFH-0000 0100H2560000 0000H00000 0000H0函数funci的功能是把无符号数高 24位清零(左移24位再逻辑右移24位) , 结果一定是正的有符号数;而函数 func2的功能是把无符号数的高24位都变成和第25位一样 , 因为左移 24位后 。
17、进行算术右移 , 高 24位补符号位(即第 25位) 。
4填写下表 , 注意对比无符号数和带符号整数的乘法结果 , 以及截断操作前、后的结果 。
模式xyxy (截断前)xXy (截断后)机器数值机器数值机器数值机器数值无符号数11060102001100121004二进制补码110010+2111100-4100-无符号数0011111700011171117二进制补码001+1111-111111-111-无符号数11171117110001490011二进制补码111-111-000001+1001+15.以下是两段 C语言代码 , 函数 arith()是直接用C语言写的 , 而 optarith()是对arit 。
稿源:(未知)
【傻大方】网址:/a/2021/0820/0023837362.html
标题:计算机|计算机组成与系统结构课后答案全清华大学出版社袁春风主编( 二 )