Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!mit-eddie!uw-beaver!tektronix!tekcrl!tekgvs!toma From: toma@tekgvs.LABS.TEK.COM (Tom Almy) Newsgroups: comp.lang.forth Subject: Re: 32-Bit FORTH Message-ID: <5445@tekgvs.LABS.TEK.COM> Date: 26 Jun 89 16:12:40 GMT References: <865@pcsbst.UUCP> Reply-To: toma@tekgvs.LABS.TEK.COM (Tom Almy) Organization: Tektronix, Inc., Beaverton, OR. Lines: 39 In article <865@pcsbst.UUCP> rht32!hgw@pcsbst.UUCP () writes: >Now, I want to port it to an environment where integers and >addresses are 32 bit wide (since I want to address all of the >memory in the machine). >Since I am not familiar with 32-bit FORTHS, I have some >questions: I am familiar with two Forths from Laboratory Microsystems, Inc, PC/Forth+ (which is a 32 bit Forth that runs in a 16bit 8086 environment, linearizing the !@#$ segment addresses) and UR/Forth 386, which is a 80386 protected mode Forth. >o Does a 32-bit FORTH imply that a 16-bit data type is not > available? By no means! You need them for accessing data files written by 16 bit programs, and (at least for MS/DOS) to communicate with the OS. >o How are 16-bit loads & stores implemented? > (perhaps S! and S@ ?!) We are entering the world of non-standards here. LMI uses W@ W! and UW@, because in Intel nomenclature, 16 bit data is Word data. Note that W@ does a sign extension, while UW@ is unsigned. >o How are character strings stored in memory? > (4 characters per word, or 1 character and 3 chars free) 4 characters per word. C@ and C! work just like in their 16 bit Forth counterparts. >o Is there any standard for 32-bit FORTHS out there? Not yet. But the new ANSI Forth Standards Team is addressing the issue. Tom Almy toma@tekgvs.labs.tek.com (Claimer: I do have a financial connection with LMI, but I'm not getting rich)