Version 5 of Assembler

Updated 2004-08-10 20:59:05 by GPS

An Assembler is a program that converts a human-readable (and, more particularly, human-writable) form of machine instructions (often called Assembly Language or Assembler) into a machine-readable form.


There are often several different machine-readable forms of output possible.

  • Linkable, absolute location formats
  • Nonlinkable, absolute location formats
  • Linkable, relocatable formats
  • Nonlinkable, relocatable formats

The key question with regard to the machine-readable format is, What are the capabilities of the tool chain programs that come after the assembler? There must be a loader (which loads the code into the executing machine's memory); there might be a linker (which combines different programs together into a single loadable program). The loader might be an absolute or relocating loader. These two processing programs are often underspecified and ignored, but they are crucially important to real program operation. -- escargo 9 Aug 2004


CL has been thinking about writing an explanation of why Tcl and assembly language can be good partners, a practice briefly described in, for example, "Programming down to the Silicon" [L1 ].

In the meantime, here's a reference to the Mac OS X Assembler Guide [L2 ].


IA-32/x86 assembler in Tcl


See also Playing Assembler for some 8080 memories...