191 TIF

191 TIF



Należy koniecznie obejrzeć rejestry. Wiele przydatnych informacji o rejestrach jest w zwykłym zrzucie stosu. Należy potrenować czytanie pliku odwzorowania i oglądanie rejestrów, aby w trudnej sytuacji móc użyć tych technik do rozwiązania problemu.

Aby wygenerować plik odwzorowania, należy w Visual Studio wykonać podane czynności.

1.    Z menu Project wybrać polecenie Settings.

2.    Wyświetlić kartę „Link”.

3.    Nacisnąć przycisk Generate mapfile.

W wierszu poleceń należy napisać polecenie:

/map:"plikpam.map"


Analizowanie stosu wywołań


159


jak to zrobić


Czynności

Przeanalizowanie stosu wywołań pozwala zrozumieć, co robi nasz kod. Jest to bardzo trudne, więc zaczniemy najpierw od przeglądu konwencji wywołań i dopiero wtedy poznamy właściwą technikę.

Popatrzmy na kod dwóch funkcji. Pierwsza z nich, o nazwie Śledź, jest normalną funkcją języka C++ pobierającą dwa argumenty. Druga — ŚledźListaPar — pobiera zmienną liczbę argumentów.


//Konwencja thiscall dla funkcji składowej języka C++ 373: int Trace(int i, int i1)

374: {

00401840    push ebp

00401841    mov ebp.esp

00401843    sub esp.OCh

00401846 mov dword ptr [ebp~0Ch],ecx 375: int j=8;


00401849    mov dword ptr [j],8 376: int k=9;

00401850    mov dword ptr [k],9


377: m_i = i+j+k+i1;


00401857 0040185A 0040185D 00401860 00401863 00401866 378: return 00401868


mov eax,dword ptr [i] add eax,dword ptr Q] add eax,dword ptr [k] add eax,dword ptr [i1] mov ecx,dword ptr [this] mov dword ptr [ecx],eax i;

mov eax,dword ptr [i]



Wyszukiwarka

Podobne podstrony:
teresujący Cię program studiów mają akredytację? Należy koniecznie sprawdzić akredytację uczelni.
ksiazka(032) Uszczelniacz pompy i uszczelkę miedzy pompą a kadłubem silnika przy naprawach należy wy
Zadanie 1. Spółkę z ograniczoną odpowiedzialnością należy zarejestrować w Krajowym Rejestrze
Zabawy rozwijające mowę dziecka (17) stwierdzili jakiekolwiek zahamowania w słyszeniu z odległości 3
Obraz7 (26) OBSŁUGAZasady ogólne Należy koniecznie zwrócić uwagę na następujące zalecenia: •
55623 Obraz7 (26) OBSŁUGAZasady ogólne Należy koniecznie zwrócić uwagę na następujące zalecenia: •
zakażenia1 nic należy pamiętać o lym. żc wiele zaknżerf lub zarażeń o różnej etiologii manifestuje s
1.3. Uwagi 1.    Przed załadowaniem opisów rozdziałów należy koniecznie załadować dan

więcej podobnych podstron