ARRAY EXAMPLE 4
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
000000 2 P1 START
000000 05C0 3 BALR 12,0
00002 4 USING *,12
5 * OBJECTIVE TO SEE SOME SIMPLE DO LOOPS WITH ONE-DIMENSIONAL
6 * ARRAYS
7 * A: ARRAY[0..10] OF INTEGER;
8 * FOR I := 1 TO 4 DO
9 * A[I] := I
10 * END;
11 * SUM:=0;
12 * FOR I:=1 TO 4 DO BEGIN
13 * SUM:=SUM+A[I]
14 * END;
000002 5810 C082 00084 15 L 1,F1 R1 IS THE COUNTER I; NOW 1
000006 5010 C0B6 000B8 16 ST 1,I
0000A 17 LOOP1 EQU *
00000A 5810 C0B6 000B8 18 L 1,I
00000E 5910 C086 00088 19 C 1,F4
000012 4720 C03A 0003C 20 BC 2,LOOP1E
000016 4120 C08A 0008C 21 LA 2,A R2 HAS THE ADDRESS OF A
00001A 5830 C0B6 000B8 22 L 3,I
00001E 1A33 23 AR 3,3
000020 1A33 24 AR 3,3 R3 NOW HAS THE OFFSET OF A(I) FROM BEG. OF
000022 1A23 25 AR 2,3 R2 HAS THE ADDRESS OF A(I)
000024 5840 C0B6 000B8 26 L 4,I R4 NOW HAS WHAT WE WANT TO STORE: R4 = I
000028 5040 2000 00000 27 ST 4,0(0,2) NOW I IS STORED IN A(I)
00002C 5810 C0B6 000B8 28 L 1,I
000030 5A10 C082 00084 29 A 1,F1
000034 5010 C0B6 000B8 30 ST 1,I
000038 47F0 C008 0000A 31 B LOOP1
0003C 32 LOOP1E EQU *
00003C 1B55 33 SR 5,5
00003E 5050 C0BA 000BC 34 ST 5,SUM
000042 5810 C082 00084 35 L 1,F1
000046 5010 C0B6 000B8 36 ST 1,I
0004A 37 LOOP2 EQU *
00004A 5810 C0B6 000B8 38 L 1,I
00004E 5910 C086 00088 39 C 1,F4
000052 4720 C07E 00080 40 BC 2,LOOP2E
000056 4120 C08A 0008C 41 LA 2,A R2 HAS THE ADDRESS OF A
00005A 5830 C0B6 000B8 42 L 3,I
00005E 1A33 43 AR 3,3
000060 1A33 44 AR 3,3 R3 NOW HAS THE OFFSET OF A(I) FROM BEG. OF
000062 1A23 45 AR 2,3 R2 HAS THE ADDRESS OF A(I)
000064 5850 C0BA 000BC 46 L 5,SUM
000068 5A50 2000 00000 47 A 5,0(0,2) R5 = SUM + A(I)
00006C 5050 C0BA 000BC 48 ST 5,SUM
000070 5810 C0B6 000B8 49 L 1,I
000074 5A10 C082 00084 50 A 1,F1
000078 5010 C0B6 000B8 51 ST 1,I
00007C 47F0 C048 0004A 52 B LOOP2
00080 53 LOOP2E EQU *
54 *
000080 07FE 55 BR 14
i 56 *
ARRAY EXAMPLE 4
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
000082 0000
000084 00000001 57 F1 DC F'1'
000088 00000004 58 F4 DC F'4'
59 *
00008C 0000000000000000 60 A DC 11F'0' LAST SUBSCRIPT IS TEN
0000B8 61 I DS F
0000BC 62 SUM DS F
63 END