dc man page on HP-UX

Man page or keyword search:  
man Server   10987 pages
apropos Keyword Search (all sections)
Output format
HP-UX logo
[printable version]

dc(1)									 dc(1)

       dc - desk calculator


       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.  (See bc(1), a pre‐
       processor for that provides infix notation and  a  C-like  syntax  that
       implements  functions.  also provides reasonable control structures for
       programs.)  The overall structure of is	a  stacking  (reverse  Polish)
       calculator.   If	 an  argument  is given, input is taken from that file
       until its end, then from the standard input.  An end of file  on	 stan‐
       dard  input  or	the  command stop dc.  The following constructions are

	      number	     The value of the number is pushed on  the	stack.
			     A	number	is an unbroken string of the digits or
			     It can be preceded by an underscore  to  input  a
			     negative  number.	 Numbers  can  contain decimal

	      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 and a warning generated.	The  remainder
			     is calculated according to the current scale fac‐
			     tor; it is	 not  the  integer  modulus  function.
			     yields  .1	 (one  tenth) if scale is 1 because is
			     2.3 with .1 as the remainder.

	      The top of the stack is popped and stored into a register named
			     x, where x can be any character.  If the is capi‐
			     talized, x is treated as a stack and the value is
			     pushed on it.

	      The value in register
			     x is pushed on the	 stack.	  Register  x  is  not
			     altered.	All  registers	start with zero value.
			     If the is capitalized, register x is treated as a
			     stack  and	 its top value is popped onto the main

	      The top value on the stack is duplicated.

	      The top value on the stack is printed.
			     The top value remains unchanged.  interprets  the
			     top  of the stack as an ASCII string, removes it,
			     and prints it.

	      All values on the stack are printed.

	      exits the program.
			     If executing a string,  the  recursion  level  is
			     popped  by two.  If is capitalized, the top value
			     on the stack is popped and the  string  execution
			     level is popped by that value.

	      treats the top element of the stack as a character string
			     and executes it as a string of commands.

	      replaces	the number on the top of the stack with its scale fac‐

	      puts the bracketed
			     ASCII string onto the top of the stack.   Strings
			     can be nested by using nested pairs of brackets.

	      The  top	two elements of the stack are popped and
			     Register x	 is  evaluated	if  they
			     obey the stated relation.

	      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

	      Interprets the rest of the line as an
			     HP-UX  system  command  (unless the
			     next character is or in which  case
			     appropriate   relational	operator
			     above is used).

	      All values on the stack are popped.

	      The top value on the stack is popped and	used  as
			     number radix for further input.

	      pushes the input base on the top of the stack.

	      The top value on the stack is popped and used
			     as	 the  number  radix  for further
			     output.  See  below  for  notes  on
			     output base.

	      pushes the output base on the top of the stack.

	      the  top of the stack is popped, and that value is
	      used as
			     a non-negative  scale  factor:  the
			     appropriate  number  of  places are
			     printed on output,	 and  maintained
			     during   multiplication,  division,
			     and exponentiation.   The	interac‐
			     tion  of  scale factor, input base,
			     and output base will be  reasonable
			     if all are changed together.

	      pushes the scale factor on the top of the stack.

	      The stack level is pushed onto the stack.

	      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  exe‐

	      Used by	     for array operations.

	      Generates debugging output for

       The input base may be any number, but only the digits 0-9
       and A-F are available for input, thus limiting  the  use‐
       fulness of bases outside the range 1-16.	 All 16 possible
       digits may be used in any base; they  always  take  their
       conventional values.

       The output base may be any number.  Bases in the range of
       2-16 generate the "usual" results, with the  letters  A-F
       representing  the values from 10 through 16.  Bases 0 and
       1 generate a string of whose length is the value	 of  the
       number.	Base −1 generates a similar string consisting of
       Other bases have each "digit" represented  as  a	 (multi-
       digit)  decimal	number giving the ordinal of that digit.
       Each "digit" is signed for negative bases.  "Digits"  are
       separated  by  spaces.	Given  the  definition of output
       base, the command always yields "10" (in a representation
       appropriate to the base); yields useful information about
       the output base.

       Where			     x is an octal number.

       There are insufficient elements on the stack to	do  what
       was asked.

       The free list is exhausted (too many digits).

       Too many numbers are being kept around.

       Too many items are on the stack.

       There are too many levels of nested execution.

       This  example prints the first ten values of n! (n facto‐


       tutorial in


List of man pages available for HP-UX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net