Curs de instruire

După rularea acestui fișier de bat veți vedea despre această fereastră:

Curs de instruire

Mesajul înseamnă că fișierul executabil nu are date speciale pentru depanare. Dar nu avem nevoie de aceste date, deoarece programul este simplu și ușor de înțeles. Faceți clic pe OK. Turbo Debugger afișează o fereastră CPU în care puteți vedea modul în care rulează programul.







Curs de instruire

Regiștrii CPU și steagurile sunt afișate în partea dreaptă a ferestrei procesorului. În partea de jos, puteți vedea zona de memorie și stack-ul. O stivă este o structură de date specială, cu care funcționează unele comenzi ale procesorului.

Curs de instruire

Acum, săgeata indică a doua comandă. Registrele modificate sunt evidențiate în alb. Registrul AX conține acum valoarea 00FFh (adică 255, ceea ce am dorit din comanda "mov ax, 255"). Valoarea registrului IP sa schimbat de asemenea - a crescut cu mărimea instrucțiunii mașinii executate, și anume cu 3. Acum CS: IP indică următoarea comandă. Apăsați din nou F8.

Curs de instruire

Valoarea registrului AX a crescut cu 1 și a devenit egală cu 0100h (256). Valoarea IP a crescut de asemenea cu 1, deoarece lungimea comenzii "inc ax" este de 1 octet. Procesorul execută secvențial programul, o comandă după alta. Apăsați din nou F8.

Curs de instruire

Echipa NOP nu face nimic. Doar valoarea IP se modifică - este din nou mărită cu 1. Din nou, F8.

Curs de instruire






Valoarea lui BX devine egală cu AX. După încă două apăsări ale programului F8, programul se termină. Puteți închide programul de depanare utilizând meniul File-> Quit.

Pe scurt, în orice mod am încercat să deschid, sau dacă aș putea găsi un debugger turbo în Windows, dar nu a fost posibil. Am descarcat un debugger turbo, cu siguranta a incetinit cateva secunde si apoi da un ecran albastru de moarte. (În general, acest lucru se întâmplă tot timpul când încerc să pun în aplicare orice program DOS pe 16 biți pe întregul ecran cu Alt + Enter). Am repornit computerul, am lansat programul de depanare prin DOSBox-07.4 ... mulțumesc lui Dumnezeu că funcționează))
Vă mulțumim pentru articolul dvs. de înțeles))

Poate e în Windows sau un sofer
Apoi este cu atât mai ușor să rulați în emulator.
Toate programele din exemple sunt foarte simple, ar trebui să funcționeze rapid.

Poate că sunt proastă kanesh)))
Dar ce să scrie la acestea în linia pe care ați specificat-o să le scrieți în debug.bat.

Nu vă chinuiți cu un batnik dacă nu îl înțelegeți. Doar rulați td.exe și deschideți fișierul compilat din meniu. Fișier-> Deschidere-> Răsfoiți (rețineți că există implicit o mască * .exe și aveți nevoie de o mască * .com). Pentru a facilita navigarea, este mai ușor să copiați un fișier binar într-un dosar cu td.

în schimb: program_file ce ar trebui să scriu?

Numele fișierului. De exemplu, dacă fișierul cu textul programului este denumit proga.asm, atunci programul compilat va fi numit proga.com
În fișierul bat trebuie să scrieți:
C: \ TD \ td.exe proga.com

În cazul în care depanatorul și programul în directoare diferite, atunci este necesar să se scrie calea completă.

Articole super =) mulțumiri

Și de unde știți de ce linie începe orice gunoi atunci când depanezi un alt program?

De ce, atunci când depanem un program, apare fereastra No program loaded?

Și de ce nu rulați programul prin meniul File \ open? așa că cred că este mult mai convenabil. Ce să creezi ceea ce să lanseze acest lucru și prin el?

Foarte bun manual. Totul este simplu și ușor de înțeles. Vă mulțumesc pentru munca dvs. Sper că într-adevăr nu veți renunța la această chestiune în viitor. Și acum de afaceri ... Poate că eu
ceva nu este înțeles, dar de ce toate aceste dificultăți cu fișierele de bat. Nu ar fi mai simplu să trageți "proga.com" în eticheta "TD" sau direct în "TD". Deci, nu mai este nevoie de fișiere rapide și mai convenabile și de bat. Explicați-vă.

Bună ziua. Și o altă întrebare, deși, înainte de a pune o întrebare, vă rog să nu râdeți foarte mult la întrebările mele, sunt la etapa inițială.
Dar, bine, întrebarea, debuggerul este necesar doar pentru a observa cum funcționează programul? și dacă scriem un program pentru un fel de cip, atunci poate fi cusut fără a utiliza un depanator, cred corect?
Mulțumesc.

Pentru cei care lucrează în win7, etc.

1. Asigurați-vă că executați FASMW.exe, adică fasmwindows.

2.Creați așa cum este descris de proga.com

3. Copiați proga.com în directorul C: \ Td

4. Începeți td.exe, selectați File> open> C: \ Td \ proga.com - în fereastra C: \ Td \ td.exe va exista textul proga.com
5. Dacă trebuie să rulați debug.bat (C: \ Td \ td.exe proga.com) din C: \ windows \ system32 în C: \ fasm

Pentru timpul său td a fost un bun debugger. Dar, în realitate, nu se poate face acum decât în ​​scopuri educaționale. Prin urmare, este mai bine să folosiți imediat un modern ca OllyDbg.

Interesant, acest program de depanare poate fi depanat orice programe. de exemplu, dispozitive de firmware pe procesoare de braț?







Articole similare

Trimiteți-le prietenilor: