2016上半年数据库系统工程师上午试题

试题(3)
如果“2X”的补码是“90H”,那么X的真值是:
A:72
B:-56
C:56
D:111
答案:B

解析:这是一道有关原码、反码、补码的综合问题,如果不了解的话建议大家先去学习一下,然后再过来看解析可能会更容易理解。这里给出一些简单的定义:

原码:原码就是二进制的最高位为符号位,正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

反码:正数的反码与其原码相同;负数的反码是对其各位数逐个取反,符号位保持为1。

补码:符号位不变,正数的补码与其原码、反码一致,负数的补码为其反码加1。

有了这些概念的基础,咱们就对这道题进行分析吧~

1.“90H”即十六进制数16,化为十进制为:9×16的1次方+0×16的零次方=144;

2.十进制数144化为二进制为:10010000,最高位为1,所以该补码为负数(因为无论是正数还是负数,在转成补码的过程中其符号位一直都未发生改变,所以可以判断该补码为负数,即其对应的原码也为负数。其实分析到这里也可以选出答案啦…);

3.上面分析得到补码为:10010000且为负数,所以可知其反码为:10001111(负数的补码为其反码加1,10001111加1即为10010000);

4.根据反码:10001111可得原码:11110000(符号位不变,负数的反码为其原码按位逐个取反,同理这里逆推回去:根据反码得到原码);

5.得到原码:11110000,化为十进制位(注意!!!原码最高位表示符号位!):-(2的6次方+2的5次方+2的4次方)= -(64+32+16)= -112;

6.所以2X= -112,即X= -56。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值