C#移位运算(左移和右移)
2014-01-08 09:48
211 查看
C#是用<<(左移) 和 >>(右移) 运算符是用来执行移位运算。
左移 (<<):将第一个操作数向左移动第二个操作数指定的位数,空出的位置补0。
左移相当于乘. 左移一位相当于乘2;左移两位相当于乘4;左移三位相当于乘8。
x<<1= x*2
x<<2= x*4
x<<3= x*8
x<<4= x*16同理, 右移即相反:
右移 (>>):将第一个操作数向右移动第二个操作数所指定的位数,空出的位置补0。
右移相当于整除. 右移一位相当于除以2;右移两位相当于除以4;右移三位相当于除以8。
因为位移比乘除速度快.对效率要求高,而且满足2的幂次方的乘除运方,可以采用位移的方式进行。
左移 (<<):将第一个操作数向左移动第二个操作数指定的位数,空出的位置补0。
左移相当于乘. 左移一位相当于乘2;左移两位相当于乘4;左移三位相当于乘8。
x<<1= x*2
x<<2= x*4
x<<3= x*8
x<<4= x*16同理, 右移即相反:
右移 (>>):将第一个操作数向右移动第二个操作数所指定的位数,空出的位置补0。
右移相当于整除. 右移一位相当于除以2;右移两位相当于除以4;右移三位相当于除以8。
x>>1= x/2 x>>2= x/4 x>>3= x/8 x>>4=x/16
因为位移比乘除速度快.对效率要求高,而且满足2的幂次方的乘除运方,可以采用位移的方式进行。
相关文章推荐
- Pull is not possible because you have unmerged ...
- CISCO交换机概览
- 攻击CISCO路由器
- 土人系列AS入门教程 -- 对象篇
- 土人系列AS入门教程--语法篇
- IIS漏洞整理大全
- ASP木马后门新思路
- IIS配置文件隐患
- 解决Default storage engine (InnoDB) is not available导致mysql无法启动的修改办法
- Run As Service runassrv.exe 详细参数第1/2页
- 土人系列AS入门教程--基础篇
- IIS访问ASP页面时报错The requested resource is in use.的解决办法
- WHOIS类的修改版
- 远程分析IIS设置
- sql with as用法详解
- 脚本中出现 window.open() access is denied - 拒绝访问 情况一则及分析
- c++类的隐式转换与强制转换重载详解
- .net中as和is之间的区别分析
- python类型强制转换long to int的代码
- 解决linux 出现如下报错:Another app is currently holding the yum lock;