问题
单项选择题
对9位补码操作数(A5)16进行两位算术右移的结果是 (19) 。
A.(D2)16
B.(52)16
C.(E9)16
D.(69)16
答案
参考答案:C
解析:[分析]
右移运算是将各二进制位右移2位,移到右端的低位被舍弃,对无符号数,高位补0。
例如,a=15时,a的值用二进制形式表示为00001111,舍弃低2位11,则a=00000011。
显然,某数右移一位就相当于这个数除以2,右移n位相当于除以2n。
对无符号数,右移时左边高位移入0;对于有符号的值,如果原来符号位为0(该数为正),则左边也是移入0。如果符号位原来为1(即负数),则左边移入0还是1,要取决于所用的计算机系统。移入0的称为“逻辑右移”,即简单右移;移入1的称为“算术右移”。
对9位补码操作数(A5)16,其二进制补码形式为:10100101,一次算术右移为 11010010,二次算术右移为11101001,十六进制形式为(E9)16。