Wykonanie rozkazu: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
(Created page with "=== Wykonanie rozkazu === Na wykonanie rozkazu składają się następujące fazy: # Pobranie rozkazu z miejsca pamięci operacyjnej wskazanej zawartością IC. Jeśli Q=0 ro...")
(Brak różnic)

Wersja z 16:17, 10 sie 2012

Wykonanie rozkazu

Na wykonanie rozkazu składają się następujące fazy:

  1. Pobranie rozkazu z miejsca pamięci operacyjnej wskazanej zawartością IC. Jeśli Q=0 rozkaz jest pobierany z bloku pamięci systemowej, jeśli Q=1 - z bloku pamięci wskazanego zawartością rejestru NB
  2. Określenie efektywności rozkazu.
  3. Wyznaczenie argumentu efektywnego
  4. Wykonanie czynności określonej kodem rozkazu
  5. Jeśli rozkaz nie był rozkazem skoku i nie wystąpiły przypadki szczególne, IC zwiększany jest o długość wykonanego rozkazu

Po zakończeniu każdego cyklu rozkazowego, w zależności od warunków zaistniałych w minikomputerze, następuje przejście do jednej z następujących czynności:

  • zatrzymanie minikomputera w stanie STOP w wyniku wyłączenia klucza START
  • wykonanie przerwania
  • przejście w stan CZEKAJ w wyniku rozkazu HLT
  • wykonanie następnego cyklu rozkazowego

Efektywność rozkazu

Rozkaz jest nieefektywny (nie zostaje wykonany) w następujących przypadkach:

  • błędny kod operacji
  • po raz czwarty użyty został rozkaz MD
  • rozkaz nielegalny został użyty w programie użytkowym

W przypadku napotkania rozkazu nieefektywnego wykonywane są następujące czynności:

  • wyzerowanie modyfikatora MOD
  • wpisanie 1 do pozycji 6 rejestru zgłoszeń przerwań RZ
  • natychmiastowe zakończenie rozkazu

Wyznaczenie argumentu efektywnego