按位取反操作_按位取反末尾加一

按位取反操作_按位取反末尾加一编程时:~1输出结果为-2,~(-5)的输出结果为4,很是疑惑,通过查阅资料终于明白。首先~是取反操作,计算机存储时是按照补码存储。 ~1= -2计算步骤: 1的二进制表示——————————–00000001 按位取反—————————————-11111110

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

编程时: ~1 输出结果为 -2 ,~(-5)的输出结果为 4,很是疑惑,通过查阅资料终于明白。

首先~是取反操作,计算机存储时是按照补码存储。

 

~1 =  -2

计算步骤:

 1的二进制表示——————————–0000 0001

 按位取反—————————————-1111 1110   (计算机以补码形式存储,所以要求11111110的补码)

 求补码——————————————-1000 0010(11111110除符号位,其他位取反加一)

因此 ~1 =-2

再看负数取反操作 ~(-5)= 4

-5 的二进制表示 —————————————–1000 0101 (求补码)

-5的补码 —————————————————1111 1011

按位取反 —————————————————0000 0100 (等于4)

正整数的补码还是正整数的二进制表示,负整数的补码除符号位其他位取反加一,计算机内都以补码的形式存储

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170463.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号