第21课:数值计算

Posted 辉天子煜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第21课:数值计算相关的知识,希望对你有一定的参考价值。

    批处理里面的数值计算功能较弱,只能够进行整型计算,忽略浮点数的小数部分;同时数值计算的范围也受限于系统位数,对于目前较为常见的32位机来说,数值计算能处理的数值范围为0x80000000h~0x7FFFFFFFh,即-2147483648~+2147483647。
    数值计算需要使用set命令,具体格式为“set /a expression”。其中,expression代表计算表达式,计算表达式跟C语言里面的表达式基本上完全一致。set支持的运算符也跟C语言里面的一样,只是没有了増一减一。set支持的运算符及优先级排序如下:
=========================================
    ()                  - 分组
    ! ~ -               - 一元运算符(逻辑非、按位非、取负)
    * / %               - 算数运算符(乘、除得商、除得余数,即取余)
    + -                 - 算数运算符(加、减)
    << >>               - 逻辑移位(左移一位、右移一位)
    &                   - 按位“与”
    ^                   - 按位“非”
    |                   - 按位“或”
    = *= /= %= += -=    - 赋值
      &= ^= |= <<= >>=
    ,                   - 表达式分隔符(set可一次处理多个表达式)
=========================================
    我们知道,批处理中取变量的值是需要用%或者!的,而在set /a 中,直接用变量名称即可取得变量的值。另外,set支持八进制(数字前缀0)、十进制(数字无前缀)和十六进制(数字前缀0x),且支持不同进制之间的计算,如set /a a=123+0123+0x123,计算及显示结果为十进制。
 
本节学习有关批处理的一些比较琐碎、但又比较有价值的一些知识,运用这些知识后,才有条件更好的实现的批处理的功能,并能使批处理摆脱黑白世界而显得更加多姿多彩。废话少说,开讲啦~
实例:
1.bat
@echo off
set /a a=123+0123+0x123
echo a=%a%
pause

 

以上是关于第21课:数值计算的主要内容,如果未能解决你的问题,请参考以下文章

1.4 数值分析: 数值计算中的若干原则

批处理学习笔记第二十一课:数值计算

[数值计算-1]:数学建模科学计算数值计算的关系

第1课 - 进阶高手的大门

[数值计算-19]:万能的任意函数的数值求导数方法

[人工智能-数学基础-1]:深度学习中的数学地图:计算机数学数值计算数值分析数值计算微分积分概率统计.....