abc Asembler - elektronski priručnik
II dio Radno okruženje
II dio Radno okruženje
Ovdje ćemo za programiranje u asemblerskom jeziku koristiti online NASM asembler (Netwide assembler), gdje možemo izvršavati sve navedene primjere. Možemo ga naći na adresi
http://www.compileonline.com/.
Izvršimo sljedeći primjer:
Section .text
global _start ;must be declared for linker (ld)
_start: ;tells linker entry point
mov edx,len ;message length
mov ecx,msg ;message to write
mov ebx,1 ;file descriptor (stdout)
mov eax,4 ;system call number (sys_write)
int 0x80 ;call kernel
mov eax,1 ;system call number (sys_exit)
int 0x80 ;call kernel
section .data
msg db 'Hello, world!', 0xa ;our string
len equ $ - msg ;length of our string
Asemblerski jezik je zavisan od seta instrukcija i arhitekture procesora. Ovdje ćemo se fokusirati na Intel 32 procesore kao što je Pentium.
Postoje mnogi dobri asemblerski programi kao što su:
- Microsoft Assembler (MASM)
- Borland Turbo Assembler (TASM)
- GNU assembler (GAS)
Mi ćemo koristiti NASM asembler, zato što je:
- Besplatan. Može se skinuti sa različitih izvora na webu.
- Dobro je dokumentovan i na netu se može naći mnogo informacija o njemu.
- Može se koristiti i na Linux-u i na Windows-u.
Adresiranje podataka u memoriji < Index > Osnovna sintaksa
|