神奇的计算器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 代表任何有效的程序:

时间: 2024-10-10 09:43:00

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

《Linux就是这个范儿》

<Linux就是这个范儿> 基本信息 作者: 赵鑫磊    (加)Jie Zhang(张洁) 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115359360 上架时间:2014-6-27 出版日期:2014 年7月 开本:16开 页码:728 版次:1-1 所属分类:计算机 > 操作系统 > Linux 更多关于>>> <Linux就是这个范儿>   编辑推荐 阿里巴巴Linux技术大拿赵鑫磊.支付宝高级专家Jie Zhang带你深入

linux命令行计算器

在windows下,大家都知道直接运行calc,(c:\windows\system32\calc.exe),可以打开计算器. 注: calculate vt.&vi.计算:calculator n. 计算器.calc就是这个计算的简写.Ca在化学中是代表钙元素,calcium 钙(20号元素,符号Ca).两者有什么联系呢?calculate 来自calculus,原义是做算术运算的小石子,是calx(石灰石)的小称. 那么在linux系统下,有无与windows下calc.exe类似的计算器呢

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

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

指令篇:ls、pwd、date、cal、bc、cd、mkdir、cp、mv、rm、basename、dirname

1. ls 2.pwd 显示当前目录所在位置 3.date 日期时间 4.cal 日历 默认显示当前该月 cal 2012 :查看2012年的日历 cal 月 年 : 查看某年某月的日历 5.bc 计算器 bc 默认执行结果取整 bc  scale=2 默认执行结果保留两位小数 6.man page.tab.gedit 命令----------------->学会运用来查看帮助文档 7.进入目录 cd cd .. cd - 返回上一次的目录 cd ~ 8.创建文件夹: mkdir 文件夹名 创建

一步步打造自己的linux命令行计算器

相信很多人,在工作中会需要使用到计算器.一般的做法是,打开并使用系统自带的计算器. 这种做法可能对我来说,有如下几个问题. 太慢.每次需要打开计算器,然后改成编程模式,手工选择进制,再使用输入表达式进行计算. 需要切换窗口.编程时经常是在终端中,使用GUI计算器则意味着要离开终端,计算完毕再切换回来. 无法使用混合进制表达式.混合进制的意思是,在一个表达式中同时使用多种进制,如"0x10 * 10"表示十六进制的0x10乘以十进制的10. 如果以上有一条你也有同感的话,那么你也应该试一

bzoj4556【TJOI2016&amp;HEOI2016】字符串

4556: [Tjoi2016&Heoi2016]字符串 Time Limit: 20 Sec  Memory Limit: 128 MB Submit: 195  Solved: 103 [Submit][Status][Discuss] Description 佳媛姐姐过生日的时候,她的小伙伴从某东上买了一个生日礼物.生日礼物放在一个神奇的箱子中.箱子外边写了 一个长为n的字符串s,和m个问题.佳媛姐姐必须正确回答这m个问题,才能打开箱子拿到礼物,升职加薪,出任CE O,嫁给高富帅,走上人生

Linux下的经典软件-史上最全

前言 从2012年接触Linux系统以来就被Linux系统所吸引,2个月后便完全抛弃了Windows.在这2年的时间里,我尝试了很多Linux发行版: Gentoo, Fedora, Ubuntu, Debian等.在这些系统中又尝试了很多种软件,这里根据自己的使用经验并结合网上的一些资料,对Linux下常用的软件进行整理,供大家参考,希望能帮助到大家.每款软件都有它的优缺点,适合自己的才是最好的.在这篇文章中我是按自己的喜好推荐给大家或者进行排序的,并不是说它们就是最好的,其它的就不行.建议大

地方的法规的复合肥个号是法士大夫

http://www.enet.com.cn/elady/inforcenter/articlelist.jsp?acid=4542&cname=%B8%A3%B6%A6%B0%D7%C1%D5%D5%D2%D0%A1%BD%E3%C9%CF%C3%C5%C8%AB%CC%D7%B7%FE%CE%F1%A1%BE185v88857572%B0%FC%D2%B9%B7%FE%CE%F1%A1%BFyA8w1 http://www.enet.com.cn/elady/inforcenter/arti

Linux常用命令学习之路(每天都会更新)

Linux学习之路 1:显示日期时间的命令:date date->可以显示出星期月日时分秒年 date +%Y/%m/%d->可以显示出:年/月/日(date后面必须有至少一个空格) date +%H:%M:%S->显示出:时:分:秒(date后面必须有至少一个空格) date +%h->显示:月(英文的) 2:显示日历命令:cal: cal ->显示当月的日历 cal 2009->显示整个2009的日历 cal 10 2009->显示2009年10月的日历 3: