Παράδειγμα κύκλου εντολών
Το πρόγραμμα
Διεύθυνση Κωδικός εντολής Συμβολική παράσταση εντολής
0100 B80100 MOV AX,0001
0103 050400 ADD AX,0004
0106 A31000 MOV [0010],AX
0109 3D0500 CMP AX,0000
010C 74F2 JZ 0100
Ο κύκλος των εντολών (επανάληψη)
- Ανάκληση εντολής (Instruction fetch)
- ΚΔιΜ <- ΜΠ
- ΚΕ <- Μνήμη[ΚΔιΜ]
- Αποκωδικοποίηση εντολής (Instruction decode)
- Α <- ΓΚ1
- Β <- ΓΚ2
- ΜΕ <- ΜΕ + 1
- Εκτέλεση εντολής (Instruction execution)
- ΚΔιΜ <- Α + ΚΕ, ΚΔεΜ <- ΓΚι (για εντολές πρόσβασης στη μνήμη)
- Γ <- Α * Β (για αριθμητικές εντολές)
- Γ <- ΜΠ + ΚΕ (έλεγχος τιμής από ΜΑΛ) (για εντολές διακλάδωσης)
- Πρόσβαση μνήμης (Memory access)
- ΚΔεΜ <- Μ[ΚΔιΜ] ή Μ[ΚΔιΜ] <- ΚΔεΜ
- ΜΠ <- Γ (για εντολές διακλάδωσης)
- Εγγραφή
Ο τρόπος που θα εκτελεστούν οι παραπάνω εντολές από την ΚΜΕ
σύμφωνα με το κύκλο των εντολών είναι ο εξής:
0100 B80100 MOV AX,0001
| ΜΠ | ΚΔιΜ | ΚΔεΜ | ΚΕ | ΑΧ | Α | B | Γ |
Ανάκληση | 100 | 100 | - | B80100 | - | - | - | - |
Αποκωδικοποίηση | 103 | 100 | - | B80100 | - | 0001 | - | - |
Εκτέλεση | 103 | 100 | - | B80100 | - | 0001 | - | 0001 |
Εγγραφή | 103 | 100 | - | B80100 | 0001 | 0001 | - | 0001 |
0103 050400 ADD AX,0004
| ΜΠ | ΚΔιΜ | ΚΔεΜ | ΚΕ | ΑΧ | Α | B | Γ |
Ανάκληση | 103 | 103 | - | 050400 | 0001 | - | - | - |
Αποκωδικοποίηση | 106 | 103 | - | 050400 | 0001 | 0001 | 0004 | - |
Εκτέλεση | 106 | 103 | - | 050400 | 0001 | 0001 | 0004 | 0005 |
Εγγραφή | 106 | 103 | - | 050400 | 0005 | 0001 | 0004 | 0005 |
0106 A31000 MOV [0010],AX
| ΜΠ | ΚΔιΜ | ΚΔεΜ | ΚΕ | ΑΧ | Α | B | Γ |
Ανάκληση | 106 | 106 | - | A31000 | 0005 | - | - | - |
Αποκωδικοποίηση | 109 | 106 | - | A31000 | 0005 | 0000 | 0010 | - |
Εκτέλεση | 109 | 0010 | 0005 | A31000 | 0005 | 0000 | 0010 | 0010 |
Πρόσβαση μνήμης | 109 | 0010 | 0005 | A31000 | 0005 | 0000 | 0010 | 0010 |
0109 3D0500 CMP AX,0005
| ΜΠ | ΚΔιΜ | ΚΔεΜ | ΚΕ | ΑΧ | Α | B | Γ |
Ανάκληση | 109 | 109 | - | 3D0500 | 0005 | - | - | - |
Αποκωδικοποίηση | 10C | 109 | - | 3D0500 | 0005 | 0005 | 0005 | - |
Εκτέλεση | 10C | 109 | - | 3D0500 | 0005 | 0005 | 0005 | 0000 |
010C 74F2 JZ 0100
| ΜΠ | ΚΔιΜ | ΚΔεΜ | ΚΕ | ΑΧ | Α | B | Γ |
Ανάκληση | 10C | 10C | - | 74F2 | 0005 | - | - | - |
Αποκωδικοποίηση | 10E | 10C | - | 74F2 | 0005 | 010E | FFF2 | - |
Εκτέλεση | 10E | 10C | 0005 | 74F2 | 0005 | 010E | FFF2 | 0100 |
Πρόσβαση μνήμης | 100 | 10C | 0005 | 74F2 | 0005 | 010E | FFF2 | 0010 |