home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / forth / compiler / fpc / tutor / l2p015 < prev    next >
Text File  |  1990-07-15  |  3KB  |  74 lines

  1.        ╔════════════════════════════════════════════════════╗
  2.        ║ Lesson 2 Part 015  F-PC 3.5 Tutorial by Jack Brown ║
  3.        ╚════════════════════════════════════════════════════╝
  4.  
  5.        ┌──────────────────────────────────────────────────────┐
  6.        │ Review some of the words we have introduced so far.  │
  7.        └──────────────────────────────────────────────────────┘
  8.  
  9. In the following we are using the "stack picture" to show the
  10. parameters required by the words. Stack Picture notation:
  11.  
  12.   ( "stack inputs" -- "stack outputs" )
  13.      where -- indicates word action.
  14.  
  15.   ┌──────────┐
  16.   │  Output  │
  17.   └──────────┘
  18.  
  19.   SPACE       ( -- )           ( Send a space to the display.          )
  20.   SPACES      ( n -- )         ( Send n spaces to display.             )
  21.   CR          ( -- )           ( Start a new line on display.          )
  22.   EMIT        ( n -- )         ( Display ASCII character n .           )
  23.   .           ( n -- )         ( Send top of stack to display.         )
  24.  
  25.  ┌─────────────┐
  26.  │  Arithmetic │
  27.  └─────────────┘
  28.  
  29.   +         ( m n -- sum )     ( Leave sum:  sum = m + n               )
  30.   -         ( m n -- dif )     ( Leave difference: dif = m - n         )
  31.   *         ( m n -- prod )    ( Leave product: prod = m * n           )
  32.   /         ( m n -- quot )    ( Leave quotient: quot = m / n          )
  33.  
  34.   ┌────────┐
  35.   │ Stack  │
  36.   └────────┘
  37.  
  38.   .S        ( -- )             ( Non destructive stack print.          )
  39.   DUP       ( n -- n n )       ( Duplicate top number on the stack.    )
  40.   SWAP      ( n m -- m n )     ( Swap top two numbers on the stack.    )
  41.   ROT       ( l m n -- m n l)  ( ROTate 3rd number to the top of stack.)
  42.   DROP      ( n -- )           ( Discard top stack number.             )
  43.   MAX       ( m n -- max )     ( Leave larger  of m and n              )
  44.   MIN       ( m n -- min )     ( Leave smaller of m and n              )
  45.   DEPTH     ( -- n )           ( Leave count of stack items.           )
  46.  
  47.  ┌───────────┐
  48.  │  Comments │
  49.  └───────────┘
  50.  
  51.   \                            ( Comment to end of line.               )
  52.   ( everything in parenthesis is a comment too  )
  53.  
  54. ╓────────────────────╖
  55. ║ Review Assignment  ║
  56. ╙────────────────────╜
  57.  
  58. 1. You should be thoroughly familiar with the above words.  If you
  59. haven't already done so use the MYQUIT outer interpreter to experiment
  60. with the above stack manipulating words.
  61.  
  62. 2. Read the first two chapters of Starting Forth 2nd Edition and try the
  63. examples provided there with the outer interpreter MYQUIT functioning.
  64.  
  65. 3. If you don't know about binary, octal, decimal, and hexadecimal
  66. numbering systems find out everything you can before reading the next
  67. message.  Look at the first two chapters of an elementary book on 8086
  68. assembly language such as: IBM PC & XT Assembly Language by L.J. Scanlon
  69. for information on number systems and computer arithmetic.
  70.  
  71. ┌────────────────────────────────────┐
  72. │  Please move to Lesson 2 Part 020  │
  73. └────────────────────────────────────┘
  74.