C#移位运算(左移和右移)

简介: C#是用<<(左移) 和 >>(右移) 运算符是用来执行移位运算。 左移 (<<):将第一个操作数向左移动第二个操作数指定的位数,空出的位置补0。左移相当于乘. 左移一位相当于乘2;左移两位相当于乘4;左移三位相当于乘8。 x<<1= x*2 x<<2= x*4 x<<3= x*8 x<&lt

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。
 x>>1= x/2 
 x>>2= x/4 
 x>>3= x/8 
 x>>4=x/16

因为位移比乘除速度快.对效率要求高,而且满足2的幂次方的乘除运方,可以采用位移的方式进行。


 

相关文章
|
存储 C#
C# 逻辑位运符及运算原理 按位操作二进制
C# 逻辑位运符及运算原理 按位操作二进制
C#中算数运算符及逻辑运算
C#中算数运算符及逻辑运算
91 0
|
存储 程序员 C#
C#的注释、快捷键、字符和运算
C#的注释、快捷键、字符和运算
310 0
|
C# 计算机视觉
Win8Metro(C#)数字图像处理--2.27图像加法运算
原文:Win8Metro(C#)数字图像处理--2.27图像加法运算  [函数名称] 图像加法函数AddProcess(WriteableBitmap src, WriteableBitmap addSrc)...
1036 1
|
Java 测试技术 C#
一起谈.NET技术,关于C#线程,线程池和并行运算的简单使用和对比
前言:看了书上两个使用C#4.0并行编程的demo,又对照以前收藏的网上几篇讲述线程池的雄文,一并整理,写个示例总结一下。写这篇文章的时候,发现关于线程的好几个基础的重要的知识点自己都不熟悉,而且可能习惯性认知浅薄,所以痛苦的无以复加,不知道到底要说什么。
1852 0
|
C# 计算机视觉
Win8Metro(C#)数字图像处理--2.29图像除法运算
原文:Win8Metro(C#)数字图像处理--2.29图像除法运算  [函数名称] 图像除法函数DivisionProcess(WriteableBitmap src, WriteableBitmap di...
851 0
|
C# 计算机视觉
Win8Metro(C#)数字图像处理--2.28图像乘法运算
原文:Win8Metro(C#)数字图像处理--2.28图像乘法运算  [函数名称] 图像乘法函数MultiplicationProcess(WriteableBitmap src, WriteableBit...
776 0