Text preview for : TIE6309-0235_1401pgmrsGuide.pdf part of IBM TIE6309-0235 1401pgmrsGuide IBM 140x TIE6309-0235_1401pgmrsGuide.pdf



Back to : TIE6309-0235_1401pgmrsGui | Home

ITEM NUMBER 6309-0235 (T.I. ~.)
27 pages
I)ATE July 31, 1963


AUTHOR Paul I. Bartholet


TITLE 1401 PROGRANllv1ERS GUIDE - ELIZABETH OFFICE


SOURCE IBM CORPORATION
570 North Broad Street
Elizabeth, New Jersey




Thtg paper la 1n the author'g orlginal form.
The objective In prov1dlng th1g copy i8 to
keep you Informed 1n your f1eld of Intereflt.
Pleaae do not distrlbute th1s paper to per aona
outoide the IBM Company.




IBM CONFIDENTIAL




. 'STRIBUTED BY
6309 0235
THE: PROGFlAM INFORMATION DEPARTMENT (TIE)
IBM CORP.
11 Z EAST POST ROAD
WHITE PLAINS .. NY
TABLE OF CONTENTS


Section I .- Internal Programming Techniques

Index Regis ters 1
Summary of Halt Techniques 2
Summary of Negative Zeros 3
Ari thmetic Overflow 4
Console Entry 4
Other 5

Section II - Package Programs

Autocoder 7
SPS 7
IOCS 8
RDLIN 10
RPG 11
FARGO 11
AUTOTEST 12
SORT II 14

Section III - Random Access

1405 Testing 16
1311 Direct Seek 16
1311 - Other 19

Section IV - Magnetic Tape

Reading and Writing Tape 24
Tape Marks 25
SECTION I

INTERNAL PROGRAMMING TECHNIQUES


A. Index Regis ters

1. Timing

Indexed instructions require three to four additional II I
II


cycles per addres s indexed and therefore us e additional
process time. For example the time to move ten
characters with and without indexing is as follows:

Wi thou t indexing 322.0 us
One address indexed 356.5 us
Both addresses indexed 391.0 us

As can be seen, indexing increases the process time by
more than 10% and 20% respectively. While indexing easily
outperforms address modification in terms of both time and
core, it may not provide the best solution when dealing 'Nith
fields in a tape I/O area. In this case every instruction
referring to the I/O area is indexed and the total process time
is substantially increased. The use of a work area would
reduce this increase in process time but would use more core
storage. If core is available, a work area should be con-
sidered especially if i terati ve routines (e. g. programmed
multiplication) are a basic part of the program or if a slight
increase in the process time could cause a missed clutch
point on the card reader or punch.

2. Testing an Incremented Address

When testing an incremented address I remember that the
result of a comparison is in accordance with the 1401
collating sequence. Therefore I a test of the address "965"
would indicate that it was higher than IIU65 (1465).
11




- 1 -
3. Incrementing index registers

No circuitry is available in any positions of 1401
memory to allow unit position bit generation on add
over:flow conditions. Therefore, a straight add
instruction will not properly increment an index
register equal to or higher than the next 4K multiple
over the initialized value. In such cases, the units
position zone bits are properly generated only when
the Modify Address Instruction is used.

4. Ini tiali zing ind registers

When initializing n index regi r, use an "LCA"
instruction rather t The ZA causes zoning over
the units position an , t s, gives an effective address
of a higher module of mory. Once initialized, incre-
menting with an A II suction is correct and will not
II