Download Assemblers and Loaders
Transcript
152 Macros Ch. 4 5 Dlevel >0 =0 D, DE =0 Elevel Copy into current definition in MDT >0 E N Error! illegal character read while in normal mode Pop current levelof args from stack A Dlevel:=Dlevel-1 >1 Dlevel 1 Pop top of MES =1 1 Elevel:=Elevel-1 mode D Elevel mode:=N DE mode:=E =0 >0 1 Figure 4–7d. Revesz’s method for nested macro definitions (part IV). The following example illustrates a macro L1 whose definition is nested by L2 which, in turn, is nested by a level 3 macro, L3. 1 2 3 4 5 6 7 8 9 10 L1 MACRO MOV CMP L2 MACRO MOV CMP L3 MACRO MOV CMP MEND A,B,C,D A,B C,D E,F,D,C E,C A,X A,E,C,G C,E A,G L3 L1 MOV CMP L2 MOV CMP L3 MOV CMP MEND #1#2#3#4 #1#2 #3#4 MACRO E,F,D,C E,C #1,X MACRO A,E,C,G C,E A,G L3 L2 MOV CMP L3 MOV CMP MEND #1#2#3#4 #1,#4 M,X MACRO A,E,C,G C,#1 A,G L3 L3 MACRO #1#2#3#4 MOV #3,W CMP #1,#4 (end of macro)