IC.1
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:5k
源码类别:

操作系统开发

开发平台:

C/C++

  1. IC(1)                     Minix Programmer's Manual                      IC(1)
  2. NAME
  3.      ic - integer calculator
  4. SYNOPSIS
  5.      ic [expression]
  6. EXAMPLES
  7.      ic                  # Start the calculator
  8.      ic 250 300+         # Start calculator with 550 on the stack
  9. DESCRIPTION
  10.      Ic is a simple RPN (Reverse Polish Notation) calculator, used  for  small
  11.      calculations and base conversions. All calculations are done using 32 bit
  12.      integers.  The standard input is usually  a  keyboard  and  the  standard
  13.      output  requires  a device with a 'termcap' entry.  The program starts by
  14.      interpreting  any  <args>  as  commands,  where  the  separation  between
  15.      arguments is considered to be the same as the ENTER key. For example,
  16.              ic 692 784+
  17.      After reading the arguments input is from the keyboard.
  18.   Stack Operations
  19.      The operation of this program is similar to an  RPN  calculator.   A  six
  20.      level  stack  is  used.  The ENTER key pushes the stack up one level. For
  21.      example, '12+5' is entered as '12 ENTER 5 +".
  22.      The top two entries on the stack are exchanged by the x command, and  the
  23.      stack is rolled down one (popped) by the p key.  The top of the stack may
  24.      be cleared by pressing the  back-space  key.  The  whole  stack  and  the
  25.      registers are initialized by a z.
  26.   Numeric Entry
  27.      The input and output bases are initially decimal, but they may be changed
  28.      using  the  i and o commands. The i command changes both bases, but the o
  29.      command changes  just  the  output  base.   These  commands  take  a  one
  30.      character  argument  of  h,  d, o or b to change to Hexadecimal, Decimal,
  31.      Octal or Binary. While the  input  base  is  hexadecimal  the  letters  a
  32.      through f are used to represent the decimal values 10 through 15.
  33.      When the input base  is  decimal:  multiply,  divide  and  remainder  are
  34.      signed, otherwise they are performed unsigned.
  35.                                                                              1
  36. IC(1)                     Minix Programmer's Manual                      IC(1)
  37.      The output base may also be changed to ASCII (a), this causes  the  least
  38.      significant 7 bits of a value to be displayed as a character. To input an
  39.      ASCII value the translate  (t)  command  may  be  used,  it  accepts  one
  40.      character as its argument.
  41.   Calculations
  42.      The  arithmetic  operations  supported  are:  Negate  ('.'),  Add  ('+'),
  43.      Subtract  ('-'),  Multiply ('*'), Divide ('/'), and Remainder ('%').  The
  44.      logical (Boolean) operations available are:  NOT  ('~'),  AND  ('&'),  OR
  45.      ('|'), and EXCLUSIVE-OR ('^').
  46.      After one of these operations the last top of stack value  is  saved.  It
  47.      may be restored by pressing l (L).
  48.   Saving Results
  49.      Ten temporary registers are available. The Store (s) command followed  by
  50.      a  digit  ('0'..'9')  will  copy  the  top  of the stack to the specified
  51.      register. The Recall (r) command pushes the contents of a  register  onto
  52.      the top of the stack.
  53.      If the Store command is followed by a '+' preceding the digit,  then  the
  54.      top of the stack will be added to the specified 'accumulator' register.
  55.      Values may also be written to a file. The w command writes the top of the
  56.      stack,  using  the  current  output  base,  to a file called 'pad' in the
  57.      current directory.  If the user does not have write access to the current
  58.      directory  then  the  file /tmp/pad_$USER is used as the scratch pad. The
  59.      scratch pad file is erased on the first use of the w command within  each
  60.      new invocation of 'ic'.
  61.   Miscellaneous
  62.      The Quit (q) key causes an immediate  exit.  The  m  command  temporarily
  63.      leaves  ic  by invoking the shell as a sub-process.  For help while using
  64.      ic, hit the h key. If an erroneous key is pressed the bell will sound.
  65.   Command Summary
  66.      Note that many commands have an alternative  key-code  available  on  the
  67.      extended  AT  keyboard. This aids entry by including most commands on the
  68.      right side of the keyboard.
  69.         ENTER          Enter (push up)
  70.         BS (DEL)       Clear top of stack
  71.         h              Help
  72.         i              Input base  (h, d, o, b)
  73.         l  (PGDN)      Last top of stack
  74.         m              MINIX shell
  75.                                                                              2
  76. IC(1)                     Minix Programmer's Manual                      IC(1)
  77.         o              Output base (h, d, o, b, a)
  78.         p  (DOWN)      Pop stack (roll down)
  79.         q  (END)       Quit
  80.         r  (LEFT)      Recall (0-9)
  81.         s  (RIGHT)     Store [+] (0-9)
  82.         t              Translate (char)
  83.         w  (PGUP)      Write top of stack to scratch pad
  84.         x  (UP)        Exchange top of stack
  85.         z  (HOME)      Zero all state
  86.         .              Change sign
  87.         +  (+)         Add
  88.         -  (-)         Subtract
  89.         *              Multiply
  90.         /              Divide
  91.         %  (sh/5)      Remainder
  92.         (tilde)        Not
  93.         &              And
  94.         |              Or
  95.         ^              Exclusive-or
  96.   Author
  97.      Ic was written by Terrence W. Holm.
  98.                                                                              3