Re: 1-pass Assembler Design

adrian@dcs.rhbnc.ac.uk (A Johnstone)
17 Aug 1998 20:33:20 -0400

          From comp.compilers

Related articles
1-pass Assembler Design marvl@fusionmm.com (Marv Luse) (1998-08-13)
Re: 1-pass Assembler Design leichter@smarts.com (Jerry Leichter) (1998-08-16)
Re: 1-pass Assembler Design gkasten@auco.com (Glenn Kasten) (1998-08-16)
Re: 1-pass Assembler Design nr@labrador.cs.virginia.edu (Norman Ramsey) (1998-08-16)
Re: 1-pass Assembler Design ian@cygnus.com (1998-08-16)
Re: 1-pass Assembler Design adrian@dcs.rhbnc.ac.uk (1998-08-17)
Re: 1-pass Assembler Design meissner@cygnus.com (Michael Meissner) (1998-08-17)
Re: 1-pass Assembler Design kochenbu@khe.scn.de (1998-08-19)
Re: 1-pass Assembler Design jcrens@magicnet.net (Jack W. Crenshaw) (1998-08-19)
Re: 1-pass Assembler Design nr@labrador.cs.virginia.edu (Norman Ramsey) (1998-08-20)
| List of all articles for this month |

From: adrian@dcs.rhbnc.ac.uk (A Johnstone)
Newsgroups: comp.compilers
Date: 17 Aug 1998 20:33:20 -0400
Organization: Royal Holloway, University of London
References: 98-08-096
Keywords: assembler

Marv Luse (marvl@fusionmm.com) wrote:
: I have been pondering the design of a 1-pass assembler and have been
: considering schemes for dealing with forward references (i.e., jump to
: label not yet found in source code). Does anyone have any suggestions
: for a practical scheme for doing this? I have devised several
: approaches, but have limited time for investigation, so if someone
: could suggest an approach that would be great.


: [Either you have to buffer enough of your output to wait for the
: definitions, potentially buffering an entire assembly, or else you
: need an output language that permits backpatching. Or if you want to
: be really gross, you can write your output file with holes, then
: rewind it and backpatch it in place, adjusting checksums and the like
: on the way. -John]


Well, I certainly wouldn't recommend it but OEM (our esteemed
moderator) left out one option: in the late 1960's there was a British
machine called the Digico M16 which was pretty much a 16-bit version
of the 12-bit DEC PDP-8. The simple assembler for this machine ran
from the paper tape reader on a teletype and was single pass. It
didn't allow forward jumps. Great fun was had by all programmers
using this `tool'.


-- Begin plug --


Working-ish examples of this machine are held by the UK Computer
Conservation Society (of which I am the Chair of the DEC working
party) at Bletchley Park and in the Science Museum reserve store. Any
old Digico engineers looking for a hobby should get in touch.


-- gulp nigeB --


                                                        Adrian
--
Dr Adrian Johnstone, Senior Lecturer in Computing, Computer Science Dep,
Royal Holloway, University of London, Egham, Surrey, TW20 0EX, England.
Email a.johnstone@rhbnc.ac.uk Tel:+44(0)1784 443425 Fax:+44(0)1784 439786
[Jeez. Even on a real PDP-8 with a 10 cps paper tape reader, we weren't
that desperate. -John]




--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.