练习题2.22

练习题2.22_第1张图片

答案如下:

练习题2.22_第2张图片

-------------------------------------------------------------------------------------------------------

答案分析:

我觉得这里的截取都是进行在二进制和二进制补码等的基础上的运算。

先说下原码、反码、补码:(取自计算机导论)

【例】求+57和-57的原码、反码和补码

无符号十进制数57的二进制表示形式为111001

+57的原码、反码、补码相同;

-57的原码表示为10111001;

-57的反码表示为11000110(负数的反码,符号位不变,数值位和原码数值位取反)

-57的补码表示为11000111(负数的补码在其反码的末尾+1)

-----------------------------------------------------------------------------------------------------------

对于十六进制,从K为截取到M位就是把K位的前(K-M)位舍去,剩下的M位即为所求结果。

对于无符号数值来说,也是这样。

-------------------------------------------------------------------------------------------------------------

下面是对本题二进制补码的分析:


OX0的二进制补码:0即:0000  截断到三位:000   即十进制0

OX3的二进制补码:3即:0011  截断到三位:011  即十进制3

因为三位数是0~7,下面的数值

oX8的二进制补码:-8即:1000   截断到三位:000  即十进制0

OXA的二进制补码:-6即:1010   截断到三位:010  即十进制2

OXF的二进制补码:-1即1111  截断后就是111?即十进制-1???

------------------------------------------------------------------------------------------------------------


                              



你可能感兴趣的:(练习题2.22)