问题
单项选择题
已知[X/2]补=0C6H,计算机的机器字长为8位二进制编码,则[X]补=______。
A.8CH
B.18H
C.0E3H
D.0F1H
答案
参考答案:A
解析:[要点解析]
在计算机中,补码是最适合进行数字加减运算的数字编码,以便符号位也能作为数值的一部分参与运算。补码加法的运算法则是:和的补码等于补码求和。补码减法的运算法则是:差的补码等于被减数的补码加上减数取负后的补码。负数补码表示的实质是将负数映射到正数域,所以可将减法运算转化为加法运算。在补码加减运算中,符号位和数值位一样参加运算,无须做特殊处理。
对某数据进行乘2运算相当对该数据二进制数作不带符号位逻辑左移一位的运算,对某数据进行除2运算相当对该数据二进制数作不带符号位逻辑右移一位的运算。本试题中,由于[X/2]补=0C6H=(1100 0110)2,因此求解[X] 补需将(1100 0110)2作不带符号位左移一位的运算,其结果是(1000 1100)2=8CH。
同理,如果对[X/2]补=0C6H求解[X/4]补,则需将(1100 0110)2作不带符号位右移一位的运算,其结果是(1010 0011)2=0A3H。