Penguin
Note: You are viewing an old revision of this page. View the current version.

Code that can run from any position in memory. All jumps and calls are relative to the current ProgramCounter. Data is referenced either via an offset from a register or via the PC as well (for constant data and SelfModifyingCode?). Commonly used with processors such as the Motorola6809? and the 680x0 (though the Motorola68000? lacked a 32-bit relative jump, so code was limited to 32KB (or 64KB with some ordering, unless you make use of JumpIslands?). The x86 uses SegmentedMemory? instead, so the programs are always loaded at a fixed offset.