Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2019
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. .section .text
  2. .globl RazmeniBit
  3. RazmeniBit:
  4. pushl %ebp
  5. movl %esp, %ebp
  6. pushl %ebx
  7. pushl %edi
  8. pushl -4(%ebp)
  9. movl 8(%ebp), %ecx #pokazivac na niz
  10. movl 12(%ebp), %esi #broj elem
  11. movw $1, %dx #maska
  12. movl $0, %edi #brojac elemenata sa parnim brojem 1
  13.  
  14. provera:
  15. cmpl $0, %esi
  16. je kraj
  17. slelem:
  18. decl %esi
  19. movl %esi, -4(%ebp)
  20. movl $0, %eax
  21. cmpl $0, %esi
  22. jl kraj
  23. movw (%ecx, %esi, 2), %bx
  24.  
  25. petlja:
  26. testw %bx, %dx
  27. jz dalje
  28. incl %eax
  29. shrw $1, %bx
  30. jz proveri
  31. jmp petlja
  32.  
  33. dalje:
  34. shrw $1, %bx
  35. jz proveri
  36. jmp petlja
  37.  
  38. proveri:
  39. testw $0x0001, %ax
  40. jz par
  41. xorw $0b1000000000000001, -4(%ebp)
  42. movw -4(%ebp), %ax
  43. movw %ax, (%ecx, %esi, 2)
  44. jmp slelem
  45.  
  46. par:
  47. xorw $0b1110000000000111, -4(%ebp)
  48. movw -4(%ebp), %ax
  49. movw %ax, (%ecx, %esi, 2)
  50. incl %edi
  51. jmp slelem
  52.  
  53. kraj:
  54. movl %edi, %eax
  55. popl -4(%ebp)
  56. popl %edi
  57. popl %ebx
  58. movl %ebp, %esp
  59. popl %ebp
  60. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement