Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ORG 800H
- ;_________________________________MENU: 0 - MIN, 1 - MAX
- LXI H,MENU1
- RST 3
- LXI H,MENU2
- RST 3
- RST 2
- CPI 30H
- JZ E_1_MINIMUM
- JNZ E_0_MAKSIMUM
- ;_________________________________obliczanie minimum
- E_1_MINIMUM LXI H,MINIMUM_T1
- RST 3
- MVI A,3
- STA LICZNIK
- LXI B,65535
- E_START_MIN LXI H,OPERACJA_T1
- RST 3
- RST 5
- MOV A,B
- CMC
- CMP D
- JC BRAK_ZAMIANY_MIN
- JNC STAN_TRZECI_MIN
- ZAMIANA_1_MIN
- MOV B,D
- MOV C,E
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MIN
- JZ KONIEC
- SPR_2REJ_MIN
- MOV A,C
- CMC
- CMP E
- JNC ZAMIANA_2_MIN
- JC BRAK_ZAMIANY_MIN
- ZAMIANA_2_MIN
- MOV B,D
- MOV C,E
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MIN
- JZ KONIEC
- STAN_TRZECI_MIN
- ;dodatnia ; czy rowna
- CMP D
- CMC
- JNZ ZAMIANA_1_MIN
- JZ SPR_2REJ_MIN
- BRAK_ZAMIANY_MIN
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MIN
- JZ KONIEC
- ;_________________________________obliczanie maksimum
- E_0_MAKSIMUM LXI H,MAKSIMUM_T1
- RST 3
- MVI A,3
- STA LICZNIK
- E_START_MAX LXI H,OPERACJA_T1
- RST 3
- RST 5
- MOV A,B
- CMC
- CMP D
- JZ SPR_2REJ
- JNZ STAN_TRZECI
- ZAMIANA_1
- MOV B,D
- MOV C,E
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MAX
- JZ KONIEC
- SPR_2REJ
- MOV A,C
- CMC
- CMP E
- JM ZAMIANA_2
- JP BRAK_ZAMIANY
- ZAMIANA_2
- MOV B,D
- MOV C,E
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MAX
- JZ KONIEC
- STAN_TRZECI
- CMC
- CMP D
- JM ZAMIANA_1
- JP BRAK_ZAMIANY
- BRAK_ZAMIANY
- LDA LICZNIK
- DCR A
- STA LICZNIK
- JNZ E_START_MAX
- JZ KONIEC
- KONIEC
- LXI H,WYNIK
- RST 3
- MOV A,B
- RST 4
- MOV A,C
- RST 4
- RST 6
- HLT
- MENU1 DB 10,13,'Program oblicza 0-MIN, 1-MAX z 3 liczb.@'
- MENU2 DB 10,13,'Wybierz opcje:@'
- MINIMUM_T1 DB 10,13,'==Obliczanie minimum==@'
- MAKSIMUM_T1 DB 10,13,'==Obliczanie maksimum==@'
- OPERACJA_T1 DB 10,13,'Podaj liczbe:@'
- WYNIK DB 10,13,'Wynik: @'
- LICZNIK DB 3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement