Advertisement
Guest User

Untitled

a guest
Dec 4th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1.  
  2. extern _scanf
  3. extern _printf
  4. global _main
  5.  
  6. section .bss
  7. velikost resd 1 ;stevilo katero bomo nastavili z vnosom
  8.  
  9. section .data
  10. message: db "Vnesite velikost:",0
  11. stevilo: db "%d ",10,0
  12. formatin: db "%d",0
  13.  
  14.  
  15. section .text
  16.  
  17. _main:
  18.  
  19. pushad ;shrani registre
  20.  
  21. push dword message ;sporocilo za izpis damo na sklad
  22. call _printf ;sporocilo se izpise
  23. add esp, 4 ;pocisti sklad po izpisu
  24.  
  25. push dword velikost
  26. push dword formatin
  27. call _scanf
  28. add esp,8 ;pocisti sklad po branju
  29.  
  30. mov ebx,1 ;stevec nastavimo na 1
  31.  
  32. .for:
  33.  
  34. mov edx, 0 ;postavimo edx na 0, da ko izvedemo div ne pride do napake
  35. mov eax,ebx ;vrednost stevca ebx nastavimo na eax, saj le tega uporabljamo pri div
  36. mov ecx,11 ;nastavimo vrednost s katerim bomo delili
  37. div ecx
  38. cmp edx,0
  39. jg .cediv ;ce je stevec%11==0 se prestavi na .cediv, torej stevca ne izpise
  40.  
  41. push ebx
  42. push dword stevilo
  43. call _printf
  44.  
  45. add esp,8
  46.  
  47. .cediv:
  48. add ebx,1
  49. cmp ebx,[velikost] ;v primeru ko je ebx enako velikost
  50. jle .for ;se jle ne izvede
  51.  
  52. popad ;pridobimo nazaj registre, ki smo jih na zacetku pushad
  53.  
  54. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement