Assembly language is a low-level programming language that provides a symbolic, human-readable way to write instructions that a CPU understands. It’s one step above machine code (binary) and is specific to a CPU architecture like x86, x86-64, ARM, RISC-V, etc.

Features

  • Architecture-specific (e.g., x86-64, ARM, MIPS)
  • Mnemonic-based: Uses symbols like mov, add, jmp
  • Low-level: Direct access to memory, CPU registers, and instructions
  • Used for: OS kernels, bootloaders, reverse engineering, malware, performance-critical code.

Instructions

MnemonicMeaningExampleDescription
movMove datamov rax, rbxCopies data between registers/memory
addAdditionadd eax, 1Adds a value
subSubtractionsub rbx, 10Subtracts a value
pushStack pushpush raxPushes a value onto the stack
popStack poppop rbxPops value from the stack
callCall functioncall my_funcCalls a subroutine
retReturnretReturns from subroutine
jmpJumpjmp labelUnconditional jump
cmpComparecmp eax, 0Sets flags based on comparison
jeJump if equalje labelConditional jump if equal

3 items under this folder.