Laborator 2
Little man Computer !!!
Instructiunile:
Load LDA xx 5xx
Store STA xx 3xx
Add ADD xx 1xx
Substract SUB |_| qxx
Input INP 901
Output OUT 902
END HLT 000
Branch always BRA xx 6xx
Branch if zero BRZ xx 7xx
Branch if positive BRP xx 8xx
variableName DAT 1 (initial value)
Afisare numar
INP
STA 66
OUT
HLT
Suma a doua numere
varianta 1:
INP
STA 55
INP
ADD 55
OUT
HLT
varianta 2:
INP
STA var1
INP
ADD var1
OUT
HLT
var1 DAT 5
Suma a trei numere
INP
STA 55
INP
ADD 55
STA 56
INP
ADD 56
OUT
HLT
Afiseaza 1 daca numerele sunt egale.
INP
STA var1
INP
SUB var1
BRZ isTrue
HLT
isTrue LDA true
OUT
HLT
var1 DAT
true DAT 1
Afiseaza "a" daca a>b altfel afiseaza "b"
INP
STA var1
INP
STA var2
SUB var1
BRP second
LDA var1
OUT
HLT
second LDA var2
OUT
HLT
var1 DAT
var2 DAT
Afiseaza numerele de la 1 la 10
start LDA store
OUT
ADD one
STA store
LDA limit
SUB store
BRP start
store DAT 1
one DAT 1
limit DAT 10