# Conjunt d'instruccions

Un conjunt d'instruccions, repertori d'instruccions, joc d'instruccions o ISA (de l'anglès Instruction Set Architecture, «Arquitectura del Conjunt d'Instruccions») és una especificació que detalla les instruccions que el processador d'un ordinador pot entendre i executar, o el conjunt de totes les ordres implementades per un disseny particular d'una CPU. El terme descriu els aspectes del processador generalment visibles a un programador, incloent-hi els tipus de dades natives, les instruccions, els registres, l'arquitectura de memòria i les interrupcions, entre d'altres aspectes.
N'hi ha de tres tipus: CISC (Complex Instruction Set Computer), RISC (Reduced Instruction Set Computer) i SISC (Simple Instruction Set Computing).
De vegades, l'arquitectura del conjunt d'instruccions s'utilitza per distingir aquest conjunt de característiques de la microarquitectura, que són els elements i tècniques que s'empren per implementar el conjunt d'instruccions. Entre aquests elements s'hi troben les microinstruccions i els sistemes de memòria cau.
Processadors amb diferents dissenys interns poden compartir un conjunt d'instruccions; per exemple l'Intel Pentium i l'AMD Athlon implementen versions gairebé idèntiques del conjunt d'instruccions x86, encara que tenen dissenys interns completament diferents.

## Llista d'ISAs

Aquesta llista no és exhaustiva, ja que contínuament s'abandonen arquitectures velles i se n'inventen de noves. Hi ha molts microprocessadors comercialment disponibles i microcontroladors que implementen ISAs. ISAs personalitzades són també bastant comuns en algunes aplicacions, p. ex. ASIC, FPGA, i computació reconfigurable.
* Llista de conjunts d'instruccions

### ISAs implementats en maquinari

* Alpha
* ARM
* Sèrie Burroughs B5000/B6000/B7000
* IA-64 (Itanium)
* MIPS
* Motorola 68k
* PA-RISC
* IBM 700/7000
** System/360
** System/370
** System/390
** z/Arquitectura
* Arquitectura Power
** POWER
** PowerPC
* PDP-11
** VAX
* SPARC
* SuperH
* Tricore
* Transputer
* UNIVAC 1100/2200
* x86
** IA-32 (i386, Pentium, Athlon)
** x86-64 (superconjunt de 64 bits d'IA-32)
* EISC (AE32K)

### ISAs generalment implementats en programari amb encarnacions en maquinari

* p-Code (UCSD p-System Versió III en Pascal MicroEngine de Western Digital)
* Màquina Virtual Java (ARM Jazelle, picoJava, JOP)
* FORTH

### ISAs només implementat en programari

* ISAC - Instruction Set Architecture C.

### ISAs mai implementats en maquinari

* ALGOL
* Màquina SECD, una màquina virtual utilitzada per alguns llenguatges de programació funcionals.
* MMIX, una màquina d'ensenyament utilitzada en The Art of Computer Programming de Donald Knuth
* Màquina-Z, una màquina virtual originada en Infocom i utilitzat per jocs d'aventura de text, i el seu successor Glulx.

## Referències

* ↑ «Instruction Set Architecture (ISA)» (en anglès). Arxivat de l'original el 2019-06-09. [Consulta: 15 juliol 2009].
* ↑ «Arquitectura de un computador» (PDF) (en castellà). Arxivat de l'original el 2012-07-07. [Consulta: 15 juliol 2009].
* ↑ «x86-64™ Technology White Paper» (PDF) (en anglès). Advanced Micro Devices, Inc.. [Consulta: 15 juliol 2009].
* ↑ Vegeu ISAC Arxivat 2016-03-03 a Wayback Machine. i Lissom, o The LLVM Compiler Infrastructure i back-end.

## Enllaços externs

* Instruction Set Architecture (ISA) Arxivat 2015-04-23 a Wayback Machine.(anglès) PDF