设为首页 加入收藏

TOP

2.12.5 移位运算符(>)
2013-10-12 09:59:05 来源: 作者: 【 】 浏览:249
Tags:2.12.5移位 运算 >

2.12.5 移位运算符(<<和>>)

左移和右移是把整数作为二进制位序列,求出把这个序列左移若干位或者右移若干位后得到的序列。它们的一般形式为:x<<n或x>>n(x是要被移位的量;n是要移动的位数)。

左移运算规则是将x 的二进制位全部向左移动n位,将左边移出的高位舍弃,右边空出的低位补0。右移运算是将x 的二进制位全部向右移动n 位,将右边移出的低位舍弃,左边高位空出要根据原来量符号位的情况进行补充。对无符号数则补0;对有符号数,若为正数则补0,若为负数则补1。

例如,设a=5,则:

(1)b = a<<3 即b = 0000,0101<<3 = 0010,1000 = 40。

(2)c = a>>2即c = 0000,0101>>2 = 0000,0001 = 1。

另外,左移运算等效于将整数值乘以2的幂;右移运算等效于将整数值除以2 的幂,幂的大小即为左移或右移的位数。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2.10.4 共用体 下一篇3.3.1 启动与退出Emacs

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: