C语言的移位运算

转载 2012年03月29日 16:59:38

1.左移

无论是有符号数还是无符号数,全部采用逻辑左移,补位加0

2.右移

采用算术右移,符号位不变,符号位的值为1,则补位加1;反之,则补位加0

无论左移还是右移,当移动的长度超过该类型的2进制位数,则取移位的位数和类型的位数的余数进行移位

算术右移和逻辑右移的区别是:算术右移不右移符号位,即最高位,右移后前补0还是1取决于符号位的值;逻辑右移执行时将移动符号位,右移后前补0

相关文章推荐

[深入理解计算机系统]C语言中的位运算、逻辑运算和移位运算

位运算 C语言中的位运算

C语言中的移位操作技巧

  • 2017-05-10 17:13
  • 32KB
  • 下载

C语言移位(转)

C语言中的移位操作,内容不多。不过有些地方你不注意,就疏忽了。 先做两个小题先。     (1)unsigned char x=3;         x>1是多少?  ...

C语言的移位操作

一起talk C栗子吧(第三十三回:C语言实例--巧用移位)

各位看官们,大家好,上一回中咱们说的是最大公约数的例子,这一回咱们说的例子是:巧用移位。闲话 休提,言归正转。让我们一起talk C栗子吧! 我们在第十九回中说过位操作的内容,并且举了一些简单...

C语言的循环移位操作

C语言移位运算符

位移位运算符是将数据看成二进制数,对其进行向左或向右移动若干位的运算。位移位运算符分为左移和右移两种,均为双目运算符。第一运算对象是移位对象,第二个运算对象是所移的二进制位数。   位移位运算符的运...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)