Assembly programming class repo.
- 01_basics → Intro programs
- 02_data_movement → MOV, registers, memory
- 03_arithmetic → ADD, SUB, MUL, DIV
- 04_logic_and_conditions → Logic, CMP, jumps
- 05_loops → LOOP, factorial, counters
- 06_procedures → CALL & RET
- 07_system_calls → Linux syscalls
- 08_file_handling → File read/write
- 09_debugging → GDB practice
- build/ → Compiled executables
- docs/ → Teaching notes/slides
- scripts/ → Helper scripts
64-bit | 32-bit | 16-bit | 8-bit High | 8-bit Low | Traditional Purpose |
---|---|---|---|---|---|
rax | eax | ax | ah | al | Accumulator |
rbx | ebx | bx | bh | bl | Base |
rcx | ecx | cx | ch | cl | Counter |
rdx | edx | dx | dh | dl | Data |
rsi | esi | si | - | sil | Source Index |
rdi | edi | di | - | dil | Destination Index |
rbp | ebp | bp | - | bpl | Base Pointer |
rsp | esp | sp | - | spl | Stack Pointer |
r8-r15 | r8d-r15d | r8w-r15w | - | r8b-r15b | Extended registers |