Opcode

In informatica un opcode (operation code, codice operativo) è una porzione d'istruzione in linguaggio macchina che specifica l'operazione che deve essere eseguita. La lunghezza e il formato del codice sono disposti nel set di istruzioni del processore in questione (che può essere una CPU generica o un'unità d'elaborazione più specializzata). Oltre allo stesso codice operativo un'istruzione normalmente ha anche uno o più identificatori per gli operandi (ad esempio i dati) sui quali l'operazione deve agire; va notato che alcune operazioni possono avere operandi impliciti, o nessun operando.

Ci sono set di istruzioni con campi quasi uniformi per l'opcode e gli specificatori degli operandi, così come altri (l'architettura x86 per esempio) con una più complicata struttura a lunghezza variabile. Un esempio potrebbe essere il numero 0001, codice operativo che indica al calcolatore di effettuare una somma (ADD).[1]

A seconda dell'architettura gli operandi possono essere valori nei registri, valori nello stack, altri valori in memoria, porte I/O, ecc., specificata e accessibile usando un più o meno complesso modello di indirizzamento. I tipi di operazioni includono operazioni aritmetiche, operazioni di copia dei dati, operazioni logiche e controllo del programma, come istruzioni speciali (come CPUID e altri).