神奇的计算器dc和bc

Linux就这个范儿 P244
http://baike.baidu.com/link?url=YlTtivBfc1tfzreeUQoe8D0C6yqwbZGqnmlObq1hjvadXXlaTNiwKkHlI9U-4TxwD4CUxos6OQnwIESMyoXuLue_ZHKO3fevDZbNxhi4xPG

dc古老一些,是desk caclulator的缩写,使用逆波兰式来表达算式
bc要晚一些出现,1975年,bc是基础计算器basic calculator的缩写,bc程序不支持交互,GNU的bc可以用read命令来交互
bc 和dc 都像java编译为字节码,然后由虚拟机去解释执行。

我们一般使用代数标记法 1+1=2 3*6 =18,bc可以处理
但是dc只能使用逆波兰式 11 +   ,3 6 *

现在大部分Linux发行版都是使用GNU版的bc ,这个版本bc拥有高级语言特性
变量,数组,子过程,选择分支,循环

bc也有退出状态
0表示成功
1表示语法错误
其他值则没有严格定义

LINUX命令

用途
为任意精度算术语言提供解释器。BC的含义是:Binary Calculator,用于实现任意精度计算(往往是高精度计算)。
语法
bc [ -c ] [ -l ] [ File ... ]
指定 -c(仅编译)标志
-I  数学库中的函数
  
描述
bc 命令是一个提供任意精度算术的交互式进程。bc 命令首先读取由 File 参数指定的任一输入文件,然后读取标准输入。输入文件必须是包含 bc 命令能读取并执行的命令序列、语句或函数定义的文本文件。
bc 命令是 dc 命令的预处理程序。除非指定 -c(仅编译)标志,否则它自动调用 dc 命令。如果指定了 -c 标志,则来自 bc 命令的输出转到标准输出。
bc 命令允许您来指定十进制、八进制或十六进制的运算的输入和输出进制。缺省值为十进制。此命令还提供了十进制点符号的比例缩放规定。bc 命令始终使用 .(点号)来表示基数点,而不考虑指定为当前语言环境部分的任何十进制点字符。
bc 命令的语法类似于 C 语言的语法。可以使用 bc 命令通过将 ibase 关键字指定给输入进制而 obase 关键字指定给输出进制来在各进制间转化。2 到 16 的范围对于 ibase 关键字是有效的。obase 关键字的范围从 2 直到 /usr/include/sys/limits.h文件中定义的 BC_BASE_MAX 值设置的限制。不考虑 ibase 和 obase 的设置,bc 命令将字母 A 到 F 识别为其十六进制值 10 到 15。
bc 命令的输出由读取程序控制。输出由包含所有执行的未赋值表达式的值的一行或多行构成。输出的基数和精度由 obase 和 scale 关键字的值控制。
有关 bc 命令处理来自源文件信息的方式的进一步的信息在以下各节中得到描述:
* 语法
* 词法约定
*标识符和运算符
* 表达式
* 语句
* 函数调用
* -I 数学库中的函数
语法
以下语法描述了 bc 程序的语法,其中 program 代表任何有效的程序:

神奇的计算器dc和bc的更多相关文章

  1. 怎么实现Linux下的逆波兰计算器dc?

    #返回上一级 @Author: 张海拔 @Update: 2014-01-12 @Link: http://www.cnblogs.com/zhanghaiba/p/3516660.html /* * ...

  2. 《Linux就是这个范儿》

    <Linux就是这个范儿> 基本信息 作者: 赵鑫磊    (加)Jie Zhang(张洁) 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115359360 上架时间:2 ...

  3. Linux下的计算器(bc、expr、dc、echo、awk)知多少?

    linux 其他知识目录 原文链接:http://blog.chinaunix.net/uid-24673811-id-1760837.html linux下的三个命令可以用来作计算,下面一一讲解用法 ...

  4. Linux工具之bc计算器进制的转换

    bc是Linux下的命令行式的计算器. 题目虽然叫任意进制,但是因为bc的限制,输入进制是2~16范围:输出进制是2~999范围.这与常见计算器的进制范围是一致的,比如windows计算器最高也只能处 ...

  5. linux命令行计算器 <转>

    转自 http://blog.chinaunix.net/uid-26959241-id-3207711.html 详细文档请 man bc 在windows下,大家都知道直接运行calc,(c:\w ...

  6. Linux 查看支持的语言,日期,时间,计算器

    1.查看系统目前支持的语言 echo %LANG 2.查看日历 cal 3.查看日期时间 date 4.计算器 bc

  7. bc计算A股上市新股依次涨停股价

    几年的股市可谓惨不忍睹,不提也罢.唯有打新中签的时候,心里稍微有那么一点点的补偿,于是内心就YY可以30板吗,可以40板吗.于是就写了个连板的bc程序,每次中签的时候就运行一下,然后尽情的YY,然而每 ...

  8. linux下的计算器

    (1)bc bc在默认的情况下是个交互式的指令.在bc工作环境下,可以使用以下计算符号:+ 加法 - 减法 * 乘法 / 除法 ^ 指数 % 余数如: 3+4;5*2;5^2;18/4      &l ...

  9. Linux -- cal/bc/LANGE与帮助文档

    cal 显示日历命令 使用cal命令,显示日历 cal [month] [year] 1.显示当前的日历 [root@localhost ~]# cal 一月 日 一 二 三 四 五 六 2.显示指定 ...

随机推荐

  1. [转载] - QWidget、QMainWindow、QDialog和QFrame的区别

    继承关系:在Qt中所有的类都有一个共同的基类QObject ,QWidget直接继承与QPaintDevice类,QDialog.QMainWindow.QFrame直接继承QWidget 类.   ...

  2. PHP == 和 ===

    == 只判断两边的值是否相等,例如: 5555 == "5555" ,为真 === 判断两边的值和类型是否相当,5555 === "5555"  False,因 ...

  3. Solr学习笔记之3、Solr dataimport - 从SQLServer导入数据建立索引

    Solr学习笔记之3.Solr导入SQLServer数据建立索引 一.下载MSSQLServer的JDBC驱动 下载:Microsoft JDBC Driver 4.0 for SQL Server ...

  4. [办公自动化]windows7 仿宋GB2312字体打印不对

    今天同事发现自己的文档中,仿宋GB2312这种字体打印的看着总觉得不对. 他使用的操作系统是windows7,office 是2007. 解决方案: 将windows xp中的c:\windows\f ...

  5. thinkphp开发技巧经验分享

    thinkphp开发技巧经验分享 www.111cn.net 编辑:flyfox 来源:转载 这里我给大家总结一个朋友学习thinkphp时的一些笔记了,从变量到内置模板引擎及系统变量等等的笔记了,同 ...

  6. 百度BAE环境下WordPress安装教程

    不了解代码的童鞋慎重使用这种方法哦,安装过程中可能会出现一些简单的错误. 前两天有位网友在QQ上联系我,他告诉我自己在百度BAE上安装WordPress程序总是出错.我让他按照网络上的教程逐步安装,但 ...

  7. Latex使用

    tex是一种文本格式化程序语言,通过使用各种命令,对文本进行排版定义,最后通过编译,生成美观的排版完毕的文档. 同html.css的组合很想,定义元素以及元素的显示属性,按照编写好的文本格式化内容,在 ...

  8. Web Storage事件无法触发

    不管是在同源其他页面还是在本页面都不能触发storage事件. <!DOCTYPE html> <html> <head> <meta charset=&qu ...

  9. 【转】设计模式 ( 十八 ) 策略模式Strategy(对象行为型)

    设计模式 ( 十八 ) 策略模式Strategy(对象行为型) 1.概述 在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成 ...

  10. 【No.2】监控Linux性能25个命令行工具

    接着上一篇博文继续 [No.1]监控Linux性能25个命令行工具 10:mpstat -- 显示每个CPU的占用情况 该命令可以显示每个CPU的占用情况,如果有一个CPU占用率特别高,那么有可能是一 ...