Orice moment al zilei, rubrica noastră va începe cu acest subiect, în care vom efectua adăugarea a două numere în Assembler și credem: nu o face așa de ușor cum pare. Ei bine, trebuie remarcat faptul că vom aborda elementele de bază, deci chiar și astfel de exemple ar trebui dezasamblate.
De asemenea, vă reamintesc că lucrăm în MASM32 și, prin urmare, trebuie să îl instalați. Cum să procedăm, am spus în ultimul articol despre Asamblare.
Cum se creează fișierele Assembler
Înainte de a vă da codul programului, cred că nu va fi superfluă să scrieți cum și unde să scrieți codul:
1. Creați orice fișier cu extensia .txt
Nu este atât de important cu ajutorul programului pe care îl faceți (Notepad, Notepad etc.)
2. Noi scriem codul însuși în acest fișier (exemplul de cod va fi mai jos)
3. Redenumiți acest fișier într-un fișier cu extensia .asm
4. Mutați fișierul în dosarul BIN (dosarul utilizat în 1 articol)
Codul pentru adăugarea de numere în Assembler
De fapt, un mic cod al programului:
Ei bine, aici este codul pentru Assembler.
Primele două rânduri sunt obligatorii pentru MASM, așa că le vom scrie în fiecare program. Acestea denotă tipul de procesor și modelul de memorie cu care lucrăm.
A treia linie este o secțiune a variabilelor (după această linie, trebuie să fie declarate variabilele), după cum puteți vedea, nu vom avea variabile în acest program.
Al patrulea este secțiunea cod. În programul nostru, am pus o valoare de 3 în registrul eax, și apoi adăugăm folosind add (add) 2, este logic că acum valoarea 5 va fi stocată în acest registru.
Cine nu știe ce este registrul, atunci mai bine ai citit aici.
Apoi, comanda ret merge, ceea ce indică ieșirea din program și începutul final al ieșirii.
Cum se execută programe
Deci, avem un fișier cu extensia .asm, care se află în dosarul BIN.
Felicitări, acesta este primul cod de pe Assembler!
Dar totuși, nu este încă clar cum să verificăm dacă programul funcționează (adică dacă este compilat și poate fi lansat)?
Pentru aceasta, noi o rulam acum:
1. Rulați linia de comandă (înregistrați cmd în căutare, bine sau într-un alt mod)
2. Mergeți la dosarul BIN cu comanda cd
La mine această comandă va arăta astfel: cd C: \ Users \ Nikita \ BIN
3. Scrieți următoarea intrare: numele fișierului amake.bat (fără extensie)
Eu prescriu: amake.bat primul
De asemenea, vă reamintesc că acest lucru va funcționa numai dacă MASM32 este instalat corect, în articolul precedent despre care am vorbit.
Faceți clic pe enter
Dacă nu există erori, atunci veți avea ceva de genul:
Rularea depanatorului OLLYDBG
Programul a fost compilat și este deja bun, acum trebuie să verificăm modul în care a funcționat, dar dintr-o dată nu s-au împrăștiat cele două numere.
Pentru a face acest lucru, în dosarul BIN, deschideți programul de depanare (care a fost instalat în 1 articol) OLLYDBG.
În programul de depanare, deschideți fișierul program (fișier> deschideți prima.exe) și vedeți codul din partea cealaltă:
Din moment ce lucrăm cu registrul eax, vom urmări valoarea exactă (în fereastra din dreapta, 1 valoare registru)
Deci, pentru a parcurge programul nostru pas cu pas, faceți clic pe butonul albastru din stânga (săgeată în jos cu 3 puncte)
După un clic, valoarea în eax a devenit 3, după 2 apăsare - 5.
Programul nostru funcționează corect!