Skocz do zawartości
Jimi

Asembler - Prosty Kod, Ale...

Rekomendowane odpowiedzi

Proszę powiedzcie mi jakie będa wartości rejestrów eax,ebx,esi,ecx po wykonaniu tego fragmentu programu od poczatku do etykiety koniec... dodatkowe pytanie, żeby podać w kodzie 16tkowym :P ..

 

segment .data

 

tab db 5,3,62,104,7,10

tablen equ $-tab

 

segment .code

 

mov ebx,tablen

mov esi,tab

mov eax,16

mov ecx,3

rep lodsb

 

koniec nop

mov eax,1

int 128

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

LODSB:

Transfers string element addressed by DS:SI (even if an operand is

supplied) to the accumulator.

 

po pierwsze:

mov esi, tab -> nie da rady

lea esi, tab albo mov esi, offset tab

 

EAX = 3Eh (62) [ 3 element tablicy ]

EBX = 6 [ wogole nie ma wplywu na dzialanie programu, to tylko rozmiar tablicy]

ECX = 0 [ licznik ile razy wykona sie instrukcja rep, na poczatku 3, schodzi do 0 ]

ESI = offset tab + 3 [ zwiekszony o 3 wskaznik do tablicy, wskazuje na jej 4 element ]

Edytowane przez K3310pH

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...