The Burroughs B5000 was the first stack machine and also the first computer with a segmented virtual memory. The Burroughs B5000 instruction set includes the set of valid operations for the B5000, B5500 and B5700. It is not compatible with the B6500, B7500, B8500 or their successors.
Instruction streams on a B5000 contain 12-bit syllables, four to a word. The architecture has two modes, Word Mode and Character Mode, and each has a separate repertoire of syllables. A processor may be either Control State or Normal State, and certain syllables are only permissible in Control State. The architecture does not provide for addressing registers or storage directly; all references are through the 1024 word Program Reference Table (PRT), current code segment, marked locations within the stack or to the A and B registers holding the top two locations on the stack. Burroughs numbers bits in a syllable from 0 (high bit) to 11 (low bit) and in a word from 0 (high bit) to 47 (low bit).
Word Mode
In Word Mode, there are four types of syllables.
B5x00 Word Mode Syllables5Bits10-11 | Syllable Type | Bits 0-96 |
---|---|---|
0 | Literal Call | integer value |
1 | Opcode | Operation |
2 | Operand Call | Relative address |
3 | Descriptor Call | Relative address |
The interpretation of the 10-bit relative address in Operand Call and Descriptor Call depends on the setting of several processor flags. For main programs (SALF off) it is always an offset into the Program Reference Table (PRT).
B5x00 Relative Addressing7SALF8 | T0A38 | T1A39 | T2A40 | MSFF9 | Base | Contents | Index Sign | IndexBits10 | MaxIndex | |
---|---|---|---|---|---|---|---|---|---|---|
OFF | - | - | - | - | R | Address of PRT | + | T 0-9A 38-47 | 1023 | |
ON | OFF | - | - | - | R | Address of PRT | + | T 1-9A 39-47 | 511 | |
ON | ON | OFF | - | OFF | F | Address of last RCW11 or MSCW12 on stack | + | T 2-9A 40-47 | 255 | |
ON | ON | OFF | - | ON | (R+7)13Bits 18-32 | F register from MSCW14 at PRT+7 | + | T 2-9A 40-47 | 255 | |
ON | ON | ON | OFF | - | C15 | Address of current instruction word | + | T 3-9A 41-47 | 127 | |
ON | ON | ON | ON | OFF | F | Address of last RCW16 or MSCW17 on stack | - | T 3-9A 41-47 | 127 | |
ON | ON | ON | ON | ON | (R+7)18Bits 18-32 | F register from MSCW19 at PRT+7 | - | T 3-9A 41-47 | 127 | |
Notes: |
Character Mode
References
"5 Word Mode Operation", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, pp. 5-1 – 5-21, 1021326 http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"6 Word Mode Syllables and Operators", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, pp. 6-1 – 6-32, 1021326 http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"7 Character Mode Operation", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, p. 7-1 – 7-7, 1021326 http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"8 Character Mode Operators", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, p. 8-1 – 8-9, 1021326 http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"5.5. Syllable Type", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, p. 5-2, 1021326. http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"5.6. Bits 0-9", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, p. 5-2, 1021326. http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
"5.9. Relative Addressing", Burroughs B5500 Information Processing Systems Reference Manual (PDF), Systems Documentation, Burroughs Corporation, May 1967, p. 5-4, 1021326 http://bitsavers.org/pdf/burroughs/LargeSystems/B5000_5500_5700/1021326_B5500_RefMan_May67.pdf ↩
SALF Subroutine Level Flipflop ↩
MSFF Mark Stack FlipFlop ↩
For Operand Call (OPDC) and Descriptor Call (DESC) syllables, the relative address is bits 0-9 (T register) of the syllable. For Store operators (CID, CND, ISD, ISN, STD, STN), the A register (top of stack) contains an absolute address if the Flag bit is set and a relative address if the Flag bit is off. ↩
RCW Return Control Word ↩
MSCW Mark Stack Control Word ↩
F register from MSCW at PRT+7 ↩
MSCW Mark Stack Control Word ↩
C (current instruction word)-relative forced to R (PRT)-relative for Store, Program and I/O Release operators ↩
RCW Return Control Word ↩
MSCW Mark Stack Control Word ↩
F register from MSCW at PRT+7 ↩
MSCW Mark Stack Control Word ↩