Il MIC-4 è un'architettura di processore inventata da Andrew S. Tanenbaum da utilizzare come esempio semplice ma completo per il suo libro Architettura dei calcolatori.
Il linguaggio microcodice MAL (Micro-Assembly Language) è realizzato per consentire la scrittura di un interprete IJVM (Integer Java Virtual Machine) con semplicità.
Analogamente all'architettura MIC-3, il MIC-4 è dotato di una IFU che ha il compito di preleggere le parole dalla memoria e gestire i vari MBR. È presente un nuovo componente rispetto al MIC-3: l'unità di decodifica (detta anche decoding unit), dotata di una propria ROM indicizzata per mezzo di codice IJVM contenente la lunghezza dell'istruzione IJVM e un indirizzo relativo ad una seconda ROM (quella delle micro-operazioni). L'IFU fornisce il flusso di byte all'unità di decodifica che, a sua volta, invia all'unità di accodamento (queuing unit) l'indice nella ROM delle microoperazioni che ha trovato nella sua tabella. L'unità di accodamento contiene anche una RAM contenente una coda con le micro-operazioni in attesa di esecuzione.
Rispetto alle micro-istruzioni di MIC-2 e MIC-3 le micro-operazioni non hanno più i campi NEXT_ADDRESS e JAM ma presentano due nuovi bit: Final e Goto.
Il bit Final è posto a 1 la micro-operazione in esecuzione chiudela sequenza relativa ad una istruzione IJVM; il bit Goto è posto a 1 quando nella microistruzione in esecuzione è presente una diramazione condizionale sui bit N o Z.

I campi delle microistruzioni non sono tutti attivi contemporaneamente infatti:
Per gestire solo i campi attivi in un particolare ciclo di clock vengono utilizzati 4 registri MIR indipendenti.