L'exécution d'une instruction requerra les quatre étapes suivantes: 1. Extraire le contenu de la cellule de mémoire dont l'adresse se trouve dans le compteur ordinal. 2. Décoder l'instruction obtenue en 1, c'est-à-dire en extraire le code d'opération et les caractéristiques des opérandes. 3. Augmenter le contenu du compteur ordinal de 1 ou de 3. 4. Exécuter les opérations indiquées par l'instruction. 0000 C00000 LDA 0,i 0003 B00003 boucle: CPA 3,i 0006 0A0012 BREQ termine 0009 500058 CHARO 'X',i 000C 700001 ADDA 1,i 000F 040003 BR boucle 0012 00 termine: STOP 0013 .END L'UCT ne s'arrête jamais. Etape 1: Compteur ordinal: 0000 1. C00000 2. LDA occupe 3 octets 3. compteur ordinal: 0000 + 3 -> 0003 4. 0000 -> registre A Etape 2: Compteur ordinal: 0003 1. B00005 2. CPA occupe 3 octets 3. compteur ordinal: 0003 + 3 -> 0006 4. registre A - 3 -> témoin Zéro 0 (faux) Etape 3: Compteur ordinal: 0006 1. 0A0012 2. BREQ occupe 3 octets 3. compteur ordinal: 0006 + 3 -> 0009 4. témoin Zéro = 0 (faux) pas de branchement Etape 4: Compteur ordinal: 0009 1. 500058 2. CHARO occupe 3 octets 3. compteur ordinal: 0009 + 3 -> 000C 4. affiche le carctère X au terminal Etape 5: Compteur ordinal: 000C 1. 700001 2. ADDA occupe 3 octets 3. compteur ordinal: 000C + 3 -> 000F 4. registre A + 1 -> registre A Etape 6: Compteur ordinal: 000F 1. 040003 2. BR occupe 3 octets 3. compteur ordinal: 000F + 3 -> 0012 4. 0003 -> compteur ordinal Etape 7: Compteur ordinal: 0003 1. B00005 2. CPA occupe 3 octets 3. compteur ordinal: 0003 + 3 -> 0006 4. registre A - 3 -> témoin Zéro 0 (faux) Etape 8: Compteur ordinal: 0006 1. 0A0012 2. BREQ occupe 3 octets 3. compteur ordinal: 0006 + 3 -> 0009 4. témoin Zéro = 0 (faux) pas de branchement Etape 9: Compteur ordinal: 0009 1. 500058 2. CHARO occupe 3 octets 3. compteur ordinal: 0009 + 3 -> 000C 4. affiche le carctère X au terminal Etape 10: Compteur ordinal: 000C 1. 700001 2. ADDA occupe 3 octets 3. compteur ordinal: 000C + 3 -> 000F 4. registre A + 1 -> registre A Etape 11: Compteur ordinal: 000F 1. 040003 2. BR occupe 3 octets 3. compteur ordinal: 000F + 3 -> 0012 4. 0003 -> compteur ordinal Etape 12: Compteur ordinal: 0003 1. B00005 2. CPA occupe 3 octets 3. compteur ordinal: 0003 + 3 -> 0006 4. registre A - 3 -> témoin Zéro 0 (faux) Etape 13: Compteur ordinal: 0006 1. 0A0012 2. BREQ occupe 3 octets 3. compteur ordinal: 0006 + 3 -> 0009 4. témoin Zéro = 0 (faux) pas de branchement Etape 4: Compteur ordinal: 0009 1. 500058 2. CHARO occupe 3 octets 3. compteur ordinal: 0009 + 3 -> 000C 4. affiche le carctère X au terminal Etape 15: Compteur ordinal: 000C 1. 700001 2. ADDA occupe 3 octets 3. compteur ordinal: 000C + 3 -> 000F 4. registre A + 1 -> registre A Etape 16: Compteur ordinal: 000F 1. 040003 2. BR occupe 3 octets 3. compteur ordinal: 000F + 3 -> 0012 4. 0003 -> compteur ordinal Etape 17: Compteur ordinal: 0003 1. B00005 2. CPA occupe 3 octets 3. compteur ordinal: 0003 + 3 -> 0006 4. registre A - 3 -> témoin Zéro 1 (vrai) Etape 18: Compteur ordinal: 0006 1. 0A0012 2. BREQ occupe 3 octets 3. compteur ordinal: 0006 + 3 -> 0009 4. témoin Zéro = 1 (vrai) branchement -> 0012 -> compteur ordinal Etape 19: Compteur ordinal: 0012 1. 00 2. STOP occupe 1 octet 3. compteur ordinal: 0012 + 1 -> 0013 4. arrêt du programme