• Keine Ergebnisse gefunden

CODING FORM

Im Dokument DATA PROCESSING DIVISION (Seite 23-28)

ASSEMBLY SYSTEM

3.2. CODING FORM

3. INTRODUCTION TO

THE UNIVAC 1005

ASSEMBLY SYSTEM

Most of the programs for the UNIVAC 1005 will be written in the language of the UNIVAC 1005 Assembly System. The UNIVAC 1005 Assembly System provides the programmer with the necessary functions and convenience described in the preceding section. The use of instruction forms not described in this manual deviates from UNIV AC recommendations and must be the user's responsibility.

3.1. TERMINOLOGY DEFINITIONS

Alphabetic means a letter from the English alphabet (A through Z) Numeric means an Arabic numeral (0 through 9)

Alphanumeric means the entire 64 character set of the UNIVAC 1005 which includes letters, numbers, and special characters.

3.2. CODING FORM

A coding form to be used to record the programmers instruction for subse quent key punching and processing by the UNIVAC 1005 Assembler program is shown in Appendix A. The coding form is set up in the same format as the punched card, and contains an indication of the card columns to be used for each field.

3.2.1. LABEL Columns 1 through 5 LABEL

!

I I : .1

I

This field is provided for the symbolic Labels assigned to those lines of coding which are referenced by the object program instructions. A Label may consist of from one to five characters (inclusive) and must begin in column 1 of the field.

The first (left-most) character of a Label must be an alphabetic character. The remainder of the characters in

a

Label can be Alphabetic or Numeric. There is no limit to the number of Labels in a source program. However, if the number of labels exceeds the limit of the Assembler (approximately 40 labels for the 2 Bank Assembler and 310 labels for the 4 Bank Assembler) extra processing is required by the Assembler program. This is fully explained in the section on Operating the Assembler System. Five positions are provided in the Label field to allow meaningful assignment of programmer names. However, only the left-most three positions of a Label are significant to Assembler processing. The first three positions of each Label must be unique within a program. Extreme care should be taken when creating Labels.

1

PAGE:

UP-4084

UNIVAC 1005

ASSEMBLER·SO

SECTION.

3

Labels used in a single program must be unique and may appear only once in the Label field. Labels will be used in the Operand address portion of instruction lines and may appear there as often as necessary. The explanations in this manual of the use of the relative coding technique of increments and decrements to Labels should enable the programmer to address the data in his program without an excess of Labels.

The Label of a line of coding becomes the symbolic address for the left-most

(MSL) position of the instruction, and is used whenever the instruction is referenced.

Labels are also used for the lines of coding which define data areas, and become the symbolic address for the left-most (MSL) position of the area set aside for data.

Since not all1ines of coding require a label, the field may be left blank. Some examples of labels are:

LABEL

1

B~E,G:I ! IN

I I , I S TI AI Rt T

I I I

i

I

I N,EIT: I

I I I .& II : ,

I

I OPERATION

3.2.2. OPERATION Columns 6 through 10 6

I , I I

This field is for the mnemonic operation codes provided by the Assembler.

Operation codes are usually alphabetic. The majority of Assembler Operation codes are two characters in length, and must begin in column 6.

2

PAGE:

o

c

c

UP-4084

(~-UNIVAC 1005

ASSEMBLER-80

Some examples of Operation codes are:

OPERATION

6

T,A 't DI A. DI I I SIU 1 I I M1U1

o.VI I EINID I

3.2.3. OPERAND 1

3

SECTION,

OPERAND 1 I. FIELD A ± INC.

A.

* 12 18

I I I

This is a heading for those columns which are normally used to specify the address of the MSL or LSL of OP 1 depending on the ascending or descending mode of the instruction. This portion of the coding form is also used for other purposes, since not all Operations involve an Operand 1. The following descrip-tion of the OPERAND 1 fields is based on the normal use to specify OP 1

addresses. A complete explanation of Operand 1 addressing begins in Section 3.3.

3.2.3.1. IA Column 11

This column is used to indicate Indirect Addressing. When the OP 1 of an in-struction is a primary address, an asterisk (*) is placed in this column. It must be left blank at all other times.

3.2.3.2. FIELD A Columns 12 through 16

This fie-Idof the form will normally contain a programmer's symbolic address for the location of instructions and data within his program. Any Labels which appear here must also appear in the LABEL field of some line of coding. Field A is a five position field for OP 1 Labels which always begin in column 12.

3.2.3.3. ± INC Columns 17 through 20

These columns are normally used to indicate an increment to the address as-signed to a Label. Increments are shown in decimal numbers. If column 17 contains a plus sign (+) the increment is added. If column 17 contains a minus

3

PAGE,

UP-4084 UNIVAC 1005

ASSEMBLER-SO

SECTION:

3

sign (-) the increment becomes a decrement and is subtracted from the Label address. Increments must be left-justified (begin in column 18). Some examples of OPERAND 1 addresses are:

OPERAND 1 I. FIELD A ± INC.

A. * 12 18

D.E T CD

CIAITII - 11 I I I i I I I

*

IIAl11 I

OPERAND 2

I. FIELD B ± INC. FIELD C ± INC.

A. * 22 28 32 38

I I I I I I I I

3.2.4. OPERAND 2

This is a heading for those co lumns which are normally used to specify the MSL and LSL addresses of Operand 2 in the instruction. This portion of the form is also used for other purposes. The following description of the OPERAND 2 fields is based on the normal use to specify OP 2 addresses. A complete description of OPERAND 2 addressing is found in Section 3.3.

3.2.4.1. lA, FIELD B, ± INC Columns 21 through 30

These fields are normally used to specify the most significant location (MSL) of OP 2. The description of the contents of these fields is the same as the description of the contents of OPERAND 1.

3.2.4.2. FIELD C, ± INC Columns 32 through 40

These fields are normally used to specify the least significant location (LSL) of OP 2.

NOTE: The indication for OP 2 Indirect Addressing is in column 21 only.

Column 31 is not used as part of the specification for OP 2 LSL.

The description of FIELD C and ± INC is the same as the corresponding fields of OPERAND 1.

4

PAGE:

o

o

UP-4084

During the assembly processing, the Assembler program assigns a consecutive number to the output cards in the object program deck. The Assembler assigned

UP-4084

UNIVAC 1005

ASSEMBLER-SO 3 6

i;

SECTION: PAGE:

---~---~---~~~~--~~~~----I

Im Dokument DATA PROCESSING DIVISION (Seite 23-28)