ASSEMBLER REFERENCE MANUAL TABLE OF CONTENTS INTRODUCTION vi CHAPTER 1 GENERAL DESCRIPTION 1-1 1.1 Assembly Processing 1-1 1.2 Symbolic Addressing 1-1 1.3 Program Relocation 1-3 1.4 Program Location Counters 1-3 1.5 Assembly Options 1-4 CHAPTER 2 INSTRUCTION FORMAT 2-1 2.1 Statement Characteristics 2-1 Field Delimiters 2-1 Character Set 2-1 Statement Length 2-3 2.2 Label Field 2-3 Label Symbol 2-3 Asterisk 2-5 2.3 Opcode Field 2-5 2.4 Operand Field 2-5 Symbolic Terms 2-6 Numeric Terms 2-7 Asterisk 2-5 ? Expression Operators 2-7 Evaluation of Expressions 2-8 Expression Terms 2-9 Absolute and Relocatable Expressions 2-9 Literals 2-11 Indirect Addressing 2-12 Base Page Addressing 2-13 Clear Flag Indicator 2-13 2.5 Comments Field 2-13 CHAPTER 3 MACHINE INSTRUCTIONS 3-1 3.1 Memory Reference 3-1 Jump and Increment-Skip 3-2 Add, Load, and Store 3-2 Logical Operations 3-3 3.2 Register Reference 3-4 Shift-Rotate Group 3-4 No-Operation Instructions 3-5 Alter-Skip Group 3-6 3.3 Input/Output, Overflow and Halt 3-7 Input/Output 3-8 Overflow 3-9 Halt 3-10 3.4 Extended Arithmetic Unit 3-11 3.5 Floating-Point Instructions 3-13 CHAPTER 4 PSEUDO INSTRUCTIONS 4-1 4.1 Assembler Control 4-1 NAM ORG 4-1 ORR 4-2 ORB 4-3 IFN IFZ 4-4 REP 4-6 END 4-7 4.2 Object Program Linkage 4-8 COM 4-8 ENT EXT 4-10 4.3 Address and Symbol Definition 4-11 DEF 4-12 ABS EQU 4-15 4.4 Constant Definition 4-17 ASC 4-17 DEC 4-18 DEX 4-20 OCT 4-22 4.5 Storage Allocation 4-23 BSS 4-23 4.6 Assembly Listing Control 4-23 UNL 4-23 LST SUP UNS 4-24 SKP SPC HED 4-25 4.7 Arithmetic Subroutine Calls 4-26 MPY DIC FMP FDV 4-26 FAD FSB DLD DST 4-27 CHAPTER 5 ASSEMBLER INPUT AND OUTPUT 5-1 5.1 Control Statement 5-1 A R B L 5-1 T H Z F 5-2 5.2 Source Program 5-3 5.3 Binary Output 5-3 5.4 List Oputput 5-3 APPENDIX A HP CHARACTER SET A-1 BINARY CODED DECIMAL FORMAT A-2 Kennedy 1406/1506 ASCII -- BCD A-2 HP 2020A/B ASCII - BCD A-3 APPENDIX B ASSEMBLER INSTRUCTIONS B-1 MACHINE INSTRUCTIONS Memory Reference B-2 Register Reference B-2 Input/Output, Overflow, and Halt B-4 Extended Arithmetic Unit B-5 PSUEDO INSTRUCTIONS Assembler Control B-6 Object Program Linkage B-6 Address and Symbol Definition B-6 Constant Definition B-7 Arithmetic Subroutine Calls Requests B-7 Assembly Listing Control B-8 APPENDIX C ALPHABETIC LIST OF INSTRUCTIONS C-1 APPENDIX D SAMPLE PROGRAMS D-1 File Parts Update D-1 Sample Assembler Symbol Table Output D-3 Sample Assembler List Output D-4 Calculating Distance D-9 APPENDIX E SYSTEM INPUT/OUTPUT SUBROUTINES E-1 Memory Allocation E-1 Operation and Calling Sequence: Paper Tape Devices E-2 Register Contents E-2 Operation and Calling Sequence: Magnetic Tape Driver E-3 Register Contents E-3 Linkage Address E-4 Magnetic Tape Operations E-4 Read E-4 Write E-5 Write End-of-File E-6 Rewind E-6 Position E-6 Rewind/Standby E-7 Gap E-7 Status E-7 Additional Linkage Addresses E-10 Buffer Storage Area E-10 Record Formats E-10 2020 7-Level Tape E-12 3030 9-Level Tape E-12 Operating and Calling Sequence: Mark Sense Card Reader E-13 Register Contents E-13 APPENDIX F FORMATTER F-0 Calling Sequences F-0 Format Specifications F-2 Example F-3 APPENDIX G ASSEMBLY ERROR MESSAGES G-1 APPENDIX H CONSOLIDATED CODING SHEET H-1