W tym przypadku przerwania są sprawdzane i obsługiwane przed każdą kolejną instrukcją, jednak takie zachowanie jest rzadkie w prawdziwych emulatorach z powodu małej wydajności. void Wykonaj(void) { if(Przerwanie!=PRZERW_BRAK)
Superużytkownik=TRUE; ZapiszPamięć(++WskaźnikStosu, LicznikRozkazów); LicznikRozkazów=WskaźnikPrzerwania;
switch(OdczytajPamięć(LicznikRozkazów++))
/* * Tutaj znajduje się obsługa wszystkich * pojedynczych instrukcji procesora. */ default: Przerwanie=PRZERW_BŁĄD;
Interpretacja to bardzo popularna metoda symulacji procesora, ponieważ jest o wiele prostsza w implementacji niż szybsze metody, a jej prędkość jest wystarczająca do emulacji komputerów około dziesięcioletnich na komputerach współczesnych.
Mimo to prędkość interpretacji jest niewystarczająca do emulacji procesorów, których prędkość jest tego samego rzędu wielkości co prędkość głównego komputera. Jeszcze do niedawna emulację w takich przypadkach uznawano za zupełnie niepraktyczną.
Większa prędkość emulacji jest możliwa dzięki dynamicznej rekompilacji.