C# 位移运算

来源:互联网 发布:淘宝联盟赚钱靠谱吗 编辑:程序博客网 时间:2024/05/16 17:45


一:“<<”和“>>”运算符用于执行移位运算,分别称为左移位运算符和右移位运算符。对于X<<N和X>>N形式的运算,含义是将X向左或向右移动N位,得到的结果的类型与X相同。此处,X的类型只能是int,uint、long或ulong,N的类型只能是int,N的类型只能是int,或者显示转换为这些类型之一,否则变异程序时会出现错误。位移可以简单的理解为参数与2的幂进行运算

 

二:向左位移"<<",向左位移相当于进行乘法运算

 

向左位移,相当于当前参数乘以2的位移次方3<<1   等于 3*(2的一次方) 等于 3*23<<2   等于 3*(2的2次方)  等于 3*43<<3   等于 3*(2的3次方)  等于 3*83<<4   等于 3*(2的4次方)  等于 3*16

 

三:向右位移">>",向右位移相当于进行除法运算表

向左位移,相当于当前参数乘以2的位移次方16>>1   等于 16/(2的一次方) 等于 16/216>>2   等于 16/(2的2次方)  等于 16/416>>3   等于 16/(2的3次方)  等于 16/816>>4   等于 16/(2的4次方)  等于 16/16