黑马程序员技术交流社区
标题:
关于位运算小疑问
[打印本页]
作者:
由然自美
时间:
2013-12-28 20:25
标题:
关于位运算小疑问
本帖最后由 由然自美 于 2013-12-29 20:34 编辑
-10>>3
这个结果是多少呢?
作者:
潘金锋
时间:
2013-12-28 20:54
负整数在底层是以补码表示的,具体如下:
0000 1010 -->10
1111 0101 -->先按位取反
1111 0110 -->再加1 即为-10的底层表示
1111 0 -->左移三位
1111 1110 -->高位以1补充
1111 1101 -->再按位取反,符号位不变
1000 0010 -->就是-2啦
作者:
潘金锋
时间:
2013-12-28 20:56
潘金锋 发表于 2013-12-28 20:54
负整数在底层是以补码表示的,具体如下:
0000 1010 -->10
1111 0101 -->先按位取反
其实符号位是变的,最后的值是2,因为其底层是补码,那么该值即为负数,即-2。
作者:
由然自美
时间:
2013-12-28 21:03
1000 0010 第一位只是符号位是吧,不参加运算,是这样的吧
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2