Assembly is all about precision. You tell the CPU *exactly what to do*, one instruction at a time. Hereβs what makes up a typical Assembly program:
section .data
β stores initialized data and constantssection .bss
β stores uninitialized datasection .text
β holds your actual codeglobal _start
β declares your programβs entry point for the linkermov
β move data into a registeradd
, sub
, mul
, div
β math operationsint 0x80
β makes a Linux syscall (older Linux systems)