Advertisement
Guest User

Untitled

a guest
May 10th, 2015
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. ;
  2. ; file: kostur.asm
  3. ; Kostur asemblerskog programa
  4. ;
  5.  
  6.  
  7.  
  8. %include "asm_io.inc"
  9. segment .data
  10. ;
  11. ;
  12.  
  13. segment .bss
  14. ;
  15. n resd 1; n je uneti broj
  16. i resd 1; i je brojac
  17. ;
  18.  
  19. segment .text
  20. global asm_main
  21. asm_main:
  22. enter 0,0 ; ulazna rutina
  23. pusha
  24. ;
  25. call read_int
  26. mov dword[n],eax
  27. mov eax,2
  28. mov dword[i],eax; POSTAVLJAMO 2 U I
  29. while_not_equal: ; Poredimo N i I, kada budu bili jednaki, skoci na kraj
  30. cmp dword[n],eax
  31. je jednaki
  32. mov edx,0
  33. mov ecx,0 ; ECX=0
  34. mov eax,dword[i] ; EAX=2
  35. mov ebx,2 ; EBX=2
  36. do_itog_broja:
  37. cmp eax,ebx ; POREDIMO I SA TRENUTNIM DELIOCEM
  38. je kraj
  39. div ebx
  40. cmp edx,0 ; UKOLIKO JE OSTATAK 0, ECX++
  41. jne preskoci_ecx_inc
  42. inc ecx
  43. preskoci_ecx_inc:
  44. inc ebx ; DELILAC++
  45. mov eax,dword[i] ; PREBACI I OPET U EAX
  46. jmp do_itog_broja
  47. kraj:
  48. mov eax,0
  49. cmp eax,ecx
  50. jne ne_stampaj
  51. mov eax,dword[i]
  52. call print_int
  53. call print_nl
  54. ne_stampaj:
  55. mov eax,dword[i]
  56. inc eax
  57. mov dword[i],eax
  58. jmp while_not_equal
  59. jednaki:
  60.  
  61. popa
  62.  
  63.  
  64.  
  65. mov eax, 0 ; vrati se u C program
  66.  
  67.  
  68.  
  69. leave
  70.  
  71.  
  72.  
  73. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement