Chinaunix首页 | 论坛 | 博客
  • 博客访问: 801631
  • 博文数量: 104
  • 博客积分: 915
  • 博客等级: 下士
  • 技术积分: 2171
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-24 21:34
文章分类

全部博文(104)

文章存档

2018年(4)

2015年(14)

2014年(9)

2013年(56)

2012年(21)

分类: C/C++

2013-04-11 13:17:05


<< “左移”

将操作对象各二进制位全部左移指定的位数,移出的高位丢弃,空出的低位补0
eg:57 << 4 是指把 57 的各二进制位向左移动4位
0000 0000 0011 1001(十进制57)左移4位后为 0000 0011 1001 0000(十进制912)
注: 若左移时丢弃的高位不含 1,则每左移一位,相当于给该数乘以 2
>> “右移”
将操作对象各二进制位全部右移指定得位数,移出的低位丢弃,空出的高位
对于无符号数补0;

对于有符号数,右移时符号位将随同移动,空出的高位正数补0,负数补1
eg:57 << 4 是把 57 得各二进制数向右移动4位
0000 0000 0011 1001(十进制57)右移4位后为 0000 0000 0000 0011(十进制3)
注:每右移一位,相当于给该数除以2,并去掉小数
阅读(855) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~