File:  [gforth] / gforth / model
Revision (vendor branch): download - view: text, annotated - select for diffs
Fri Feb 11 16:30:47 1994 UTC (27 years, 9 months ago) by anton
Branches: no-vendor
CVS tags: alpha
The GNU Forth Project

    1: $Id: model,v 1994/02/11 16:30:47 anton Exp $
    2: Copyright 1992 by the ANSI figForth Development Group
    4: This file describes the implementation model of ANSI figForth. The things
    5: described herein are valid in all implementations of ANSI figForth.
    7: The instruction pointer (ip) is post-incremented.
    9: Branches are relative:
   10: 	branch
   11: offset:	target - offset
   12: 	...
   13: target:	...
   15: The top-of return stack is in memory
   17: The top of data stack need not be in memory. Other data stack items
   18: are in memory.
   20: The stacks grow downward
   22: flags are represtented by 0 and -1
   24: The loop control parameters are the index on the top of return stack
   25: and the limit on the second item.
   27: Everything except the virtual machine registers (ip, sp, etc.) is
   28: addressable.
   30: The return address on the return stack occupies one cell.
   32: There is a floating point stack
   33: The floating point numbers are the same as C's double numbers
   35: The error returns of the file word set are FALSE or TRUE. (or should
   36: we use errno? Does this work with stdio functions?)
   38: No assumptions can be made about the order of fetching the xt of the
   39: next word wrt the other operations in a forth word. This makes a
   40: difference only if you want to execute code lying on the stack or if
   41: you store into the very next word that is executed.

FreeBSD-CVSweb <>