Asamblejas programmas apkopošana ar NASM

Montāžas programmas ar NASM apkopošanu var veikt Linux vai Windows, jo NASM ir pieejams abām platformām. Netwide Assembler (NASM) ir Intel x86 arhitektūras montētājs un izplatītājs, un to parasti izmanto, lai izveidotu 16 bitu, 32 bitu (IA-32) un 64 bitu (x86-64) programmas.

Apkopojums jūsu maza līmeņa kodējumu, izmantojot mnemoniku, pārvērš mašīnvalodā, ko apstrādātājs var saprast. Šis raksts netiks iemācīts jums programmēt ar NASM, bet gan izveidot izpildāmu komandu Linux un Windows sistēmai no NASM pirmkoda.

  • Montāžas programmas apkopošana ar NASM Linux
    • Avota faila izveide
    • Avota faila montāža
    • Izpildāmā izveide
    • Programmas izpilde
  • Montāžas programmas apkopošana ar NASM operētājsistēmai Windows
    • Programmatūras instalēšana
    • Avota faila izveide
    • Avota faila montāža
    • Programmas izveide un izpilde

Montāžas programmas apkopošana ar NASM Linux

Avota faila izveide

Lai to izdarītu, varat izmantot jebkuru teksta redaktoru, piemēram, Gedit, KWrite vai XEmacs . Saglabājot failu, piešķiriet tai paplašinājumu .asm .

Avota faila montāža

Šim solim jums būs nepieciešama NASM programmatūra, kas ir instalēta jūsu datorā.

Ja izmantojat Debian vai Ubuntu, vienkārši ierakstiet komandu:

 sudo apt-get instalēt nasmu 

Ja jums ir cita Linux izplatīšana, jums ir jāizmanto jūsu izplatīšanas pakotņu pārvaldnieks (piemēram, Urpmi, Yum, Emerge) vai lejupielādējiet NASM no oficiālās vietnes.

Lai apkopotu avota failu, izmantojiet šādu komandrindu:

 nasm -f elf test.asm 

Piemērā saglabātais .asm fails tiek saukts par test.asm . Tas izveidos failu ar nosaukumu test.o pašreizējā direktorijā.

NB! Šis fails nav izpildāms. Tas joprojām ir objekta fails.

Izpildāmā izveide

Tagad, kad mums ir objekta fails ar nosaukumu test.o, mums ir jāizveido izpildāmā versija.

Jūsu programma var sākties ar procedūru, ko sauc par _start . Tas nozīmē, ka jūsu programmai ir savs iebraukšanas punkts, neizmantojot galveno funkciju. Tomēr, lai izveidotu izpildāmo failu, jums jāizmanto "l":

 ld test.o -o tests 

Alternatīvi, jūsu programma var sākties ar procedūru, ko sauc par galveno . Lai izveidotu izpildāmo failu, jums būs jāizmanto gcc:

 gcc test.o -o tests 

Tagad jūsu izpildāmā versija ir izveidota, pārbaudīta un atrodas pašreizējā direktorijā.

Programmas izpilde

Lai palaistu programmu, ko sauc par testu, vienkārši ievadiet šo komandu:

 . / pārbaude 

Montāžas programmas apkopošana ar NASM operētājsistēmai Windows

Galvenā funkcija nav pieejama sistēmā Windows, un tā ir jāaizstāj ar WinMain .

Ja jūsu ieejas punkts ir _start vai galvenais, tas ir jāmaina uz _WinMain @ 16 . Nomainiet atkārtojumu procedūras beigās, lai veiktu atkārtotu 16 :

 sadaļa

globāls

:

mov eax, 0

ret 16

Programmatūras instalēšana

Vispirms jāinstalē //ccm.net/download/download 1025 NASM. Saglabājiet arhīvu kaut kur, jo tas tiks izmantots vēlāk.

Visgrūtākais solis būs MinGW instalēšana, kas ir brīva Windows attīstības vide:

Sāciet ar jaunāko MingGW versiju no AZ. Palaidiet instalēšanas programmu, bet pašlaik nevajag atjaunināt. Atstājiet visas izvēles pēc noklusējuma un pagaidiet, līdz tā tiks instalēta.

Tagad jums ir nepieciešams ievietot NASM izstrādes vidē MinGW. Izņemiet NASM arhīvu. Jums vajadzētu iegūt mapi, kurā cita starpā ir fails ar nosaukumu nasm.exe . Kopējiet šo failu direktorijā C: MinGW .

Avota faila izveide

Tāpat kā Linux, nav nepieciešams izmantot konkrētu izdevēju, lai izveidotu avota failu NASM. Varat izmantot Notepad . Bet ņemiet vērā, ka tai ir tendence pievienot .txt paplašinājumu failiem, ko tas rada. Lai novērstu jebkādu neskaidrību, ieteicams skatīt failu paplašinājumus.

Jebkurā gadījumā izvairieties no vārdu procesoriem, piemēram, Word vai WordPad .

Ja vēlaties, varat izmantot arī redaktoru, kas izmanto NASM sintaksi, piemēram, NasmEdit IDE .

Pārliecinieties, vai jūsu avota fails ir saglabāts ar .asm paplašinājumu.

Avota faila montāža

Atveriet komandu logu, dodoties uz Start> Run un ierakstiet cmd.exe

Izmantojot komandu cd, dodieties uz mapi, kurā atrodas jūsu avota fails. Kad esat šajā direktorijā, apkopojiet avota failu ( test.asm ) ar šo komandu:

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

Tagad esat izveidojis objekta failu. Nākamais solis būs pārvērst to par izpildāmo failu.

Programmas izveide un izpilde

Komandu logā ierakstiet galīgo komandu, lai izveidotu izpildāmo:

 ld test.o -o test.exe

Attēls: © Alexandr Pakhnyushchyy - Shutterstock.com

Iepriekšējais Raksts Nākamais Raksts

Top Padomi