Shell 中位运算符的应用
位运算符通常用于整数间运算,位运算符是针对整数在内存中二进制数据流中的位进行操作。
例如:表达式“2>>1”表示将整数的二进制数2在内存中的二进制数据流向左移动一位。
|
运算符 |
名称 |
举例 |
解释value的值 |
|
<< |
左移 |
value=4>>2 |
4左移2位,value值为16 |
|
>> |
右移 |
value=8<<2 |
8右移2位,value值为2 |
|
& |
按位与 |
value=8&&4 |
8按位与4,value值为0 |
|
| |
按位或 |
value=8|4 |
8按位或4,value值为12 |
|
~ |
按位非 |
value=~8 |
按位非8,value值为-9 |
|
^ |
按位异或 |
value=10^3 |
10按位异或3,value值为9 |
注: 对于按位非,若求“~a”则结果为-(a+1)举一个详细例子:求“~8”分析由于计算机通常
用补码进行符号运算,[[x]补]补=[x]所以
则8的二进制为00001000 求非为11110111
求反码为1001000求补码为1001001所以最后的结果为1001001,~8 即为-9。
本文阐述了Shell中位运算符的功能与应用,包括左移、右移、按位与、按位或、按位非与按位异或运算,并通过实例详细解释了这些运算符的使用方法。
&spm=1001.2101.3001.5002&articleId=6817830&d=1&t=3&u=10e9685fc22b4aa5b84a595e4d8f538f)
4242

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



