Created
November 26, 2016 21:10
-
-
Save aurorapar/69a6c3d3b1a0d9f8f9b5f25610105f35 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 | |
2 | |
3 .TITLE Resursive Multiply | |
4 000000 SP: .BLKW 1750 | |
5 003720 ANS: .BLKW 2 | |
6 003724 M: .BLKW 1 | |
7 003726 N: .BLKW 1 | |
8 | |
9 003730 012767 003756 174042 START: MOV #NEXT, SP | |
10 003736 162767 000012 174034 SUB #12, SP | |
11 003744 016766 177754 000000 MOV M, SP(6) ; 2(SP) AND 4(SP) CONTAIN DP ANSWER | |
C:\PDP11\User\MULT\mult.mac:12: ***ERROR Illegal addressing mode | |
12 MOV N, SP(10) | |
13 003752 000167 000032 JMP RECMULT | |
14 003756 016267 000000 177734 NEXT: MOV SP(2), ANS | |
15 003764 016467 000000 177730 MOV SP(4), ANS+2 | |
16 003772 062767 000012 174000 ADD #12, SP | |
17 | |
18 | |
19 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
20 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
21 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | |
22 | |
23 004000 005062 000000 RETURN: CLR SP(2) | |
24 004004 000177 173770 JMP @SP | |
25 | |
C:\PDP11\User\MULT\mult.mac:26: ***ERROR Illegal addressing mode | |
26 RECMULT: TST SP(10) | |
27 004010 002773 BLT RETURN | |
28 004012 066664 000000 000000 ADD SP(6), SP(4) | |
29 004020 005562 000000 ADC SP(2) | |
C:\PDP11\User\MULT\mult.mac:30: ***ERROR Illegal addressing mode | |
30 DEC SP(10) | |
31 | |
32 004024 016705 173750 JMPSTUFF: MOV SP, R5 | |
33 004030 162767 000012 173742 SUB #12, SP | |
34 004036 012767 004052 173734 MOV #RETMULT, SP | |
35 004044 016666 000005 000000 MOV R5(6), SP(6) | |
C:\PDP11\User\MULT\mult.mac:36: ***ERROR Illegal addressing mode | |
36 MOV R5(10), SP(10) | |
37 | |
38 004052 066464 000000 000005 RETMULT: ADD SP(4), R5(4) | |
39 004060 005562 000005 ADC R5(2) ; Use register instead of SP - faster | |
40 004064 066262 000000 000005 ADD SP(2), R5(2) | |
40 004072 062767 000012 173700 ADD #12, SP | |
Symbol Table: | |
ANS 003720 | |
JMPSTU 004024 | |
M 003724 | |
N 003726 | |
NEXT 003756 | |
RECMUL 004010 | |
RETMUL 004052 | |
RETURN 004000 | |
SP 000000 | |
START 003730 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment