Salute e malattia
L'assembly language fornisce rappresentazione simbolica one-to-one delle istruzioni macchina di un processore. Permette controllo hardware diretto, performance massimale, overhead runtime minimo.
| Concetto | Descrizione |
|---|---|
| Instruction Set Architecture (ISA) | Definisce operazioni, registri, addressing modes (es. x86-64, ARMv8, RISC-V, MIPS). |
| Registri | Storage on-CPU veloce: general-purpose (RAX, RBX…), speciali (RIP, RSP, RFLAGS), vettoriali (XMM/YMM/ZMM). |
| Memory Addressing | Diretto, indiretto, base+index+scale+displacement; segmentazione (legacy) vs flat paging. |
| Tipi Istruzioni | Movimento dati (MOV), aritmetiche (ADD, SUB, MUL, DIV), logiche (AND, OR, XOR, NOT), controllo flusso (JMP, Jcc, CALL, RET), SIMD (AVX, NEON), sistema (SYSCALL, CPUID). |
| Assembler & Linker | Traducono mnemonici → machine code; risolvono simboli, relocation; producono binari ELF / Mach-O / PE. |
| Calling Conventions | System V AMD64 (Linux/macOS), Microsoft x64 (Windows) – uso registri, stack alignment, shadow space. |
L'assembly non è un singolo linguaggio — ogni ISA ha sua sintassi e semantica. Maestria richiede comprendere architettura calcolatori, non solo mnemonici.
Programmazione neurolinguistica (PNL)