Advertisement
Guest User

Untitled

a guest
Nov 20th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. .model small ; 64kb pentru date
  2. .stack 100 ; 100 locuri in stiva
  3. .data ; cate variabile avem
  4. sir db 80 dup('$') ; db pe un byte, $ terminator de sir
  5. m1 db 'Introduceti sirul:$'
  6. m2 db 13,10,'Sirul sortat este este: $'
  7. max db 0,'$' ; var max va tine valoarea maxima
  8. .code
  9. ;initializare segment de date
  10. mov ax,@data
  11. mov ds,ax
  12. ;afisare mesaj m1
  13. mov ah,9h
  14. mov dx,offset m1
  15. int 21h
  16. ;preluare sir de la tastatura si depunere in memorie la adresa din dx
  17. mov bx,0
  18. mov cx,80
  19. mov ah,3fh ; citeste sirul de la tastatura
  20. mov dx,offset sir
  21. int 21h
  22. parcurgere:
  23. mov si,offset sir
  24. xor cl, cl
  25. mov ah,[si] ; salveaza sirul in ah
  26. next: mov al,[si]
  27. cmp al,13 ; comparam cu CR (sfarsit de sir)
  28. jz parcurs
  29. mov bl, [si+1]
  30. cmp bl, 13
  31. jz parcurs
  32. cmp al,bl
  33. jle et1
  34. mov [si], bl
  35. mov [si+1], al
  36. mov cl,1
  37. et1: inc si
  38. jmp next
  39. parcurs:
  40. cmp cl,1
  41. jz parcurgere
  42. mov ah,9
  43. mov dx,offset m2
  44. int 21h
  45. mov dx,offset sir
  46. int 21h
  47. mov dl,bl
  48. mov ah,2
  49. ;sau:
  50. ;mov dx,offset max
  51. ;mov ah,9
  52. int 21h
  53. ;apel functie de terminare normala a programului
  54. mov ah,4ch
  55. int 21h
  56. end ; terminare program
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement