Untuk assembler program menggunakan NASM dapat dilakukan pada Linux atau Windows, karena NASM tersedia untuk kedua sistem operasi tersebut. Netwide Assembler (NASM) adalah assembler dan dissembler untuk arsitektur Intel x86 dan banyak digunakan untuk membuat program 16-bit, 32-bit (IA-32), dan 64-bit (x86-64).
Sebuah assembler akan membantu mengkodekan bahasa program sederhana, menjadi bahasa pemrograman mesin agar dapat dimengerti oleh prosesor dengan menggunakan mnemonics. Artikel ini tidak akan mengajarkan Anda cara menggunakan NASM, namun untuk membuat perintah pada Linux dan Windows dari sumber kode NASM.
Anda dapat menggunakan editor teks apa saja, seperti Gedit, KWrite, atau XEmacs, untuk melakukannya. Saat Anda menyimpan file ini, simpan dengan ekstensi ASM.
Pada langkah ini, Anda perlu mengunduh software dan menginstal NASM di komputer Anda.
Jika Anda menggunakan Debian atau Ubuntu, cukup ketik perintah berikut ini:
sudo apt-get install nasm
Jika Anda menggunakan paket distribusi Linux lainnya, Anda harus menggunakan manajer paket bawaan dari distribusi Linux Anda (misalnya Urpmi, Yum, Emerge) atau mengunduh NASM dari situs web resminya.
Gunakan perintah berikut ini untuk mulai merakit file sumber:
nasm -f elf test.asm
Dalam contoh berikut ini, file ASM yang tersimpan diberi nama test.asm. Proses ini akan membuat file bernama test.o dalam direktori yang sama.
N.B. File ini masih tidak dapat dieksekusi. Ini adalah file objek.
Sekarang, setelah membuat file objek bernam test.o, kita perlu membuat file executable untuk proses eksekusi.
Program Anda mungkin dimulai dengan prosedur bernama _start. Ini artinya program Anda memiliki titik masuknya sendiri, tanpa menggunakan fungsi main. Bagaimanapun, Anda akan membutuhkan "l" untuk membuat file eksekutor:
ld test.o -o test
Sebagai alternatif, program Anda mungkin dimulai dengan prosedur yang disebut main. Anda akan membutuhkan "gcc" untuk membuat file yang dapat dieksekusi:
gcc test.o -o test
Sekarang, file executable telah dibuat, diuji, dan berada di direktori yang Anda gunakan.
Untuk emmbuat program yang disebut test, cukup ketik perintah berikut:
. / test
Fungsi utama NASM tidak tersedia pada WIndows dan harus menggunakan WinMain.
Jika titik masuk Anda adalah _start atau main, maka Anda perlu mengubah _start menjadi _WinMain @ 16. Selain itu, ubah ret pada titik akhir prosedur menjadi ret 16:
section .text
global _WinMain@16
_WinMain@16:
mov eax, 0
ret 16
Anda harus menginstal http://ccm.net/download/download 1025 NASM. Letakkan arsip di suatu temapt, agar dapat digunakan lain waktu.
Bagian yang cukup sulit adalah menginstal MinGW, yang merupakan program development environment untuk Windows:
Pilih versi terbaru MingGW dari A-Z. Mulai proses instalasi, namun jangan lalukan pembaruan program untuk sementara ini. Tinggalkan semua opsi tambahan, dan tunggu proses instalasi.
Sekarang, masukkan NASM dalam MinGW. Buka arsip NASM. Pada tahap ini, Anda perlu mendapatkan folder yang berisi file dengan nama nasm.exe. Salin file ini ke dalam direktori C: \ MinGW \ bin.
Seperti pada Linux, tidak perlu memilih editor teks khusus saat membuat file sumber untuk NASM. Anda dapat menggunakan Notepad. Namun perlu diketahui, bahwa Notepad akan memberi tambahan ekstensi TXT pada akhir file. Untuk menghilangkan ambiguitas, Anda direkomendasikan untuk memeriksa lagi ekstensi file Anda.
Dalam keadaan apapun, hindari menggunakan program pengolah kata seperti Word atau WordPad.
Jika Anda ingin, Anda juga dapat menggunakan editor teks yang didesain untuk membuat file NASM, seperti NasmEdit IDE.
Pastikan Anda telah menyimpan file sumber dengan ekstensi ASM.
Buka jendela Command melalui menu Start > Run dan ketik cmd.exe.
Dengan menggunakan perintah cd, pergi ke folder yang berisi file sumber Anda. Saat Anda berada pada direktori tersebut, gabungkan file sumber Anda (test.asm) dengan perintah berikut:
nasm -f win32 test.asm -o test.o
Sekarang, Anda telah membuat file objek. Langkah berikutnya adalah file tersebut sebagai file yang dapat dieksekusi.
Dari jendela Command Anda, ketik perintah akhir untuk membuat bagian yang dapat dieksekusi:
ld test.o -o test.exe
Image: © Alexandr Pakhnyushchyy - Shutterstock.com