Advertisement
Guest User

Untitled

a guest
Apr 24th, 2019
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. .section .data
  2.  
  3.  
  4.  
  5. .section .text
  6.  
  7.  
  8.  
  9.  
  10. .global paritet
  11.  
  12.  
  13. paritet:
  14.  
  15.  
  16. pushl %ebp
  17. movl %esp,%ebp
  18. pushl %ebx
  19. pushl %edi
  20. xorl %edi,%edi
  21. xorl %ebx,%ebx #brojac
  22.  
  23. movl 8(%ebp),%eax
  24.  
  25. vertikalni:
  26. movb (%eax),%cl #stavio prvi broj 8-bitni registar
  27. incl %ebx #povecao brojac za 1
  28. cmpl $8,%ebx
  29. je dalje
  30.  
  31. incl %eax #presao na drugi
  32. movb (%eax),%dl #stavio drugi broj u 8-bitni registar
  33. incl %ebx #povecao brojac za 1 = 2
  34. cmpl $8,%ebx
  35. je dalje
  36.  
  37. xorb %cl,%dl #xor-ovo sam i sacuvao u %dl
  38. incl %eax #presao na treci
  39. movb (%eax),%cl #treci stavio u %cl
  40. incl %ebx #brojac = 3
  41. cmpl $8,%ebx
  42. je dalje
  43. jmp vertikalni
  44.  
  45. dalje:
  46. shlb %dl
  47. jc neparni
  48. movl $0 %edi
  49. jmp horizontalni
  50.  
  51. neparni:
  52.  
  53. movl $1,%edi
  54. jmp horizontalni
  55.  
  56. horizontalni:
  57.  
  58. xorl %edx #treba mi 8-bitni registar sa nulama sto ce mi bit %dh
  59. movl $8,%ebx
  60. movl 8(%ebp),%eax
  61. movb (%eax),%cl
  62.  
  63. petlja:
  64. shrb %cl
  65. decl %ebx #8 puta shiftujem
  66. jc provera
  67. jmp petlja
  68.  
  69. provera
  70. incl %edx broji carry
  71. jmp petlja
  72. kraj:
  73. cmpl %edi,%edx
  74. je paritet
  75.  
  76.  
  77. nijeParitet:
  78. movl $1, %eax
  79. popl %edi
  80. popl %ebx
  81. movl %ebp,%esp
  82. popl %ebp
  83. ret
  84.  
  85.  
  86. paritet:
  87. movl $0,%eax
  88. popl %edi
  89. popl %ebx
  90. movl %ebp,%esp
  91. popl %ebp
  92. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement