Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ORG 800H
- START
- LXI H,START_P
- RST 3
- LXI H,ENTER
- RST 3
- LXI H,OP1
- RST 3
- RST 5
- LXI H,WYPISZ_OP1
- RST 3
- MOV A,D
- RST 4
- MOV A,E
- RST 4
- LXI H,ENTER
- RST 3
- LXI H,OPERACJE
- RST 3
- LXI H,PYT_OPERACJE
- RST 3
- RST 2
- LXI H,ENTER
- RST 3
- CPI 'n'
- JZ NEGACJA
- CPI '+'
- JZ DODAWANIE
- CPI '-'
- JZ ODEJMOWANIE
- JMP BLAD
- NEGACJA
- MOV A,D
- CMA
- MOV D,A
- MOV A,E
- CMA
- MOV E,A
- JMP WYPISZ
- DODAWANIE
- CALL PODAJ_OP2
- DAD D
- CC PRZENIESIENIE ;call if carry
- MOV D,H
- MOV E,L
- LXI H,ENTER
- RST 3
- JMP WYPISZ
- PRZENIESIENIE
- MVI A,1
- RST 4
- RET
- ODEJMOWANIE
- CALL PODAJ_OP2
- CMC
- MOV A,H
- CMP D
- JZ H_ROWNE_D
- JC HL_MNIEJSZE
- JNC HL_WIEKSZE
- H_ROWNE_D
- MOV A,L
- CMP E
- JZ HL_ROWNE
- JC HL_MNIEJSZE
- JNC HL_WIEKSZE
- HL_ROWNE
- LXI H,ENTER
- RST 3
- MVI A,00
- RST 4
- RST 4
- LXI H,HASHEND
- RST 3
- HLT
- HL_MNIEJSZE
- MOV A,E
- SUB L
- MOV E,A
- MOV A,D
- SUB H
- MOV D,A
- LXI H,ENTER
- RST 3
- LXI H,TEST
- RST 3
- JMP WYPISZ
- HL_WIEKSZE
- MOV A,L
- SBB E
- MOV E,A
- MOV A,H
- SBB D
- MOV D,A
- LXI H,ENTER
- RST 3
- JMP WYPISZ
- PODAJ_OP2
- LXI H,OP2
- RST 3
- MOV H,D
- MOV L,E
- RST 5
- RET
- WYPISZ
- MOV A,D
- RST 4
- MOV A,E
- RST 4
- LXI H,WYNIK_OPERACJI
- RST 3
- LXI H,HASHEND
- RST 3
- JMP START
- BLAD
- LXI H,BLAD_I
- RST 3
- JMP START
- ENTER db 10,13,'@'
- START_P db '########',10,13,'KALKULATOR',10,13,'########@'
- OP1 db 10,13,'PIERWSZY OPERAND (HEKSADECYMALNIE): @'
- WYPISZ_OP1 db 10,13,10,13,'OPERAND 1: @'
- OPERACJE db 10,13,'#########',10,13,'DODAWANIE(+), ODEJMOWANIE(-), NEGACJA(n)@'
- PYT_OPERACJE db 10,13,'OPERACJA: @'
- OP2 db 'DRUGI OPERAND (HEKSADECYMALNIE): @'
- PRZENIESIENIE_T db '[PRZENIESIENIE]',10,13,'@'
- HASHEND db 10,13,'#########@'
- WYNIK_OPERACJI db ' <--- WYNIK OPERACJI@'
- BLAD_I db 10,13,'Blad, jeszcze raz,'10,13,'@'
- TEST db '-@'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement