黑马程序员技术交流社区

标题: 新人求教:关于二进制移位运算、正负数转换、反码与补码 [打印本页]

作者: Jessrabbit    时间: 2016-2-21 10:34
标题: 新人求教:关于二进制移位运算、正负数转换、反码与补码
RT,关于左移<< 和右移>>是对应的数乘以2或除以2,什么反码补码,楼主一直没搞太明白。求大神解答
作者: 就是我    时间: 2016-2-21 11:38
一个二进制数比如说0b0000 0010,实际上就是十进制的2,你讲这个数左移1位,
它会将首个0移除,其他7位都向左以一位,空出来的末尾补上一个0,就成了0b0000 0100,也就是4了,相当于*2
右移就是去掉第八位的0,最后会变成0b0000 0001,右移相当于/2
反码补码是不同的数据表示方式,不用管它,只要知道怎么计算就ok了
作者: Jessrabbit    时间: 2016-2-21 14:16
就是我 发表于 2016-2-21 11:38
一个二进制数比如说0b0000 0010,实际上就是十进制的2,你讲这个数左移1位,
它会将首个0移除,其他7位都向左以 ...

好的谢谢
作者: huang_bing_hua    时间: 2016-2-22 10:02
[quote]Jessrabbit 发表于 2016-2-21 10:34
RT,关于左移

题目:byte a=130,求a的值,用到原反补码的知识




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2