1. Load-store arkitektur:
Både RISC- og CISC-systemer kan direkte implementere en load-store-arkitektur gennem instruktioner som LOAD og STORE. Denne adskillelse giver mulighed for enklere instruktionsdekodning, samt eliminering af komplekse adresseringstilstande, der findes i CISC-systemer.
2. Registrer-til-registrerings-handlinger:
RISC-systemer lægger vægt på brugen af register-til-register-operationer for at øge ydeevnen. CISC-systemer kan også understøtte register-til-register-operationer, og moderne CISC-processorer har ofte et betydeligt antal generelle registre for at optimere ydeevnen.
3. Simple adresseringstilstande:
RISC-systemer anvender typisk enklere adresseringstilstande, såsom indirekte register, base plus forskydning og øjeblikkelig. CISC-systemer kan implementere disse simplere adresseringstilstande direkte, selvom de muligvis også understøtter mere komplekse adresseringstilstande for kompatibilitet med ældre kode.
4. Rørledning:
Både RISC- og CISC-systemer kan drage fordel af pipelining, som involverer at nedbryde instruktioner i faser og udføre dem samtidigt. Fremskridt inden for compilerteknologi og processordesign har gjort pipelining mulig for begge arkitekturer.
5. Reduceret instruktionssæt:
RISC-systemer anvender et reduceret sæt instruktioner, der er almindeligt anvendte og nemme at afkode. CISC-systemer kan efterligne en RISC-lignende adfærd gennem teknikker som mikroprogrammering eller binær oversættelse, hvilket giver dem mulighed for at udføre instruktioner i RISC-stil effektivt.
Det er dog værd at bemærke, at ikke alle karakteristika ved RISC-systemer kan implementeres direkte i CISC-systemer. For eksempel foretrækker RISC-systemer ofte et instruktionsformat med fast længde for enklere afkodning, hvorimod CISC-systemer kan bruge instruktioner med variabel længde til kodetæthed. Derudover kan niveauet af ortogonalitet (konsistens i instruktionsdesign) variere mellem RISC- og CISC-systemer.