RAMM Machine Language Program:
0000 00 K
0000 01 SUM
0000 02 A
0000 03 K0
0001 04 K1
0050 05 K50
5000 06 STRT No operation
1204 07 Load (A-Reg) with (K1)
2000 08 Store (A-Reg) at K
1203 09 Load (A-Reg) with (K0)
2001 10 Store (A-Reg) at SUM
6502 11 LOOP Read A
1202 12 Load (A-Reg) with (A)
3618 13 Jump if (A-Reg) is zero to TSTK
3718 14 Jump if (A-Reg) is negative to TSTK
1201 15 Load (A-Reg) with SUM
1402 16 Add (A) to (A-Reg)
2001 17 Store (A-Reg) at SUM
1200 18 TSTK Load (A-Reg) with (K)
1505 19 Subtract (K50) from (A-Reg)
3723 20 Jump if (A-Reg) is negative to INCK
3627 21 Jump if (A-Reg) is zero to EXIT
7527 22 Unconditional Jump to EXIT
1200 23 INCK Load (A-Reg) with (K)
1404 24 Add (K1) to (A-Reg)
2000 25 Store (A-Reg) at K
7511 26 Unconditional Jump to LOOP
6601 27 EXIT Print SUM
0000 28 Unconditional Jump to
9906 29 End and begin program execution at STRT
RAMM Assembly Language Program:
K BSS 0001
SUM BSS 0001
A BSS 0001
K0 DEC 0000
K1 DEC 0001
K50 DEC 0050
STRT NOP
LDA K1
STA K
LDA K0
STA SUM
LOOP RDI A
LDA A
AZJ TSTK
AMJ TSTK
LDA SUM
IAD A
STA SUM
TSTK LDA K
ISB K50
AMJ INCK
AZJ EXIT
UNJ EXIT
INCK LDA K
IAD K1
STA K
UNJ LOOP
EXIT PRI SUM
HLT
END STRT