Advertisement
joker546645

2.6

Oct 26th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .686
  2. .model flat
  3. extern _ExitProcess@4 : PROC
  4. extern _MessageBoxA@16 : PROC
  5. extern __write : PROC
  6. extern __read : PROC
  7. public _main
  8.  
  9. .data
  10. tekst_pocz db 10, 'Prosz',0A9h,' napisa',86h,' jaki',98h,' tekst '
  11.            db 'i nacisn',0A5h,86h,' Enter', 10
  12. koniec_t   db ?
  13. magazyn    db 80 dup (?)
  14. nowa_linia db 10
  15. liczba_znakow dd ?
  16.  
  17. male_polskie db 0A5h, 86h, 0A9h, 88h, 0E4h, 0A2h, 98h, 0ABh, 0BEh
  18. Win1250_duze db 0A5H, 0C6H, 0CAH, 0A3H, 0D1H, 0D3H, 8CH, 8FH, 0AFH
  19. duze_polskie db 0A4h, 8Fh, 0A8h, 9Dh, 0E3h, 0E0h, 97h, 8Dh, 0BDh
  20.  
  21. tytul db 'tytul', 0
  22.  
  23. .code
  24. _main:
  25.  
  26.     mov ecx, (OFFSET koniec_t) - (OFFSET tekst_pocz)
  27.     push ecx
  28.    
  29.     push OFFSET tekst_pocz
  30.     push 1
  31.     call __write
  32.  
  33.     add esp, 12
  34.  
  35.     push 80
  36.     push OFFSET magazyn
  37.     push 0
  38.     call __read
  39.     add esp, 12
  40.  
  41.     mov liczba_znakow, eax
  42.     mov ecx, eax
  43.     mov ebx, 0
  44.  
  45. ptl: mov dl, magazyn[ebx]
  46.      mov eax, 0
  47.  
  48.     zamiana: cmp dl, male_polskie[eax]
  49.              jne kolejne
  50.              mov dl, Win1250_duze[eax]
  51.              mov magazyn[ebx], dl
  52.              jmp dalej
  53.  
  54.         kolejne: inc eax
  55.                  cmp eax, 9
  56.                  jb zamiana
  57.    
  58.     cmp dl, 'a'
  59.     jb dalej
  60.     cmp dl, 'z'
  61.     ja dalej
  62.     sub dl, 20h
  63.  
  64.     mov magazyn[ebx], dl
  65. dalej: inc ebx
  66.        loop ptl
  67.    
  68.  
  69.     push 0
  70.     push OFFSET tytul
  71.     push OFFSET magazyn
  72.     push 0
  73.     call _MessageBoxA@16
  74.  
  75.  
  76.     add esp, 12
  77.    
  78.     push 0
  79.     call _ExitProcess@4
  80.  
  81. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement