* * THIS PROGRAM COMPUTES NUM3 = |NUM1| + |NUM2| * SUBPGM ABS IS CALLED TO COMPUTE THE ABSOLUTE VALUES * STANDARD REGS FOR CALLING AND RETURNING ARE NOT USED * * NOTE: LCR INSTRUCTION LOADS THE COMPLEMENT OF OP2 INTO OP1 * IN OTHER WORDS, OP1 = -OP2 * SUBEX START 0 STM 14,12,12(13) SAVE CALLERS REGS BALR 12,0 USING *,12 L 0,NUM1 LOAD NUM1 INTO R0 BAL 5,ABS CALL ABS WITH NUM1 ST 0,NUM3 STORE RESULT IN NUM3 L 0,NUM2 LOAD NUM2 INTO R0 BAL 5,ABS CALL ABS WITH NUM2 A 0,NUM3 ADD NUM3 TO RESULT ST 0,NUM3 STORE RESULT IN NUM3 LM 14,12,12(13) RESTORE CALLERS REGS BR 14 * * SUBPGM ABS COMPUTES ABSOLUTE VALUE OF THE VALUE IN R0 * THE ABSOLUTE VALUE IS RETURNED IN R0 * ABS LTR 0,0 TEST VALUE IN R0 BNM DONE BRANCH IF VALUE IS NOT NEG LCR 0,0 R0 = -R0 DONE BR 5 RETURN TO MAIN * * END OF SUBPGM ABS * NUM1 DC F'15' NUM2 DC F'-42' NUM3 DS F END
Email Me |
Office Hours |
My Home Page |
Department Home |
MCC Home Page
© Copyright Emmi Schatz 2003