Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

poredjenje dva karaktera u stringu

[es] :: Asembler :: poredjenje dva karaktera u stringu

[ Pregleda: 2568 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

lancha131
Student

Član broj: 275077
Poruke: 10
*.adsl.verat.net.



Profil

icon poredjenje dva karaktera u stringu30.03.2011. u 22:53 - pre 158 meseci
Poz ekipa...Da li mi neko moze reci kako da uporedim dva karaktera u stringu u x86 arhitekturi na asembleru.....
Dva pristupa memoriji nisu dozvoljena pa ne mogu da koristim indeksno adresiranje...
Da li ikako moze da se karakter preseli u registar?
 
Odgovor na temu

q3dalibor
nebitno

Član broj: 282690
Poruke: 7
*.47-151.net24.it.



Profil

icon Re: poredjenje dva karaktera u stringu14.04.2011. u 13:14 - pre 157 meseci
nisam bash pro shto se tiche assembly-a ali mislim da mozesh da ubacish string u registre
probaj ovako

mov ax,[string1]
mov bx,[string2]
cmp ax,bx

kockaste zagrade na string1 i 2 oznachavaju da se u registar prenosi vrednost stringa a ne adresa u memoriji

ne znam sa kakvim string vrednostima radish, ali ax i bx mogu da prihvate 16bit-ne vrednosti u hexadecimalnom zapisu.
cmp (compare) ce da uradi uporedjivanje dve heksadecimalne vrednosti, mislim da oduzima drugu od prve. cmp ax,bx = ax-bx
ne menja same vrednosti registara, ali ostavlja vrednosti u FLAGS na osnovu usporedbe.
eax i ebx su ti extended registri za 32bit-ne vrednosti
nakon cmp, mozesh da koristish jump komande da bi proverio vrednosti registara

jz label nakon cmp ax,bx bi u sluchaju da su vrednosti iste skochilo do procedure label
jz proverava da li je ZF(zero flag) u FLAGS, 1 ili 0... ako su vrednosti iste, ZF je 1 i skok se odradjuje, ako su razlichite ZF je 0 i skok se ignorishe

ako greshim ispravite me

[Ovu poruku je menjao q3dalibor dana 14.04.2011. u 22:02 GMT+1]
 
Odgovor na temu

[es] :: Asembler :: poredjenje dva karaktera u stringu

[ Pregleda: 2568 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.