Architetture dei processori/Set di istruzioni: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Hellisp (discussione | contributi)
Riga 6:
== CISC ==
[[Image:XC68000.agr.jpg|thumb|right|Motorola 68000 uno dei meglio riusciti processori CISC]]
Un architettura [[w:CISC|CISC]] (Complex Instruction Set Computer) è dotata di un set di istruzioni che consentono di eseguire operazioni anche complesse. I primi microprocessori erano di questa tipologia e fino agli anni 80 questo è stato il paradigma imperante. I microprocessori con questa architettura erano pensati per essere programmati in assembler e quindi il progettista metteva a disposizione del programmatore istruzioni anche molto complesse che sfruttavano le peculiarità della macchina in modo da generare programmi veloci e che occupassero poca memoria. Queste istruzioni potevano nascondere alcune caratteristiche del processsore per rendere la programmazione assembler più semplice. Per esempio potevano contenere istruzioni che formalmente modificavano i dati in memoria senza passare dai registri. In realtà queste istruzioni caricavano il dato in un registro nascosto, modificavano il dato e poi lo risalvavano in memoria. In sostanza creavano un illusoreo teatro per il programmatore. I processori CISC spesso sono dotati di un set di istruzioni definito con codici di lunghezza variabile e sono dotatodotati di un numero ridotto di registri dato. I codici di lunghezza variabile permettono di sfruttare al pieno la memoria disponibile mentre i pochi registri interni derivano dai pochi transistor integrabili negli anni 80 e dal fatto che avendo istruzioni interne molto complesse spesso non sono necessari molti registri per eseguire i programmi.
 
==RISC ==