PFE - Portable Forth Environment - pfe Forth Wordsets

  PFE 0.33.71 Homepage SourceForge Download Documentation -Overview -The PFE Manual old manual / (book) -ChangeLog -Authors -License (LGPL) -Wordsets / (book) -Functions .. (book) -Dp of ANS Forth -The 4thTutor -Forthprimer.pdf - Old Wordsets - Old Words List Forth Links * Forth Repository * Taygeta Compilation * TinyBoot FirmWare * FiCL, Free Forth * Research Vienna * Research Bournemouth * zForth WebRing Other Links * Tektronix/MPT * Forth Org. (FIG) * Forth Inc. * MPE Ltd. Forths * SF Win32Forth * PD Win32Forth * Neil Bawd generated (C) Guido U. Draheim guidod@gmx.de | ## DOUBLE-Misc Compatibility words `2ROT``( d1,d1 d2,d2 d3,d3 -- d2,d2 d3,d3 d1,d1 )``` => `[FORTH]` the double-cell `ROT` operation. actively moves six cells, i.e.
          ( x1 x2 x3 x4 x5 x6 -- x3 x4 x5 x6 x1 x2 )
  primitive code = [p4_two_rot] `DU<``( d1,d1 d2,d2 -- flag )``` => `[FORTH]` the double-cell unsigned-is-less operation ( `U<` ) primitive code = [p4_d_u_less] `LITERAL,``( value -- )``` => `[FORTH]` take the value from stack (or cs-stack) and compile a runtime-code and the value as for `LITERAL` ... this word is never state-smart, it is not immediate, and has therefore no complications with `POSTPONE` (compare also with `COMPILE,` to make a call-stub with an exectoken) primitive code = [p4_literal_comma] `2LITERAL,``( x1,x2 -- )``` => `[FORTH]` take the double-value from stack (or cs-stack) and compile a runtime-code and the value as for `2LITERAL` ... this word is never state-smart, it is not immediate, and has therefore no complications with `POSTPONE` (compare also with `COMPILE,` to make a call-stub with an exectoken) primitive code = [p4_two_literal_comma] `DCELLS``( x -- x' )``` => `[FORTH]` computes the number of address units for the specified number of double-cells
        : DCELLS CELLS 2* ;
primitive code = [p4_dcells] `DLSHIFT``( x1,x2 y -- z1,z2 )``` => `[FORTH]` shift-left a double-cell value. The shift-count is given as a single-cell. primitive code = [p4_d_shiftleft] `DRSHIFT``( x1,x2 y -- z1,z2 )``` => `[FORTH]` shift-right a double-cell value. The shift-count is given as a single-cell. This is an arithmetic shift as for a signed double-cell value. primitive code = [p4_d_shiftright]