DEMONSTRATE MACRO WITH MOVE BYTE MACRO
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
2 MACRO
3 MOVE &A,&B,&LENGTHA,&LENGTHB
4 .* MOVES A TO B,ASSUMES REGISTERS 0-4 ARE AVAILABLE
5 L 0,&LENGTHA
6 C 0,&LENGTHB
7 BC 4,IF&SYSNDX
8 L 0,&LENGTHB
9 IF&SYSNDX EQU *
10 LA 1,&A
11 LA 2,&B
12 SR 3,3
13 L1&SYSNDX EQU *
14 CR 3,0
15 BE L2&SYSNDX
16 IC 4,0(0,1)
17 STC 4,0(0,2)
18 A 3,=F'1'
19 A 2,=F'1'
20 A 1,=F'1'
21 B L1&SYSNDX
22 L2&SYSNDX EQU *
23 MEND
24 *
25 *
000000 26 P1 START
000000 05C0 27 BALR 12,0
00002 28 USING *,12
29 * YOUR PROGRAM GOES HERE
30 MOVE A,B,=A(ALENGTH),=A(BLENGTH)
000002 5800 C096 00098 31+ L 0,=A(ALENGTH)
000006 5900 C09A 0009C 32+ C 0,=A(BLENGTH)
00000A 4740 C010 00012 33+ BC 4,IF0001
00000E 5800 C09A 0009C 34+ L 0,=A(BLENGTH)
00012 35+IF0001 EQU *
000012 4110 C072 00074 36+ LA 1,A
000016 4120 C079 0007B 37+ LA 2,B
00001A 1B33 38+ SR 3,3
0001C 39+L10001 EQU *
00001C 1930 40+ CR 3,0
00001E 4780 C038 0003A 41+ BE L20001
000022 4340 1000 00000 42+ IC 4,0(0,1)
000026 4240 2000 00000 43+ STC 4,0(0,2)
00002A 5A30 C09E 000A0 44+ A 3,=F'1'
00002E 5A20 C09E 000A0 45+ A 2,=F'1'
000032 5A10 C09E 000A0 46+ A 1,=F'1'
000036 47F0 C01A 0001C 47+ B L10001
0003A 48+L20001 EQU *
49 MOVE C,D,=A(CLENGTH),DLENGTH
00003A 5800 C0A2 000A4 50+ L 0,=A(CLENGTH)
00003E 5900 C092 00094 51+ C 0,DLENGTH
000042 4740 C048 0004A 52+ BC 4,IF0002
000046 5800 C092 00094 53+ L 0,DLENGTH
0004A 54+IF0002 EQU *
00004A 4110 C083 00085 55+ LA 1,C
i00004E 4120 C08D 0008F 56+ LA 2,D
DEMONSTRATE MACRO WITH MOVE BYTE MACRO
LOC OBJECT CODE ADDR1 ADDR2 STMT SOURCE STATEMENT
000052 1B33 57+ SR 3,3
00054 58+L10002 EQU *
000054 1930 59+ CR 3,0
000056 4780 C070 00072 60+ BE L20002
00005A 4340 1000 00000 61+ IC 4,0(0,1)
00005E 4240 2000 00000 62+ STC 4,0(0,2)
000062 5A30 C09E 000A0 63+ A 3,=F'1'
000066 5A20 C09E 000A0 64+ A 2,=F'1'
00006A 5A10 C09E 000A0 65+ A 1,=F'1'
00006E 47F0 C052 00054 66+ B L10002
00072 67+L20002 EQU *
000072 07FE 68 BR 14
69 *
000074 C1C2C3 70 A DC C'ABC'
00003 71 ALENGTH EQU *-A
000077 D8D8D8D8 72 TEST DC C'QQQQ'
00007B 73 B DS 10C
0000A 74 BLENGTH EQU *-B
000085 C1C2C3C4C5C6C7C8 75 C DC C'ABCDEFGHIJ'
0000A 76 CLENGTH EQU *-C
00008F 77 D DS 3C
000092 0000
000094 00000003 78 DLENGTH DC F'3'
79 END
000098 00000003 80 =A(ALENGTH)
00009C 0000000A 81 =A(BLENGTH)
0000A0 00000001 82 =F'1'
0000A4 0000000A 83 =A(CLENGTH)