Asembler x86/Jak używać debuggera ALD: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
DrJolo (dyskusja | edycje)
DrJolo (dyskusja | edycje)
Linia 80:
Aby deasemblować dany plik z poziomu ALD wprowadzamy polecenie '''d''' i potwierdzamy klawiszem '''ENTER'''.
 
<source lang=text>
Widzimy, że otrzymany listing do złudzenia przypomina niedawno kompilowany kod źródłowy napisany w języku asembler. Zauważamy jedynie, że używane etykiety często zastąpione są już konkretnymi adresami liczbowymi w używanej pamięci.
ald> d
08048080:<_start> B804000000 mov eax, 0x4
08048085 BB01000000 mov ebx, 0x1
0804808A B9A4900408 mov ecx, 0x80490a4
0804808F BA0E000000 mov edx, 0xe
08048094 CD80 int 0x80
08048096 B801000000 mov eax, 0x1
0804809B BB05000000 mov ebx, 0x5
080480A0 CD80 int 0x80
080480A2 0000 add byte [eax], al
080480A4 48 dec eax
080480A5 656C insb
080480A7 6C insb
080480A8 6F outsd
080480A9 2C20 sub al, 0x20
080480AB 776F ja +0x6f (0x804811c)
080480AD 726C jc +0x6c (0x804811b)
080480AF 64210A and dword [fs:edx], ecx
080480B2 002E add byte [esi], ch
080480B4 7379 jnc +0x79 (0x804812f)
080480B6 6D insd
080480B7 7461 je +0x61 (0x804811a)
080480B9 6200 bound eax, dword [eax]
080480BB 2E7374 jnc +0x74 (0x8048131)
080480BE 7274 jc +0x74 (0x8048134)
Hit <return> to continue, or <q> to quit
</source>
 
Widzimy, że otrzymany przykładowy listing do złudzenia przypomina niedawno kompilowany kod źródłowy napisany w języku asembler. Zauważamy jedynie, że używane etykiety często zastąpione są już konkretnymi adresami liczbowymi w używanej pamięci.
 
==Wykonanie krok-po-kroku==