What are the two main categories of ISA design philosophy, CISC and RISC?
CISC (Complex Instruction Set Computer) packs many powerful, variable-length instructions; RISC (Reduced Instruction Set Computer) uses few, simple, fixed-length ones — only load/store touch memory.
The two philosophies are answers to a historical trade-off. In the 1970s memory was scarce and expensive, so it made sense for one instruction to do a lot (a single x86 instruction can read memory, multiply, and add). By the 1980s, researchers realised that simple instructions are easier to pipeline and clock faster, so the win shifted toward many simple steps.
| Feature | CISC | RISC |
|---|---|---|
| Instructions | Many, complex | Few, simple |
| Instruction length | Variable (1–15 bytes) | Fixed (usually 32 bits) |
| Memory access | Most instructions can | Only load/store |
| Example | x86, x86-64 | ARM, RISC-V, MIPS |
Modern reality: the line is blurred. x86 chips internally translate their CISC instructions into RISC-like "micro-ops" and execute those — getting CISC's compact code with RISC's fast execution. Intel has matched RISC on raw speed, though historically less so on power efficiency.
Go deeper:
RISC (Wikipedia) — the RISC simple-instruction philosophy in depth.
CISC (Wikipedia) — the opposing CISC philosophy.