Une architecture externe de processeur ou architecture de jeu d'instructions (ISA, de l'anglais instruction set architecture), ou tout simplement architecture (de processeur), est la spécification fonctionnelle d'un processeur, du point de vue du programmeur en langage machine. L'architecture comprend notamment la donnée d'un jeu d'instructions, d'un ensemble de registres visibles par le programmeur, d'une organisation de la mémoire et des entrées sorties, des modalités d'un éventuel support multiprocesseur, etc.
Le terme externe employé ici permet de bien faire la différence avec la microarchitecture ou architecture interne, qui s'intéresse à l'implémentation pratique du comportement spécifié par une architecture externe. Une architecture externe donnée peut être implémentée sous forme de plusieurs microarchitectures.
thumb|Die du processeur VIA Nano.
Une architecture externe de processeur est le modèle du processeur vu de l'extérieur, c'est-à-dire par le programmeur en langage machine, le compilateur ou le noyau du système d'exploitation. Il s'agit de l'interface entre le matériel et le logiciel.
Cette interface peut être implémentée dans divers processeurs. L'organisation pratique de ces derniers est appelée microarchitecture ou architecture interne. Par opposition à l'architecture qui correspond au modèle de la machine vu par le programmeur, les spécificités d'une microarchitecture sont invisibles pour ce dernier. Par exemple, la microarchitecture peut spécifier l'existence de mémoires cache, de renommage de registres, de pipelines, de prédiction de branchement, etc. Une microarchitecture peut ensuite donner lieu à une ou plusieurs réalisations matérielles.
Pour résumer, Andrew Tanenbaum distingue trois niveaux matériels dans un ordinateur :
niveau 2 — architecture externe ou de jeu d'instructions (ISA) ;
niveau 1 — microarchitecture ;
niveau 0 — réalisation en logique numérique.
Exemple (fictif) :
niveau architecture externe : il existe huit registres d'usage général.