Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1121999
  • 博文数量: 165
  • 博客积分: 5957
  • 博客等级: 大校
  • 技术积分: 2015
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-24 15:04
文章分类

全部博文(165)

文章存档

2014年(10)

2013年(14)

2012年(9)

2011年(22)

2010年(17)

2009年(17)

2008年(26)

2007年(34)

2006年(16)

我的朋友

分类:

2007-07-10 22:19:05

dc 命令

用途

提供了一种交互式桌面计算器来完成任意精度的整数计算。

语法

dc [ File]

描述

dc 命令是一个任意精度的算术计算器。dc 命令从 File 参数或者标准输入得到其输入直到它读到一个文件结束符。一旦 dc 命令接收到输入,它将求出计算值并将计算值写入到标准输出当中。它按十进制整数计算,但是您可以指定输入和输出的基数,以及小数部分保留的位数。dc 命令结构如同一个堆栈、逆波兰表示法计算。

命令是 dc 命令的一个预处理器。它提供插入式符号以及和 C 语言类似的语法,能够实现程序的功能和控制结构。

子命令

c 清洁堆栈:dc 命令弹出堆栈中的所有的值。
d 复制栈顶值。
f 显示堆栈上的所有值。
i 弹出栈顶值并将其作为进一步输入的基数。
I 将输入基数压入栈顶。
k 弹出栈顶值并将其作为非负比例因子。位置的恰当数目将会显示在输出中并在乘、除和求幂中保留下来。如果所有的数值一起修改,比例因子、输入基数、输出基数的交互作用是合理的。
lx x 变量代表的寄存器中的值压入堆栈。由 x 变量代表的寄存器是不能修改的。所有的寄存器都以为 0 的值启动。
Lx x 变量视为一个堆栈并将其顶部的值弹出到主堆栈中。
o 将栈顶值弹出并且将其作为进一步输出的基数。
O 将输出基数压入栈顶。
p 显示栈顶值。顶部值不会发生改变。
P 将栈顶作为一个字符串来进行解释,除去并显示它。
q 退出程序。如果 dc 命令正在运行一个字符串,它将弹出递归级别为 2。
Q 弹出栈顶值并将其作为字符串运行的级别。
sx 弹出栈顶值并将其存放在名称为 x 的寄存器中,其中 x 变量可以是任何字符。
Sx x 变量视为一个堆栈。它弹出主栈顶并将其值压入到 x 变量所代表的堆栈。
v 将堆栈顶部的元素用它的平方根来代替。选项中任何现有的小数部分将会计算在内,但是相反,比例因子将会被忽略。
x 将堆栈顶部的元素视为一个字符串并将其作为 dc 命令的一个字符串来运行。
X 将堆栈顶部的数字用它的比例因子来代替。
z 将堆栈中的元素数压入到堆栈中。
Z 将堆栈顶部的数字用这个数字的位数来代替。
Number 将指定的值压入堆栈。Number 是一个完整的字符串其数字从 0 到 9。要表示一个负数,在它前面加上一个 _(下划线)。一个数字可以包含小数点。
+ - / * % ^ 对堆栈顶部的两个数进行加(+)、减(-)、乘(*)、除(/)、求余(%)或者取幂 (^)。dc 命令弹出顶部的两个条目并将其结果压回到堆栈中。dc 命令忽略指数的小数部分。
[String] 将用方括号里的 String 参数放到堆栈的顶部。
[= | > | < ] x
                          将堆栈顶部的两个元素弹出并进行比较。计算x 变量代表的寄存器的值就像它们遵循规定的关系。
! 将其作为一个操作系统命令来解释这一行中剩下的部分。
? 获取并且运行一个输入行。
;: 命令使用这些字符用来进行数组操作。

示例

  1. 要将 dc 命令作为计算器使用,请输入:

    用户:    1 4 / p
    系统: 0
    用户:    1 k   [ Keep 1 decimal place ]s.
            1 4 / p
    系统: 0.2
    用户:   3 k   [ Keep 3 decimal places ]s.
            1 4 / p
    系统: 0.250
    用户:   16 63 5 / + p
    系统: 28.600
    用户:    16 63 5 + / p
    系统: 0.235

    dc 命令中可以使用注释如本例所示。包含在方括号中的注释和可能在其后附加 s.[ Comment] s.)都会被 dc 命令忽略。只包含在方括号中的注释存储在堆栈的顶部。

    如果是直接从键盘输入 dc 命令,按下 Ctrl-D 可以结束 命令会话并返回到 shell 命令行。

  2. 要装入并且运行一个 dc 程序文件,请输入:

    用户:    dc prog.dc
            5 lf x p [ 5 factorial ]s.
    系统: 120
    用户:   10 lf x p [ 10 factorial ]s.
    系统: 3628800

    该项解释 dc 程序,它保存在 prog.dc 程序文件当中,然后从工作站的键盘中读入。lf x 计算存储在寄存器 f 中的函数,它可以由 prog.c 程序文件定义如下:

    [ f: compute the factorial of n ]s.
    [ (n = the top of the stack) ]s.
    [ If 1>n do b; If 1b d 1 
    

    您可以使用任何文本编辑器或者使用 bc 的 (编译)标志来创建 dc 程序文件。当您直接从键盘输入 dc 命令表达式,按下 Ctrl-D 可以结束 bc 命令会话并返回到 shell 命令行。

文件

/usr/bin/dc 包含 dc 命令。
阅读(3536) | 评论(0) | 转发(0) |
0

上一篇:计算机存储的单位

下一篇:bc详细说明

给主人留下些什么吧!~~