带符号右移 >> 带符号左移<< 无符号右移>>> 没有无符号左移
在计算机中,不用+-来表示正负数,用最高位是0还是1来表示正负数,0表示正,1表示负
高位在左,低位在右,左移是乘,右移是除
1.带符号右移
>> 简算:[5/(2^2)=1]
正数例如 5>>2(正数高位补0)
首先写出5的二进制--->0000 0000 0000 0000 0000 0000 0000 0101
因为是正数,所以最高位为0,右移两位就是从最高位开始补2个0(左边加两个0)
即--->0000 0000 0000 0000 0000 0000 0000 0001,化为十进制结果为1[将右边红色的01去掉,在右边补两个0]
负数例如-5>>2(负数高位补1)
首先写出-5的二进制,因为是负数所以高位为1
1000 0000 0000 0000 0000 0000 0000 0101(原码)
然后写出-5的补码:保证符号为不变,其余位置去翻加一(从右往左开始,遇到第一个1之后的所有数取反)
1111 1111 1111 1111 1111 1111 111

本文详细介绍了带符号右移、带符号左移和无符号右移的概念,通过正负数的例子展示了移位过程,并通过计算说明了移位在计算机中的实际效果。总结指出,右移相当于除以2的幂次方,左移相当于乘以2的幂次方。
最低0.47元/天 解锁文章
4838

被折叠的 条评论
为什么被折叠?



