Vorrei sapere la differenza tra tecnologia CISC e RISC.

La sigla
CISC sta per “Complex Instruction Set Computer”
(ovvero: computer con istruzioni complesse)
e RISC per “Reduced Instruction Set Computer”
(ovvero: computer con numero di istruzioni ridotto). Per comprenderne il
significato occorre rifarsi brevemente all’evoluzione delle architetture
delle CPU dei computer.

A causa della difficoltà di realizzare circuiti digitali complessi,
le prime generazioni di CPU erano dotate di un piccolo numero di istruzioni
estremamente semplici: il minimo numero indispensabile di operazioni
elementari e pochi metodi di indirizzamento della memoria. Tutte le operazioni
più complesse venivano realizzate dai programmi combinando in
vario modo le operazioni elementari. Ad esempio la moltiplicazione di due
numeri interi veniva spesso realizzata mediante un sottoprogramma
che faceva uso di somme successive e di altre operazioni come
pure tutte le operazioni “in virgola mobile” erano implementate dal software.

Con il progredire delle tecniche di integrazione e con la
conseguente possibilità di realizzare circuiti più complessi,
i progettisti pensarono che progettando CPU dotate di un maggior numero
di operazioni più complesse, sarebbe stato possibile realizzare
compilatori più semplici e programmi più veloci. Nacque quindi
una generazione di CPU caratterizzate da centinaia di istruzioni diverse
con decine di diversi modi di indirizzare la memoria, ad esempio la famiglia
Motorola 68000 e la ben nota famiglia Intel che inizia con
l’80186 ed arriva fino all’attuale Pentium.

Successivamente, però, alcuni studi mostrarono che in realtà
il software che veniva realizzato finiva per usare solo un numero assai
ristretto delle istruzioni disponibili e ci si rese conto che la complessità
delle istruzioni rendeva meno efficienti le CPU. Le architetture si
orientarono di nuovo a CPU con poche istruzioni semplici e questa sorta di
ritorno al passato fu ribattezzata RISC. CPU di questo tipo sono ad esempio
la i960, la Alpha, la SPARC e la PowerPC.