Debuggerul AFD este un instrument foarte simplu și ușor de utilizat pentru programele de depanare. Este extrem de compact (dimensiunea fișierului afd.com este de aproximativ 65K), dar oferă o gamă destul de largă de servicii și este concepută pentru a rezolva o gamă largă de sarcini, inclusiv următoarele:
- Dezvoltarea și depanarea programelor în limba de asamblare;
- studiul activității programelor și modificarea lor;
- studierea conținutului actual al RAM, registrelor etc.
Debuggerul AFD furnizează utilizatorului două ecrane - ecranul principal, în care sunt efectuate toate operațiile și sunt vizualizate informațiile de bază și o alternativă (ascunsă), concepută pentru a afișa rezultatele programului. Ecranul principal are două pagini. A doua pagină este pentru setarea punctelor de întrerupere în program. Tranzițiile de la o pagină la alta se fac prin apăsarea tastei funcționale F5 - Set Point Break. care se reflectă în meniul din partea inferioară a ecranului de prima pagină.
Comenzile de debugger sunt executate după apăsarea tastei ENTER.
Luați în considerare comenzile de bază ale instrumentului de depanare:
QUITR> - comanda pentru a părăsi aplicația de depanare și a reveni la DOS. Când ieșiți din programul de depanare, fișierele de lucru nu sunt salvate. Opțiunea R face ca programul AFD să fie rezident și AFD poate fi apelat apăsând CTRL-Esc.
MO M | C | A ON | OFF - comanda pentru furnizarea setărilor ecranului. Vă permite să activați un ecran alternativ (ascuns) pentru a afișa datele furnizate de programul de executare. După executarea comenzii MO A ON, comutați între ecranul principal și ecranele alternative utilizând tasta F6. Dacă comanda este specificată cu parametrul M. Este utilizat un adaptor monocrom, parametrul C permite utilizarea unui adaptor de culoare. Dacă specificați o comandă fără parametri, vor fi afișate setările curente ale ecranului aplicației.R> reg = valoare - comanda pentru a seta valoarea registrului. Dacă doriți să setați toți biții disponibili din registrul FL de pavilion. FL = valoarea trebuie dată. de exemplu: FL = FE. Aici registrul de steaguri este setat la o valoare hexazecimală. Puteți utiliza aceeași comandă pentru a seta biții individuali ai acestui registru și ar trebui să vă referiți la acestea prin numele lor. OF, DF, IF, SF, ZF, AF, PF, CF. De exemplu, CF = 1. Pentru a seta valoarea registrului AX, executați comanda AX = 12fd.
BW fspec este comanda pentru a scrie puncte de întrerupere la un fișier specificat de parametrul fspec.
BL fspec - o comandă pentru încărcarea punctelor de întrerupere de la un fișier specificat de parametrul fspec.
- fspec specifică numele fișierului numit în conformitate cu convențiile DOS. Pentru comanda L, extensia implicită este "exe";
- Reg - un registru al mărimii unui octet sau cuvânt;
- Valoare - poate lua valoarea unui registru sau a unui octet / cuvânt în format hexazecimal. Dacă valoarea este "*", atunci conținutul registrului IP este luat ca valoare. Valoarea zecimal este scrisă ca% 123. puteți utiliza expresii aritmetice, de exemplu AX + BX * 3/2. Ordinea calculelor este definită strict - de la stânga la dreapta;
- String-ul specifică o listă de valori sau șiruri ASCII (șirul este închis în ghilimele) separate prin spații sau o virgulă.
Funcția de asignare a tastelor:
F1 - execuția pas cu pas a programului cu intrarea în procedură;
F2 - executarea pas cu pas a programului fără a intra în procedură;
F3 - reporniți programul;
Comenzile de depanare F4 - HELP;
F6 - comutarea ecranelor principale și alternative (inițializate după instalarea corespunzătoare);
F7, F8, F9, F10 - poziționați cursorul în câmpul dorit al ecranului - sus, jos, stânga, dreapta.
Lucrări de laborator nr. 1