**dc**

[

*file*
]

An interactive desk calculator program that performs arbitrary-precision integer arithmetic (input may be taken from a *file*
). Normally you don't run `dc`
directly, since it's invoked by `bc`
(see **bc**
). `dc`
provides a variety of one-character commands and operators that perform arithmetic; `dc`
works like a Reverse Polish calculator; therefore, operators and commands follow the numbers they affect. Operators include **+ - / * % ^**

(as in C, although **^**

means exponentiation); some simple commands include:

**3 2 ^ p**

*Evaluate 3 squared, then print result*
9
**8 * p**

*Current value (9) times 8, then print result*
72
**47 - p**

*Subtract 47 from 72, then print result*
25
**v p**

*Square root of 25, then print result*
5
**2 o p**

*Display current result in base 2*
101

Note: spaces are not needed except between numbers.