• Keine Ergebnisse gefunden

LAP-1192 ASSEMBLER

Im Dokument L - 119 2 CONTROLLER PROCESSOR (Seite 60-66)

6. 1 . 1 Purpose

To accept a source progran1 consisting of symbolic instructions, and to generate an object program inmachine code plus a side by side listing showing the original source instructions and the re sulting machine code.

6.1.2 Equiprnent Required

a. L-l192 processor with at least two modules (8,192 words) of core memory.

b. At least 640,000 additional characters of disk storage.

c. Typewriter, paper tape reader, paper tape punch.

6.1 . 3 Input Media

Symbolic instructions are punched into paper tape in card image (80 character records) by any off line method such as a Flexowriter.

6.1.4 Output Media

The object program listing is generated on the console typewriter. The object program outputs in a special code to the paper tape punch on the Operator Console. This code contains reloc;t1:on and parity inforrnation, in addition to machine instructions.

6-1

6.1.5 Features

1 . Allow s compilation of large prog ram s through the use of di sk mel'l1ory for storage of source and objects codes and the synlbol table.

2. Permits absolute and relocatable addressing to be used at the option of the programmer.

3. Since sym bol table s may be output and late r read back as an option, large programs or systems of programs may be com-piled in segments.

6.1.6 Input Format

The input is described here in card format, since card to paper tape IS a common method for generating input tapes.

CARD FORMAT

VARIABLE FIELD PROGRAM

ID AND CARD

LOCATION OP

SYMBOL CODE R, ADDRESS, X REMARKS SEQUENCE

I 89 10 I 5 1 7 72 73

I . Location Sym bol

Thi s field may contain a symbolic addre s s of up to 8 characte r s in length. Symbols may consist of any combination of letters and numbers, with the restriction that the left-most character must be a letter. A symbol in this field of an instruction card will enter the symbol table with the current value of the loca-tion counte r.

6-2 80

2. OP Code

The operation code must be punched left justified in this field.

If indirect addressing is desired, a (*) is punched immediately after the last character of the ope r;:tli(J11 code.

3. Variable Field

This field contains the paralneters to be placed in the R, W/C, and X fields of the instruction. In the event the operation code define s the R field, this paramete r must not be coded. The first parameter defined in this case must be the address.

All fields nlay contain either symbolic or absolute data. Abso-lute data will be treated as decimal. The parameter (*) by

itself will result in the use of the current contents of the location counter for the value. Address arithIT1etic limited to addition (+), subtraction (-) qnd nlultiplication (*) is allowed.

After the last parameter of the variable field, a blank must appear. Following this, any desired remarks may be punched.

The se will appear on the output listing.

4. Program ID and Card Sequence

Any de sired information may be punched into the se columns.

6.1.7 Pseudo-Ope rations

In addition to assembling machine instructions, the LAP-1192 Assembler will also accept and process pseudo-operations. These are used to

control the assembler and to perform special operations with the object program. Each of these pseudo-operations is described below.

1. ORG

Sets the location counter to the value specified in the variable field. If the location field contains a symbol, it will be defined as the location counter values after setting. The parameter in the variable field may be octal, decirnal, or symbolic. The normal para,meter is octal. A decil'nal value is preceeded by

6-3

(D/). A syn1bolic value consists of a previously defined synlbol, and does not contain any special characters.

2. END

Ends the acceptance of the source program and starts the second pass of the assernbler. If the variable field contains an address, the object program will contain information to cause a branch to that address when loading is cornpleted. If no address is supplied, loading will halt when the program ha s been loaded.

3. DEF

The sy.rn bol contained in the location field is defined in te rm s of the parameter in the variable field. If the variable field contains a nUlnber, the defined syrnbol will always be absolute. If the variable field contains a syrn bol, the sym bol in the location field will be defined according to the following process:

a. If the variable field is preceded by (AI)' the defined symbol will unconditionally be absolute.

b. If the variable field is preceded by (R/), the defined symbol will unconditionally be relocatable.

c. If the variable field is not preceded by any specifier, the defined symbol will be absolute or relocatable according to the evaluation of the variable field.

4. OCT

The next location in the object program will contain the octal quantity appearing in the variable field.

5. DEC

The next location in the object program will contain the octal equivalent of the decimal expre s sion appearing in the variable field.

6-4

6. BCD

The first 4 characters punched in the variable field will be stored in the next location in the object program in BCD code.

Illegal characters will be translated as blanks.

7. HEX

The 8 hexadecimal characters punched in the variable field will be placed in the next location in the object program. In hexa-decirnal code, the first 6 letters of the alphabet are used for tho se value s above 9.

8. VFD

The variable field is evaluated and used' to make up an L-119Z word. Each subfield is set off by a comma. The general format of the variable field of a VFD operation if VFD Fn/PI,

Fn/P

z ...

Fn/Pi, where:

a. F: The forrnat of the subfield D

=

Decimal

0

=

Octal

B

=

BCD

H

=

He xade cim al S

=

Symbolic

b. n: The number of bits in the field c. P.:

1 The parameter to be placed in this subfield.

The subfield identified as PI will occupy the most significant bits of the next location of the object program. If rnore bits are specified than exist in a single word, the VFD operation will extend on to additional words as required.

9. BLK

A space of the size specified by the expression in the variable field will be re se rved at this point in the 0 bject progranl. If a symbol is used in the variable field, it ~ be previously defined.

6-5

10. PST

The syrnbol table will be punched out at the end of the first pass.

It will be in suitable forrn for input to LAP-1192 as described in the following operation.

11. RST

The read symbol table operation is not currently available to LAP-1192. It rna y l;>e sirnulated by turning on breakpoint switch No.1. If this is done, the symbol table I1lust be input before the symbolic souce program is read in.

12. ABS

Produce s an absolute addre ss object program.

13. REL

Produces a relocatable address object program.

14. REM

The entire variable field will appear in the output listing as a remark. It will not affect the object program.

15. TITLE

If the first one or two cards of the source deck carry the OP code of TIT LE, then variable fields will appear at the top of each page of the output listing as a program title. If the TIT LE

pseudo-op appears anywhere else in the source deck, it will be treated as REM.

6. 2 SY STEM LOADER

The system loader loads programs into core memory via the paper tape reader. The loader itself is self-relocating, and will load absolute or relocatable programs.

6-6

Im Dokument L - 119 2 CONTROLLER PROCESSOR (Seite 60-66)