1. Architectuur van laadopslag:
Zowel RISC- als CISC-systemen kunnen rechtstreeks een load-store-architectuur implementeren via instructies zoals LOAD en STORE. Deze scheiding maakt eenvoudiger instructiedecodering mogelijk, evenals de eliminatie van complexe adresseringsmodi die voorkomen in CISC-systemen.
2. Register-naar-register-bewerkingen:
RISC-systemen benadrukken het gebruik van register-naar-register-bewerkingen voor betere prestaties. CISC-systemen kunnen ook register-naar-register-bewerkingen ondersteunen, en moderne CISC-processors hebben vaak een aanzienlijk aantal registers voor algemene doeleinden om de prestaties te optimaliseren.
3. Eenvoudige adresseringsmodi:
RISC-systemen maken doorgaans gebruik van eenvoudigere adresseringsmodi, zoals register indirect, basis plus verplaatsing en onmiddellijk. CISC-systemen kunnen deze eenvoudigere adresseringsmodi rechtstreeks implementeren, hoewel ze ook complexere adresseringsmodi kunnen ondersteunen voor compatibiliteit met oudere code.
4. Pijpleidingen:
Zowel RISC- als CISC-systemen kunnen profiteren van pipelining, waarbij instructies in fasen worden opgedeeld en deze gelijktijdig worden uitgevoerd. Vooruitgang in compilertechnologie en processorontwerp heeft pipelining voor beide architecturen haalbaar gemaakt.
5. Gereduceerde instructieset:
RISC-systemen maken gebruik van een beperkte reeks instructies die vaak worden gebruikt en gemakkelijk te decoderen zijn. CISC-systemen kunnen RISC-achtig gedrag emuleren door middel van technieken zoals microprogrammering of binaire vertaling, waardoor ze instructies in RISC-stijl efficiënt kunnen uitvoeren.
Het is echter vermeldenswaard dat niet alle kenmerken van RISC-systemen rechtstreeks in CISC-systemen kunnen worden geïmplementeerd. RISC-systemen geven bijvoorbeeld vaak de voorkeur aan een instructieformaat met een vaste lengte voor eenvoudiger decodering, terwijl CISC-systemen instructies met variabele lengte kunnen gebruiken voor de codedichtheid. Bovendien kan het niveau van orthogonaliteit (consistentie in instructieontwerp) verschillen tussen RISC- en CISC-systemen. |