当前位置:首页 > linux c 中左移 - 右移运算符介绍
左移运算符(<<)
将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。
例:a=a<<2将a的二进制位左移2位,右补0,如图所示。
a由5变成了20。若左移时舍弃的高位不包含1,则每左移一位,相当于该数乘以2。
a的值 a 的二进制形式 a<<1 a<<2
64 01000000 10000000 00000000
127 01111111 11111110 11111100
右称运算符(>>)
将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。
例如:a=a>>2将a的二进制位右移2位,如图所示。
左补0?还是补1?得看被移数是正还是负。
a由8变成了4。操作数每右移一位,相当于该数除以2。
左移运算符(<<)
将一个运算对象的各二进制位全部左移若干位(左边的二进制位丢弃,右边补0)。
例:a=a<<2将a的二进制位左移2位,右补0,如图所示。
a由5变成了20。若左移时舍弃的高位不包含1,则每左移一位,相当于该数乘以2。
a的值 a 的二进制形式 a<<1 a<<2
64 01000000 10000000 00000000
127 01111111 11111110 11111100
右称运算符(>>)
将一个数的各二进制位全部右移若干位,正数左补0,负数左补1,右边丢弃。
例如:a=a>>2将a的二进制位右移2位,如图所示。
左补0?还是补1?得看被移数是正还是负。
a由8变成了4。操作数每右移一位,相当于该数除以2。
总之对于二进制
左移一位就相当于乘以2,左移n位就是乘以2的n次方
右移一位就相当于除以2,右移n位就是除以2的n次方
总之对于二进制
左移一位就相当于乘以2,左移n位就是乘以2的n次方
右移一位就相当于除以2,右移n位就是除以2的n次方
共分享92篇相关文档