按位求反是怎么回事啊
发布网友
发布时间:2022-04-22 20:00
我来回答
共2个回答
热心网友
时间:2023-09-21 09:46
要弄懂这个运算符的计算方法,首先必须明白二进制数在内存中的存放形式,二进制数在内存中是以补码的形式存放的
另外正数和负数的补码不一样,正数的补码,反码都是其本身,既:
正数9(1001)在内存中存储为01001,必须补上符号位
补码为01001
反码为01001,其中前面加的0是符号位,负数的是1
负数 -1(10001,开头的1为符号位)在内存中存放为,11111
其中11111为其补码
反码为11110
负数的补码是:符号位不变,其余各位求反,末位加1 ,既11111
用负数的补码去求源码:符号位不变,末位减1,其余按位求反
反码是:符号位为1,其余各位求反,但末位不加1 ,既11110
也就是说,反码末位加上1就是补码
热心网友
时间:2023-09-21 09:46
这个很简单,首先十进制数7的2进制是1010,按位求反就是0101,二进制的101转换成10进制就是5,因此答案是5
过程
解:
(7)10=(1010)2
按位求反后得0101
(101)2=(5)10