zoukankan      html  css  js  c++  java
  • Linux中Shell的算数运算符和位运算符用法笔记


    640?wx_fmt=png

    1、算数运算符

    算数运算符主要是加、减、乘、除、余、幂等常见的算术运算,以及加等、减等、乘等、除等、余等复合算术运算。

    注意:Shell只支持整数运算,小数部分会舍去。一般情况下算术运行需要个let命令一起来使用。注意除法运算,除数不能为0

    比如: 

    #常规运算符

    let 1+9 

    let 20-10

    let 2*5

    let 9/3

    let 10%4

    let 2**3

    #符合运算符

    x=8 x+=2 变量结果为 10,其余用法类似

    2、位运算符

    位运算是基于内存中二进制数据的运算,也就是基于位的运算。常见的位运算有左移运算、右移运算、按位与、按位或、按位非、按位异或等运算

    位元素的左移右移其实就是整数内存中的左右移动。左移<<,右移>>.

    比如十进制4在内存中排列如下:00000100

    用法:

    let "value=4<<2"

    echo ${value}

    输出:16

    let "value=4>>2"

    echo ${value}

    输出:1

    按位与运算(&)是将两个整数写出二进制形式,然后同位置相比较,只有对于位置的二进制值都为1结果才是1,否则0.比如:8&4

    00000100 #4

    00001000 #8

    00000000 #8&4结果 0

    按位或运算(|),将两个整数写出二进制形式,然后同位置相比较,只要对应的位置有1则结果就为1。比如:8|4

    00000100 #4

    00001000 #8

    00001100 #8|4结果12

    按异或运算将两个整数写出二进制形式,只要对应的位置同为1或者同为1结果就是0,否则为1。比如:10^3 来说

    00001010 #10

    00000011 #3

    00001001 #10^3 结果 9

    按位非(~)有快捷的公式进行计算 ~a 值位"-(a+1)"

    比如:let "value=~8"

    echo ${value}

    -9


  • 相关阅读:
    Juniper路由器
    Juniper交换机维护
    [转载]让你瞬间开悟的图片
    [转载]生命科学-人体生物磁场及特异作用
    NAS与SAN有什么区别?
    使用串口终端安装AIX操作系统
    xml与java代码相互装换的工具类
    mybatis思维导图(二)
    mybatis思维导图(一)
    Spring思维导图(AOP篇)
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351206.html
Copyright © 2011-2022 走看看