Symbols/Numbers

! ( 16b addr --- ) Stores 16 at addr. # ( +d1 --- +d2 ) +d1 is divided by BASE and the quotient is placed onto the stack. The remainder is con- verted to an ASCII character and appended to the output string toward lower memory ad- dresses. #> ( 32b --- addr +n ) Terminates formatted (or pictured) output string (ready for TYPE ). #S ( +d --- 0 0 ) Converts all digits of an entire number into string. #TIB ( --- addr ) Returns the address of the user variable that holds the number of characters input. ' ( --- addr ) Returns <name>'s compilation address, addr. ( ( --- ) Starts a comment input. Comment is ended by a ) . (E.) (F:r -- )( -- addr +n) Convert the top number on the floating-point stack to its character string representation using the scientific notation. Addr is the address of the location where the character string representation of r is stored, and +n is the number of bytes. (F.) (F:r -- )( -- addr +n) Convert the top number on the floating-point stack to its character string representation using the fixed- point notation. Addr is the address of the location where the character string representation of r is stored, and +n is the num- ber of bytes. (LINE) ( n1 n2 --- addr count ) Virtual storage line primitive. * ( w1 w2 --- w3 ) Multiplies w2 by w1 and leaves the product w3 onto the stack. */ ( n1 n2 n3 --- n4 ) Multiplies n2 by n1 and divides the product by n3. The quotient, n4 is placed on the stack. */MOD ( n1 n2 n3 --- n4 n5 ) n1 is multiplied by n2 producing a product which is divided by n3. The remainder, n4 and the quotient, n5 are then placed on the stack. + (w1 w2 --- w3 ) Adds w2 and w1 then leaves the sum, w3 on the stack. +! ( w1 addr --- ) Adds w1 to the value at addr then stores the sum at addr replacing its previous value. +LOOP ( n --- ), ( sys --- ) (compiling) Increments the DO LOOP index by n. , ( 16b --- ) Reserves 16b of space in the dictionary. - ( w1 w2 --- w3 ) Subtracts w2 from w1 and leaves the result, w3 on the stack. --> ( --- ) Immediately transfers interpretation to the start of the next sequential block. -ROLL ( n --- ) Removes the value on the top of stack and in- serts it to the nth place from the top of stack. -TRAILING ( addr +n1 --- addr +n2 ) Counts +n1 characters starting at addr and sub- tracts 1 from the count when a blank is encoun- tered. Leaves on the stack the final string count, n2 and addr. . ( n --- ) Removes n from the top of stack and displays it. ." ( --- ) Displays the characters following it up to the delimiter " . .( ( --- ) Displays string following .( delimited by ) . .LINE ( n1 n2 --- ) Display line of text from mass storage. .R ( n +n --- ) Displays the value n right justified in a field +n characters wide according to the value of BASE. .S ( --- ) Display stack contents without modifying the stack. / ( n1 n2 --- n3 ) Divides n1 by n2 and leaves the quotient n3 on the stack. /MOD ( n1 n2 --- n3 n4 ) Divides n1 by n2 then leaves on the stack the remainder n3 and the quotient n4. 0< ( n --- flag ) Leaves a true flag if n is less than zero. 0= ( w --- flag ) Leaves a true flag if w is equal to zero. 0> ( n --- flag ) Leaves a true flag if n is greater than zero. 1+ ( w1 --- w2 ) Adds 1 to w1 then leaves the sum, w2 on the stack. 1+! ( addr --- ) Adds one to the value at addr and stores the result at addr. 1- ( w1 --- w2 ) Subtract 1 from w1 then leaves the difference, w2 on the stack. 1-! ( addr --- ) Subtracts one from the value at addr and stores the result at addr. 2! ( 32b addr --- ) Stores 32b at addr. 2* ( w1 --- w2 ) Multiplies w1 by 2 to give w2. 2**X (F: r1 -- r2) Raise 2 to the r1 power giving r2. 2+ ( w1 --- w2 ) Adds two to w1 and leaves the sum, w2 on the stack. 2- ( w1 --- w2 ) Subtracts two from w1 and leaves the result, w2 on the stack. 2/ ( n1 --- n2 ) divides n1 by 2, giving n2 as the result. 2@ ( addr --- 32b ) Returns 32b from addr. 2CONSTANT ( 32b --- ) Creates a double length constant for a <name>. When <name> is executed, 32b is left on the stack. 2DROP ( 32b --- ) Removes 32b from the stack. 2DUP ( 32b --- 32b 32b ) Duplicates 32b. 2OVER ( 32b1 32b2 --- 32b1 32b2 32b3 ) 32b3 is a copy of 32b1 2ROT ( 32b1 32b2 32b3 --- 32b2 32b3 32b1 ) Rotates 32b1 to the top of the stack. 2SWAP ( 32b1 32b2 --- 32b2 32b1 ) Swaps 32b1 and 32b2 on the stack. 2VARIABLE ( --- ) Creates double-length variable for <name>. when <name> is executed, its parameter field address is placed on the stack. : ( --- sys ) Starts the definition of a word. Definition is terminated by a ; . :CASE ( n --- ), ( --- sys ) (compiling) Creates a dictionary entry for <name> in cur- rent and sets the compile mode. ; ( sys --- ) Terminates a colon-definiton. ;CODE ( --- ), ( sys1 --- sys2 ) (compiling) Terminates a defining-word. May only be used in compilation mode. ;S ( --- ) Stop interpretation. < ( n1 n2 --- flag ) Leaves a true flag on stack if n1 is less than n2. <# ( --- ) Starts a formatted (pictured) numeric output. Terminated by #> . <BUILDS ( --- ) Creates a new dictionary entry for <name> <MARK ( --- addr ) Leaves current dictionary location to be resolved by <RESOLVE . <RESOLVE ( addr --- ) Compiles branch offset to location previously left by <MARK . = ( w1 w2 --- flag ) Returns a true flag if w1 is equal to w2. > ( n1 n2 --- flag ) Returns a true flag if n1 is greater than n2. >< ( 8b1/8b2 --- 8b2/8b1 ) Swaps the upper and lower bytes of the value on the stack. >BODY ( addr1 --- addr2 ) Leaves on the stack the parameter field ad- dress, addr2 of a given field address, addr1. >IN ( --- addr ) Leaves the address of the user variable >IN which contains the number of bytes from the beginning of the input stream at any particular moment during interpretation. >L ( n --- <text> ) Place the <text> on line n of the current screen as designated by SCR. >MARK ( --- addr ) Compiles zero in place of forward branch offset and marks it for future resolve. >R ( 16b --- ) Removes 16b from user stack and place it onto return stack. >RESOLVE ( addr --- ) Corrects branch offset previously compiled by >mark to current dictionary location. ? ( addr --- ) Displays the contents of addr. ?BRANCH ( flag --- ) Compiles a conditional branch operation. ?COMP ( -- ) Checks for compilation mode, gives error if not. ?CSP ( -- ) Checks for stack integrity through defining process, gives error if not. ?DUP ( 16b --- 16b 16b ), ( 0 --- 0 ) Duplicates 16b if it is a non-zero. ?ERROR (flag n -- ) If flag is true, error n is initiated. ?EXEC ( -- ) Checks for interpretation mode, gives error if not. ?PAIRS (n1 n2 -- ) Checks for matched structure pairs, gives error if not. ?STACK ( --- ) Checks to see if stack is within limits, gives error if not ?TERMINAL ( --- flag ) True if any key is depressed. @ ( addr --- 16b ) Replaces addr with its 16b contents on top of the stack. @! ( 16b addr --- ) Stores 16 at address pointed to by addr. @@ ( addr --- 16b ) Replaces addr with 16b, 16b is contents of address pointed to by addr. [ ( --- ) Places the system into interpret state to ex- ecute non-immediate word/s during compilation. ['] ( --- addr ), ( --- ) Returns and compiles the code field address of a word in a colon-definition. [COMPILE] ( --- ) Causes an immediate word to be compiled. ] ( --- ) Places the system into compilation state. ] places a non-zero value into the user variable STATE.