关于按位取反计算

1的按位取反我是这样算出来的:1.获取1的二进制,使用四位二进制,为00012.对0001进行按位取反得到11103.因为计算机使用补码,所以我们要想办法计算1110这个... 1的按位取反我是这样算出来的:
1.获取1的二进制,使用四位二进制,为0001
2.对0001进行按位取反得到1110
3.因为计算机使用补码,所以我们要想办法计算1110这个值的补码
4.最高位符号位为1,表示负数,则反码为1001
5.最高位符号位为1,补码为反码+1,则补码为1010
6.得到按位取反后的值,1010 即为-2
但是-1的按位取反应该怎么算呢?如果将-1取绝对值再按上面这么计算的话,应该也是-2才对啊,但是-1的按位取反应该是0 。
谁能像我这样详细的列一下-1的按位取反步骤呢?并说明每一步的原因,非常感谢。
展开
 我来答
freeeeeewind
2015-09-24 · TA获得超过1万个赞
知道大有可为答主
回答量:3227
采纳率:94%
帮助的人:1431万
展开全部
-1的四位补码
  1. 因为-1是负数,最高位为1。

  2. 绝对值1的原码为 001

  3. 反码为110

  4. 补码=反码+1,即111

  5. 与符号并接在一起,得到-1的补码为 1 111

追问
也就是说,取绝对值的时候不对符号位做第三步的反码操作?正数和负数按位取反有什么根本上的区别吗?
追答
取反时不考虑符号位。符号位“正数为0,负数为为1”是“固定的”。
按补码规则:正数的补码就是真值的原码。也就是说,只有负数才有“原码-->反码-->补码=反码+1”过程。
观启智能
2025-03-09 广告
上海观启智能科技有限公司致力于打造一体化技术,我们为住宅和楼宇打造的自动化和控制解决方案,能够帮助用户实现一键式环境控制,这一解决方案集成了影音、照明、遮阳。T、安防、建筑管理系统(BMS)和HVAC等系统,可以为用户提供更高的舒适度、便利... 点击进入详情页
本回答由观启智能提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式