|
Hopefully, this page is exactly what you are looking for, but if not, you can always find further assistance on Unix/Linux Forum!
User Commands dc(1)
NAME
dc - desk calculator
SYNOPSIS
/usr/bin/dc [filename]
/usr/xpg6/bin/dc [filename]
DESCRIPTION
dc is an arbitrary precision arithmetic package. Ordinarily
it operates on decimal integers, but one may specify an
input base, output base, and a number of fractional digits
to be maintained. The overall structure of dc is a stacking
(reverse Polish) calculator. If an argument is given, input
is taken from that file until its end, then from the stan-
dard input.
bc is a preprocessor for dc that provides infix notation and
a C-like syntax that implements functions. bc also provides
reasonable control structures for programs. See bc(1).
USAGE
/usr/bin/dc, /usr/xpg6/bin/dc
The following constructions are recognized under both
/usr/bin/dc and /usr/xpg6/bin/dc:
number The value of the number is pushed on the
stack. A number is an unbroken string of
the digits 0-9. It may be preceded by an
underscore (_) to input a negative number.
Numbers may contain decimal points.
sx The top of the stack is popped and stored
into a register named x, where x may be any
character. If the s is capitalized, x is
treated as a stack and the value is pushed
on it.
lx The value in register x is pushed on the
stack. The register x is not altered. All
registers start with zero value. If the l
is capitalized, register x is treated as a
stack and its top value is popped onto the
main stack.
SunOS 5.10 Last change: 29 Aug 2003 1
User Commands dc(1)
d The top value on the stack is duplicated.
p The top value on the stack is printed. The
top value remains unchanged.
P Interprets the top of the stack as an ASCII
string, removes it, and prints it.
f All values on the stack are printed.
q Exits the program. If executing a string,
the recursion level is popped by two.
Q Exits the program. The top value on the
stack is popped and the string execution
level is popped by that value.
x Treats the top element of the stack as a
character string and executes it as a string
of dc commands.
X Replaces the number on the top of the stack
with its scale factor.
[ ... ] Puts the bracketed ASCII string onto the top
of the stack.
<x >x =x The top two elements of the stack are popped
and compared. Register x is evaluated if
they obey the stated relation.
SunOS 5.10 Last change: 29 Aug 2003 2
User Commands dc(1)
v Replaces the top element on the stack by its
square root. Any existing fractional part
of the argument is taken into account, but
otherwise the scale factor is ignored.
! Interprets the rest of the line as a shell
command.
c All values on the stack are popped.
i The top value on the stack is popped and
used as the number radix for further input.
I Pushes the input base on the top of the
stack.
o The top value on the stack is popped and
used as the number radix for further out-
put.
O Pushes the output base on the top of the
stack.
k The top of the stack is popped, and that
value is used as a non-negative scale fac-
tor: the appropriate number of places are
printed on output, and maintained during
multiplication, division, and exponentia-
tion. The interaction of scale factor,
input base, and output base will be reason-
able if all are changed together.
K Pushes the current scale factor on the top
of the stack.
SunOS 5.10 Last change: 29 Aug 2003 3
User Commands dc(1)
z The stack level is pushed onto the stack.
Z Replaces the number on the top of the stack
with its length.
? A line of input is taken from the input
source (usually the terminal) and executed.
Y Displays dc debugging information.
; : Used by bc(1) for array operations.
/usr/bin/dc
The following construction is recognized under /usr/bin/dc,
using the scale of whatever the result is.
+ - / * % ^ The top two values on the stack are added
(+), subtracted (-), multiplied (*), divided
(/), remaindered (%), or exponentiated (^).
The two entries are popped off the stack;
the result is pushed on the stack in their
place. Any fractional part of an exponent is
ignored.
/usr/xpg6/bin/dc
The following construction is recognized under
/usr/xpg6/bin/dc. The results of division are forced to be a
scale of 20.
+ - / * % ^ The top two values on the stack are added
(+), subtracted (-), multiplied (*), divided
(/), remaindered (%), or exponentiated (^).
The two entries are popped off the stack.
The result is pushed on the stack in their
place. Any fractional part of an exponent is
ignored.
Ensures that the scale set prior to division
is the scale of the result.
SunOS 5.10 Last change: 29 Aug 2003 4
User Commands dc(1)
EXAMPLES
Example 1: Printing the first ten values of n!
This example prints the first ten values of n!:
[la1+dsa*pla10>y]sy
0sa1
lyx
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Availability | SUNWesu |
|_____________________________|_____________________________|
SEE ALSO
bc(1), attributes(5)
DIAGNOSTICS
x is unimplemented x is an octal number.
out of space The free list is exhausted
(too many digits).
out of stack space Too many pushes onto the
stack (stack overflow).
empty stack Too many pops from the stack
(stack underflow).
nesting depth Too many levels of nested
execution.
divide by 0 Division by zero.
SunOS 5.10 Last change: 29 Aug 2003 5
User Commands dc(1)
sqrt of neg number Square root of a negative
number is not defined (no
imaginary numbers).
exp not an integer dc only processes integer
exponentiation.
exp too big The largest exponent allowed
is 999.
input base is too large The input base x: 2<= x <=
16.
input base is too small The input base x: 2<= x <=
16.
output base is too large The output base must be no
larger than BC_BASE_MAX.
invalid scale factor Scale factor cannot be less
than 1.
scale factor is too large A scale factor cannot be
larger than BC_SCALE_MAX.
symbol table overflow Too many variables have been
specified.
invalid index Index cannot be less than 1.
index is too large An index cannot be larger
than BC_DIM_MAX.
SunOS 5.10 Last change: 29 Aug 2003 6
User Commands dc(1)
SunOS 5.10 Last change: 29 Aug 2003 7
Man(1) output converted with
man2html and wrapped by fishsponge
This page was generated on Wed Sep 12 11:24:33 GMT 2007
|
Your favourite pages:
No pages logged yet. Trying to save cookie... Top 10 most popular pages:
sqlite3 man page (5080 hits) (openSUSE 10.2)
adv_cap_autoneg man page (4745 hits) (Solaris 10 11_06)
CPAN man page (4465 hits) (Suse Linux 10.1)
ssh man page (4248 hits) (Suse Linux 10.1)
svn man page (4222 hits) (FreeBSD 6.2)
startproc man page (2190 hits) (Suse Linux 10.1)
ssh-socks5-proxy-connect man page (2183 hits) (Solaris 10 11_06)
netcat man page (2151 hits) (Suse Linux 10.1)
pprosetup man page (2007 hits) (Solaris 10 11_06)
signal man page (1991 hits) (Suse Linux 10.1)
|