假定有4个整数用8位补码分别表示r1=FEH,r2=F2H,r3=90H,r4=F8H,若将运算结果存放在一个8位寄存器中,则下列运算中会发生溢出的是()。
r1×r2
r2×r3
r1×r4
r2×r4
本题的真正意图是考查补码的表示范围,而不是补码的乘法运算。若采用补码乘法规则计算出4个选项,是费力不讨好的做法,而且极容易出错。
8位补码所能表示的整数范围为-128~+127。将4个数全部转换为十进制:r1=-2,r2=-14,r3=-112,r4=-8,得r2×r3=1568,远超出了表示范围,发生溢出。
【提示】解题时,尤其是对于这种看似很复杂的题,不要轻易动笔,要弄清题目考查的真正意图,而尽可能地“走捷径”,以免绕进命题者设计的死胡同。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
本题的真正意图是考查补码的表示范围,而不是补码的乘法运算。若采用补码乘法规则计算出4个选项,是费力不讨好的做法,而且极容易出错。
8位补码所能表示的整数范围为-128~+127。将4个数全部转换为十进制:r1=-2,r2=-14,r3=-112,r4=-8,得r2×r3=1568,远超出了表示范围,发生溢出。
【提示】解题时,尤其是对于这种看似很复杂的题,不要轻易动笔,要弄清题目考查的真正意图,而尽可能地“走捷径”,以免绕进命题者设计的死胡同。