• Keine Ergebnisse gefunden

USE OF THE CODING SHEET

Im Dokument The Computer Concepts (Seite 119-123)

The identifying information at the top of the coding sheet (''Program,'' ''Programmed By," and "Date") is not part of the source program and

100

IBM

~

Program _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Progrommed by _ _ _ _ _ _ _ _ _ _ _ _

LINE LABEL OPERATION OPERANDS ~ REMARKS

, 6 II 12 15 16 20 25

1620 Symbolic Programming System Coding Sheet

Dote _ _ _ _ _

30 '0

Page No.

W

of _ _ _ _

60 65 70 10

~IOLU~~~-L-L~~-L-L+_~~-LJ-~~~L-L-L, , I " !-L.~'_L_L~~_J_L_L~~_L_LJ_~~'~!_"_.~I_L_L~~LJ_L_L_~~_L_L_L~~~_L~

10.3

10, •

.

.

! I I

I I 0

I 3 0

I • 0 I • 0 I 6 0

I 1 0

2 0 0

Fig. 11.1 Sample of a 1620 SPS Coding Sheet.

102 The Symbolic Programming System is not punched in the source tape or card deck.! It is used to prevent mix-up of programs while the coding is in the source document.

PAGE NUMBER

The 2-character page number will be punched as the first characters of each source statement. Although there are no "columns" in a paper tape, we will be able to identify position if we call the first punching location "column 1." The page number (00-99) is punched in columns 1 and 2 of the card and tape systems. Their function is to sequence the coding sheets and also to allow for sorting cards in the event that they are out of order. (Card dropping is a hazard of the profession.) The processor does not check for sequential or multiple page numbering.

This is the programmer's responsibility.

LINE NUMBER

The 3-character line number is punched contiguous to the page number in columns 3-5 of both card and tape systems. Its function is to sequence the statements on each coding sheet.

The first 20 lines are prenumbered 010-200. The six unnumbered lines at the bottom of the page are provided for the entry of statements inadvertently omitted and/or for sheet extension. 1£ a statement is omitted and added at a later time, its line number should fall between those statements where the correction is to be inserted. It will be noted that provision has been made for up to nine such insertions. If more are required, it is possible to give a multiplicity of statements the same line number. However, this partially defeats the purpose of having the line number. Insertions of the type discussed must be placed in their proper sequence when a source program is being assembled since assembly is a serial process and sequence of line numbers is not checked. Thus, a statement out of order will be assembled out of order.

LABEL

The 6-character label is a symbolic name chosen by the programmer and is punched in columns 6-11 in both card and tape systems. It is not necessary to utilize all six positions of the label field. A label is usually associated with an area being defined or an instruction referred to else-where in the program. All labels are assigned addresses in storage during

! The physical preparation of tape and/or cards is referred to throughout this and subsequent chapters as punching. There is a variety of devices used for preparation of source program information.

The Symbolic Programming System 103 the assembly. A reference to a label in the program is a reference to the address of the area or instruction which bears that label. Although any statement may be labeled, unnecessary labels delay the process of assembly. Consequently, only those items specifically referred to else-where in the program should be labeled. Instructions and declaratives that are unlabeled should contain blanks in columns 6-11.

LABEL RULES

The number of labels permitted in the symbol table is a function of the core available and the size of the labels employed. In a 20,000-core-position 1620, approximately 170 6-character labels are permitted.

It is wise to choose labels that have high mnemonic values. Labels that have obvious meanings provide easily remembered references for the programmer and also assist others who may assume responsibility

The 4-digit operation field contains the mnemonic representation of (1) machine language operation codes, (2) declaratives, and (3) macro-instructions (to be discussed in Chapter 13). Punching in the operation field is in columns 12-15 of both card and tape systems.

A complete list of mnemonic machine language operation codes may be found in Table 10.1. Actual 1620 machine codes in their numeric form are also permitted but, in this case, checking by the processor is not performed to determine if the numeric OP code is valid.

104 The Symbolic Programming System OPERANDS AND REMARKS FOR INSTRUCTIONS

If the input to the processor is an instruction rather than a declarative, the operands and remarks section may contain, at most, 4 items separated by commas. The entire statement must be terminated by an ElL char-acter in the paper tape system. This restriction is not applicable in the card system, but the presence of the record mark (0-2-8) as the last element of a statement will not affect the processing. Missing operands are noted by using commas in their place.

Three of the four permitted items are operands and the fourth item, if present, is a comment which has no effect on the assembly. Such remarks, if present, are printed during a listing of the assembled program.

The purpose of these comments is to enable one to identify the effect of certain instructions. It is quite easy to forget why one put this or that instruction in the program in the first place. Such comments and remarks can be quite useful if one returns to a program after a prolonged period of inactivity. The first three items are referred to respectively as the P, Q, and Flag operands.

1. p Operand-This portion may be either a symbolic, absolute, or asterisk address 2 and will assemble as the P portion of the object level instruction.

2. Q Operand-This portion may be either a symbolic, absolute, or asterisk address and will assemble as the Q portion of the object level instruction.

3. Flag Operand-This item is always numeric and is used to set flags in the assembled instruction.

Any instruction may have 0, 1, 2, 3, or 4 items in the "operands and remarks" portion of the coding sheet. These are punched in columns 16-75 in both the card and tape systems. In the card system, columns 76-80 are not utilized and may contain identifying information if it is so desired.

OPERANDS AND REMARKS FOR DECLARATIVES

The number of items in a declarative field is variable depending upon the declarative chosen. Each declarative will be discussed separately.

Punching of declarative operands and remarks occupies columns 16-75, as do punching of instruction operands and remarks.

Im Dokument The Computer Concepts (Seite 119-123)