KinLux / Assembler

x86 Assembler Tutorial Scripts

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Assembler

Required

sudo apt install nasm

Basics x86_32

$nasm -f elf32 lvl1.asm -o lvl1.o

$ld -m elf_i386 lvl1.o -o lvl1

$./lvl1

Basics x86_64

$nasm -f el642 lvl1.asm -o lvl1.o

$ld -m elf_i386 lvl1.o -o lvl1

$./lvl1

Operations

Data Movement Instructions
mov
push
pop
lea
Arithmetic and Logic Instructions
add
sub
inc, dec
imul
idiv
and, or, xor
not
neg
shl, shr
Control Flow Instructions
jmp jump
cmp comparison
call, ret Function calls and return value
jcondition
je (jump when equal)
jne (jump when not equal)
jz (jump when last result was zero)
jg (jump when greater than)
jge (jump when greater than or equal to)
jl (jump when less than)
jle (jump when less than or equal to)

section .data types

DB - Define Byte. 8 bits

DW - Define Word. Generally 2 bytes on a typical x86 32- bit system

DD - Define double word. Generally 4 bytes on a typical x86 32-bit system

System Calls Table for x86

x86_32

x86_64

Referenz for good tutorials

Assembler Tutorial - www.cs.virginia.edu

alt text

https://asmtutor.com

About

x86 Assembler Tutorial Scripts


Languages

Language:Assembly 93.3%Language:C 6.1%Language:C++ 0.6%