Advertisement
Guest User

Untitled

a guest
Nov 15th, 2016
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.30 KB | None | 0 0
  1. org 100h
  2. START:
  3.  
  4. mov ah,9 ;Wyswietl Polecenie Podaj1
  5. mov dx,podaj1
  6. int 21h
  7.  
  8. mov ah,9
  9. mov dx, linia ;Wyswietl Wolna linia
  10. int 21h
  11.  
  12. mov ah,02h
  13. mov dx, ciag1 ;Wprowadza na ciag1 to co w dx
  14. int 21h
  15.  
  16. mov ah,9
  17. mov dx, linia ;Wyswietl Wolna linia
  18. int 21h
  19.  
  20. mov ah,9
  21. mov dx,podaj2 ;Wyswietl Polecenie Podaj 2
  22. int 21h
  23.  
  24. mov ah,9
  25. mov dx,linia ;Wyswietl Wolna linia
  26. int 21h
  27.  
  28. mov ah,02h
  29. mov dx, ciag2 ;Wprowadza na ciag2 to co w dx
  30. int 21h
  31.  
  32. mov ah,9
  33. mov dx, linia ;Wyswietl Wolna linia
  34. int 21h
  35.  
  36. ;Przypadek gdy dlugosci napisow sa rozne, wyswietlic ze sa rozne i kazac podac ponownie dwa lub nacisnac spacje by zakonczyc, czyli jmp START
  37.  
  38. mov cl,[ciag1+1] ;wczyujemy dlugosc ciag1 na rejestr cl
  39. mov bl,[ciag2+1] ;wczytujemy dlugosc ciag2 na rejestr bl
  40.  
  41. ;Porownujemy dlugosci, jesli sa rozne to skok do sprawdzania czy konczymy program czy od nowa
  42. cmp cl,bl
  43. jne czykoniec ;skaczemy do etykiety czykoniec a ona pozwala nam na wcisniecie znaku i wtedy dostaniemy odpowiedz czy zakonczyc program czy wczytac go od nowa
  44. je dzialanie ;jesli ciagi sa rowne to pobieramy znaki z tych ciagow i tworzymy trzeci ciag ktory na odpowiadajacych sobie pozycjach w lancuchach zrodlowych zawiera znaki o kodach ascii bedace srednia zaokraglona w gore
  45.  
  46. dzialanie: ;i tu nie wiem co zrobic
  47. ;ciag trzeci(wyjsciowy) mozna by po koleji przechodzic przez znaki w lnacuchac i wrzucac srednią tych dwóch na stos, a pozniej ze stosu wyswietlic
  48. ;ale nie wiem jak przechodzic po koleji po znakach w lancuchu
  49.  
  50.  
  51.  
  52. czykoniec:
  53. mov ah,9
  54. mov dx,podane ;Wyswietli ze podales roznej dlugosci ciagi, spacja-wyjdz, inny znak kontynuuj
  55. int 21h
  56.  
  57. mov ah,9
  58. mov dx, linia ;Wyswietl Wolna linia
  59. int 21h
  60.  
  61. mov ah,1 ;pozwala na wcisniecie klawisze i wpisuje go w rejestr al
  62. int 21h
  63.  
  64. mov ah,9
  65. mov dx, linia ;Wyswietl Wolna linia
  66. int 21h
  67.  
  68. cmp al,32 ;sprawdza czy wcisnieto spacje
  69. je koniec ;jesli spacja to konczymy program skaczemy do etykiety koniec
  70. jne start ;jesli nie spacja to idziemy na sam poczatek programu
  71.  
  72. koniec:
  73. mov ah,4c00h ;wyjscie do dos
  74. int 21h ;wychodzimy
  75.  
  76. podaj1 db "Podaj pierwszy ciag znakow: $"
  77. podaj2 db "Podaj drugi ciag znakow: $"
  78. podane db "Podales lancuchy roznych dlugosci, spacja - wyjdz z programu, inny znak kontynuuj od nowa $"
  79. linia db 10, 13, "$"
  80.  
  81. ciag1 db 255
  82. ciag2 db 255
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement