Advertisement
Guest User

Untitled

a guest
Nov 24th, 2015
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ORG 800H  
  2. ;_________________________________MENU: 0 - MIN, 1 - MAX    
  3.      LXI H,MENU1  
  4.      RST 3  
  5.      LXI H,MENU2  
  6.      RST 3  
  7.      RST 2  
  8.      CPI 30H  
  9.      JZ E_1_MINIMUM  
  10.      JNZ E_0_MAKSIMUM  
  11. ;_________________________________obliczanie minimum  
  12. E_1_MINIMUM      LXI H,MINIMUM_T1  
  13.      RST 3  
  14.      MVI A,3  
  15.      STA LICZNIK
  16.      LXI B,65535
  17.  
  18. E_START_MIN      LXI H,OPERACJA_T1  
  19.      RST 3
  20.      RST 5  
  21.      MOV A,B
  22.     CMC  
  23.      CMP D
  24.     JC BRAK_ZAMIANY_MIN
  25.     JNC STAN_TRZECI_MIN
  26.  
  27.  
  28. ZAMIANA_1_MIN
  29.      MOV B,D  
  30.      MOV C,E    
  31.      LDA LICZNIK  
  32.      DCR A  
  33.      STA LICZNIK  
  34.      JNZ E_START_MIN  
  35.      JZ KONIEC  
  36.  
  37. SPR_2REJ_MIN
  38.      MOV A,C
  39.     CMC
  40.      CMP E  
  41.      JNC ZAMIANA_2_MIN
  42.      JC BRAK_ZAMIANY_MIN
  43.  
  44. ZAMIANA_2_MIN
  45.      MOV B,D  
  46.      MOV C,E
  47.      LDA LICZNIK  
  48.      DCR A  
  49.      STA LICZNIK  
  50.      JNZ E_START_MIN  
  51.      JZ KONIEC
  52.  
  53. STAN_TRZECI_MIN
  54. ;dodatnia ; czy rowna
  55.     CMP D
  56.     CMC
  57.     JNZ ZAMIANA_1_MIN
  58.     JZ SPR_2REJ_MIN
  59.  
  60. BRAK_ZAMIANY_MIN
  61.      LDA LICZNIK  
  62.      DCR A  
  63.      STA LICZNIK  
  64.      JNZ E_START_MIN
  65.      JZ KONIEC
  66.  
  67. ;_________________________________obliczanie maksimum  
  68. E_0_MAKSIMUM     LXI H,MAKSIMUM_T1  
  69.      RST 3  
  70.      MVI A,3  
  71.      STA LICZNIK  
  72.  
  73. E_START_MAX      LXI H,OPERACJA_T1  
  74.      RST 3  
  75.      RST 5  
  76.      MOV A,B
  77.     CMC  
  78.      CMP D
  79.     JZ SPR_2REJ
  80.     JNZ STAN_TRZECI  
  81.  
  82. ZAMIANA_1  
  83.      MOV B,D  
  84.      MOV C,E  
  85.      LDA LICZNIK  
  86.      DCR A  
  87.      STA LICZNIK  
  88.      JNZ E_START_MAX  
  89.      JZ KONIEC  
  90.  
  91. SPR_2REJ  
  92.      MOV A,C
  93.     CMC  
  94.      CMP E  
  95.      JM ZAMIANA_2  
  96.      JP BRAK_ZAMIANY  
  97.  
  98. ZAMIANA_2  
  99.      MOV B,D  
  100.      MOV C,E  
  101.      LDA LICZNIK  
  102.      DCR A  
  103.      STA LICZNIK  
  104.      JNZ E_START_MAX  
  105.      JZ KONIEC
  106.  
  107.  
  108. STAN_TRZECI
  109.     CMC
  110.     CMP D
  111.     JM ZAMIANA_1  
  112.     JP BRAK_ZAMIANY
  113.  
  114. BRAK_ZAMIANY  
  115.      LDA LICZNIK  
  116.      DCR A  
  117.      STA LICZNIK  
  118.      JNZ E_START_MAX  
  119.      JZ KONIEC
  120.  
  121. KONIEC  
  122.      LXI H,WYNIK  
  123.      RST 3  
  124.      MOV A,B  
  125.      RST 4  
  126.      MOV A,C  
  127.      RST 4  
  128.      RST 6  
  129.      HLT  
  130. MENU1    DB 10,13,'Program oblicza 0-MIN, 1-MAX z 3 liczb.@'    
  131. MENU2    DB 10,13,'Wybierz opcje:@'  
  132. MINIMUM_T1   DB 10,13,'==Obliczanie minimum==@'  
  133. MAKSIMUM_T1      DB 10,13,'==Obliczanie maksimum==@'  
  134. OPERACJA_T1      DB 10,13,'Podaj liczbe:@'  
  135. WYNIK    DB 10,13,'Wynik: @'  
  136. LICZNIK      DB 3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement