A complex instruction set computer (CISC) is an architectural category distinguished chiefly by how its instructions interact with memory and computation. This lesson introduces the definition, explains why the label is broader than its name may suggest, and surveys representative architectures.
A complex instruction set computer (CISC) is a computer architecture in which an instruction may perform multiple low-level operations, or support a multi-step operation or addressing mode. For example, a single instruction might load a value from memory, perform arithmetic on it, and store a result.
All flashcards
Complex instruction set computer (CISC)
An architecture whose instructions may combine memory access with computation or perform multiple low-level operations.
Load–store architecture
An architecture that uses separate load and store instructions for memory access, with arithmetic generally performed on register values.
Semantic gap
The difference between operations expressed by high-level languages and operations directly supported by a processor.
Superscalar processor
A processor that can issue or execute multiple operations in overlapping or concurrent fashion.
Micro-operations
Internal operations into which a processor may decode machine instructions for execution.
Quiz questions
Why can variable-length CISC instructions make direct superscalar decoding more challenging?Answer: Their boundaries can be harder to locate when decoding several instructions quickly.
When a modern x86 processor decodes an instruction into micro-operations, what happens to the programmer-visible instruction set?Answer: It remains the same; micro-operations are an internal implementation technique.
Why are CISC and RISC labels limited as simple predictors of processor performance?Answer: Implementation techniques and memory systems affect performance beyond the instruction-set category.
What did the IBM 801 help demonstrate about a simple, regular instruction set?Answer: Its regularity could make overlapping processor stages easier to implement.
How could a complex instruction reduce performance on hardware with limited resources?Answer: It could take longer to execute than a sequence of simpler instructions.