Sastavljanje programa skupštine s NASM-om

Kompajliranje programa za sastavljanje s NASM-om može se obaviti na Linuxu ili Windowsu, jer je NASM dostupan za obje platforme. Netwide Assembler (NASM) je asembler i asembler za arhitekturu Intel x86 i obično se koristi za stvaranje 16-bitnih, 32-bitnih (IA-32) i 64-bitnih (x86-64) programa.

Skup će pretvoriti vaše kodiranje na niskoj razini, pomoću mnemotehnike, u strojni jezik koji procesor može razumjeti. Ovaj članak vas neće naučiti programirati s NASM-om, nego stvoriti izvršnu naredbu za Linux i Windows iz izvornog koda NASM-a.

  • Sastavljanje programa skupa s NASM-om za Linux
    • Izrada izvorne datoteke
    • Sastavljanje izvorne datoteke
    • Stvaranje Izvršne
    • Izvršenje programa
  • Sastavljanje programa za sastavljanje s NASM-om za Windows
    • Instaliranje softvera
    • Izrada izvorne datoteke
    • Sastavljanje izvorne datoteke
    • Izrada i izvršenje Programa

Sastavljanje programa skupa s NASM-om za Linux

Izrada izvorne datoteke

Za to možete koristiti bilo koji uređivač teksta, kao što su Gedit, KWrite ili XEmacs . Kada spremite datoteku, dajte joj ekstenziju .asm .

Sastavljanje izvorne datoteke

Za ovaj korak trebat će vam NASM softver instaliran na vašem računalu.

Ako koristite Debian ili Ubuntu, jednostavno upišite naredbu:

 sudo apt-get install nasm 

Ako imate drugu distribuciju Linuxa, morate koristiti upravitelja paketa za distribuciju (npr. Urpmi, Yum, Emerge) ili preuzeti NASM s službene stranice.

Upotrijebite sljedeću naredbenu liniju za sastavljanje izvorne datoteke:

 nasm -f elf test.asm 

U primjeru se spremljena datoteka .asm naziva test.asm . To će stvoriti datoteku pod nazivom test.o u trenutnom direktoriju.

NB Ova datoteka nije izvršna. To je još uvijek objektna datoteka.

Stvaranje Izvršne

Sada kada imamo objektnu datoteku pod nazivom test.o, moramo kreirati našu izvršnu datoteku.

Vaš program može započeti s postupkom koji se zove _start . To znači da vaš program ima vlastitu točku ulaza, bez korištenja glavne funkcije. Međutim, morat ćete upotrijebiti "l" za izradu izvršne datoteke:

 ld test.o -o test 

Alternativno, vaš program može započeti s postupkom koji se zove glavni . Morat ćete upotrijebiti gcc za izradu izvršne datoteke:

 gcc test.o -o test 

Sada je vaša izvršna datoteka kreirana, testirana i smještena u trenutnom direktoriju.

Izvršenje programa

Da biste pokrenuli program koji se zove test, upišite ovu naredbu:

, test 

Sastavljanje programa za sastavljanje s NASM-om za Windows

Glavna funkcija nije dostupna u sustavu Windows i mora je zamijeniti WinMain .

Ako je vaša ulazna točka _start ili main, trebate je promijeniti u _WinMain @ 16 . Također, promijenite ret na kraju postupka do retka 16 :

 odjeljak

globalno

:

mov eax, 0

ret 16

Instaliranje softvera

Najprije morate instalirati //ccm.net/download/download 1025 NASM. Držite arhivu negdje, jer će se kasnije koristiti.

Najteži korak će biti instaliranje MinGW-a, koji je besplatno razvojno okruženje za Windows:

Počnite odabirom najnovije verzije MingGW-a od AZ. Pokrenite instalacijski program, ali ne ažurirajte u ovom trenutku. Ostavite sve opcije odabrane prema zadanim postavkama i pričekajte da se instalira.

Sada morate umetnuti NASM u razvojno okruženje MinGW. Raspakirajte NASM arhivu. Trebali biste dobiti mapu koja, između ostalog, sadrži datoteku nazm.exe . Kopirajte ovu datoteku u direktorij C: MinGW bin .

Izrada izvorne datoteke

Poput Linuxa, nema potrebe za korištenjem određenog izdavača za stvaranje izvorne datoteke za NASM. Možete koristiti Notepad . Ali imajte na umu da je sklon dodavanju .txt ekstenzije datotekama koje stvara. Da biste uklonili nejasnoće, preporučujemo da pregledate proširenja svojih datoteka.

U svakom slučaju, izbjegavajte procesore riječi, kao što su Word ili WordPad .

Ako želite, možete koristiti i uređivač koji koristi NASM sintaksu, kao što je NasmEdit IDE .

Provjerite jeste li spremili izvornu datoteku s nastavkom .asm .

Sastavljanje izvorne datoteke

Otvorite prozor naredbe tako da odete na Start> Pokreni i upišete cmd.exe

Pomoću naredbe cd idite na mapu koja sadrži vašu izvornu datoteku. Nakon što ste u ovom direktoriju, sastavite izvornu datoteku ( test.asm ) s ovom naredbom:

 nasm -f win32 test.asm -o test.o 

Sada ste stvorili objektnu datoteku. Sljedeći korak je pretvoriti ga u izvršnu datoteku.

Izrada i izvršenje Programa

Iz prozora naredbe upišite završnu naredbu za izradu izvršne datoteke:

 ld test.o -o test.exe

Slika: © Alexandr Pakhnyushchyy - Shutterstock.com

Prethodni Članak Sljedeći Članak

Top Savjeta