This manual describes the PDP-7 Symbolic Assembler, a program designed to simplify digital computer programming by allowing the use of mnemonic codes and symbolic names instead of binary numbers. It details the Assembler's features, source language, program preparation, output, and operational procedures.
Key features include:
- Symbolic Language: Enables programming with easily recognized mnemonic instruction codes and symbolic names for memory locations, simplifying coding, debugging, and program modification.
- Pseudo-instructions: Supports special commands like DECIMAL and OCTAL for number interpretation, VARIABLE for automatic storage assignment, and PUNCH for binary output.
- Assembler System: Comprises the Assembler and the FF Loader (Digital 7-1-1). The Assembler processes a source program (ASCII or FIODEC code) in one pass, producing an object tape in FF Binary code. The FF Loader then loads this binary program into the computer for execution, handling tasks like resolving undefined symbols and setting up constant tables.
- Memory Configuration: Requires a basic 4K memory, teleprinter, tape reader, and punch. Extended versions allow for larger symbol storage in 4K or 8K machines.
- Output: Generates an object tape (FF Binary) with a title, the FF Loader, starting block, data blocks, and a termination block. It also provides error messages during assembly and allows for printouts of user-defined symbols in alphabetic or numeric order.
- Symbol Handling: Manages location counters, symbolic address tags, literals (constants), and variables (designated by # or $). It allows for the definition and redefinition of symbols and permanent symbols.
- FORTRAN Assembly System (Appendix 3): A modified version of the Assembler that produces relocatable object programs, incorporating linking pseudo-instructions (EXTERNAL, INTERNAL, LIBFRM) to manage subroutine calls and library routines across different program segments. Relocatable programs are loaded by a Linking Loader and conserve memory by packing programs consecutively.
The manual also provides detailed operating instructions for loading and running the Assembler, controlling assembly options via console switches, and interpreting various error messages and halts during assembly and loading.