黑马程序员技术交流社区
标题:
关于按位取反的问题
[打印本页]
作者:
任振铭
时间:
2015-9-16 22:19
标题:
关于按位取反的问题
位运算~6=7,这道题不太理解,老师的讲解中涉及到了原码反码和补码,具体思路谁能告知一二?
作者:
1406046710
时间:
2015-9-17 11:56
~ 是一元运算法,对数据的每个二进制位取反,即把1变为0,把0变为1。
①原码:就是符号位加上真值的绝对值, 即用第一位表示符号, 其余位表示值.
②反码:就是原码取反,正数反码就是本身,负数的反码就是在原码基础上符号位不变,其余位取反。
③补码:正数补码就是其本身,负数补码是在其原码基础上,符号位不变其他位取反在+1.
例如 6原码: 00000110 反码(按位取反): 11111001
-7原码 : 10000111 反码(按位取反) : 11111000 补码:11111001
所以6~=-7
作者:
任振铭
时间:
2015-9-18 23:03
1406046710 发表于 2015-9-17 11:56
~ 是一元运算法,对数据的每个二进制位取反,即把1变为0,把0变为1。
①原码:就是符号位加上真值的绝对值 ...
谢谢了,你说的很详细
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2