Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #proveriti da li je uneti string palindrom
- .section .data
- poruka: .ascii "Unesite string:\0"
- len1 = . - poruka
- nijep: .ascii "String nije palindrom.\n\0"
- len2 = . - nijep
- jestep: .ascii "String jeste palindrom.\n\0"
- len3 = . - jestep
- unos: .fill 50, 1, 42
- .section .text
- .globl main
- main:
- movl $4, %eax #sistemski poziv za ispis poruke: "unesite string"
- movl $1, %ebx
- leal poruka, %ecx
- movl $len1, %edx
- int $0x80
- movl $3, %eax #sistemski poziv za unos
- movl $0, %ebx
- leal unos, %ecx
- movl $50, %edx
- int $0x80
- movl %eax, %edi #sada %edi sadrzi broj procitanih bajtova
- subl $1, %edi #edi sadrzi najveci indeks u stringu
- movl $unos, %eax #adresa stringa, tj. prvog karaktera u %eax
- movl %eax, %ebx
- addl %edi, %ebx #adrsea poslednjeg akraktera u %ebx
- petlja:
- movb (%eax), %cl
- movb (%ebx), %dl
- cmpb %cl, %dl
- jne nije
- addl $1, %eax
- subl $1, %ebx
- cmpl %eax, %ebx
- ja petlja #skoci ako je %ebx > %eax
- jmp jeste
- nije:
- movl $4, %eax #sistemski poziv za ispis poruke: "string nije palindrom"
- movl $1, %ebx
- leal nijep, %ecx
- movl $len2, %edx
- int $0x80
- jmp kraj
- jeste:
- movl $4, %eax #sistemski poziv za ispis poruke: "string jeste palindrom"
- movl $1, %ebx
- leal jestep, %ecx
- movl $len3, %edx
- int $0x80
- kraj:
- movl $1, %eax
- movl $0, %ebx
- int $0x80
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement