Instruction Set Architecture (ISA)
overview
Summary
An instruction set architecture, or ISA, defines the contract between software and CPU hardware. It specifies machine instructions, registers, data types, memory model, addressing modes, and the binary encoding that compilers and assemblers target. ISAs also influence performance, code density, and portability. Common styles include RISC (simple, fixed-length) and CISC (richer, variable-length). Microarchitectures may differ internally yet implement the same ISA. Understanding ISAs clarifies how programs execute, how optimizations map to hardware, and why ABI and endianness matter.