黑马程序员技术交流社区
标题:
移位符>>和>>>区别是什么?
[打印本页]
作者:
liuch111
时间:
2015-7-11 17:30
标题:
移位符>>和>>>区别是什么?
什么时候用>>> 移位符
作者:
zhwfa1991
时间:
2015-7-11 17:39
>>带符号右移和>>>不带符号右移,带符号位的右移,高位补符号位,也就是正数补0,负数补1,不带符号位的补0
作者:
不怕黑人
时间:
2015-7-11 17:58
右移有两种:
右移运算符>>(有符号)
用来将一个数的各二进制位全部右移若干位.例如:a = a>>2,使a的各二进制位右移两位,移到右端的低位被舍弃,最高位则移入原来高位的值.
如:a = 00110111,则a>>2=00001101,b=11010011,则b>>2 = 11110100
右移一位相当于除2 取商,而且用右移实现除法比除法运算速度要快
无符号右移运算符>>>
用来将一个数的各二进制位无符号右移若干位,与运算符>>相同,移出的低位被舍弃,但不同的是最高位补0,如a = 00110111,则a>>>2 = 00001101,b=11010011,则b>>>2 = 00110100
作者:
e咕噜
时间:
2015-7-11 22:20
1、当移位的数是正数的时候,>> 和>>>效果都是一样的;
2、当移位的数是负数的时候,>>将二进制高位用1补上,而>>>将二进制高位用0补上,这就导致了>>>将负数的移位操作结果变成了正数(因为高位用0补上了)。
作者:
gongyanfa123
时间:
2015-7-11 22:33
无符号右移运算符>>> , 右移运算符>>(有符号)
作者:
GiveUp
时间:
2015-7-11 22:41
学习了。。。真忘了
作者:
yongaidongbing
时间:
2015-7-11 23:13
>> 什么时候都能用除了右移没任何影响 >>>除了右移之外还去除了负(—)号 移完都成为正
作者:
莱克神
时间:
2015-7-11 23:26
受教了,原来如此
作者:
CLTDEZHUCE
时间:
2015-7-11 23:51
>>带符号右移>>>不带符号右移
作者:
时光无痕
时间:
2015-7-12 00:00
>>>到底有什么优势啊,正数左移都一样,唯一的就是负数了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2