Rejestry i wskaźniki: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
Linia 42: Linia 42:
 
|-
 
|-
 
|}
 
|}
* '''RZ''' -  32-bitowy rejestr zgłoszeń przerwań (patrz [[Przerwania]])
+
* '''RZ''' -  32-bitowy rejestr zgłoszeń przerwań (patrz [[Przerwania]]).
  
 
== Rejestry sprzętowe ==
 
== Rejestry sprzętowe ==
Linia 52: Linia 52:
 
* '''RP''' - rejestr przyjęć przerwań
 
* '''RP''' - rejestr przyjęć przerwań
 
* '''RB''' - 16-bitowy rejestr używany przy automatycznym, wstępnym ładowaniu programu (operacja klucza BIN).
 
* '''RB''' - 16-bitowy rejestr używany przy automatycznym, wstępnym ładowaniu programu (operacja klucza BIN).
* '''P''' - wskaźnik przeskoku
+
* '''P''' - wskaźnik przeskoku, ustawiany przez instrukcje rozgałęzień.

Wersja z 11:46, 9 wrz 2012

Rejestry programowe

Rejestry programowe dostępne są dla programisty bezpoźrednio bądź pośrednio w trybie zapisu/odczytu bądź tylko odczytu.

  • RO - 16-bitowy rejestr stanu programu. Stanowi zbiór wskaźników decydujących o sposobie wykonywania programu. Rejestr ten może być używany w programach jako rejestr uniwersalny. Dla programów użytkowych zapis do pozycji 0÷7 nie jest wykonywany (z wyjątkiem rozkazu LPC). Znaczenie poszczególnych bitów jest następujące:
Bit Symbol Żródłosłów Znaczenie
0 Z Zero wskaźnik zera, ustawiany w przypadku otrzymania zera w wyniku działań arytmetycznych i logicznych
1 M Minus wskaźnik znaku minus, ustawiany w przypadku otrzymania liczby ujemnej w wyniku działań arytmetycznych
2 V oVerflow wskaźnik nadmiaru, ustawiany w przypadku przekroczenia zakresu liczb przy operacjach arytmetycznych i w niektórych innych przypadkach
3 C Carry wskaźnik przeniesienia, ustawiany zgodnie z przeniesieniem z zerowej pozycji arytmometru przy operacjach arytmetycznych
4 L Less wskaźnik mniejszości, ustawiany w wyniku operacji porównań arytmetycznych i logicznych
5 E Equal wskaźnik równości, ustawiany w wyniku operacji porównań arytmetycznych i logicznych
6 G Greater wskaźnik większości, ustawiany w wyniku operacji porównań arytmetycznych i logicznych
7 Y -- wskaźnik przechowujący bit wychodzący poza rejestr przy operacjach przesuwania
8 X -- wskaźnik ustawiany programowo
9÷15 -- -- wskaźniki przeznaczone do użytku programisty
  • R1-R7 - 16-bitowe rejestry uniwersalne służące do przechowywania informacji, wykonywania operacji, oraz jako rejestry indeksowe służące B-modyfikacji argumentów
  • IC - 16-bitowy licznik rozkazów, zawierający adres miejsca pamięci operacyjnej, z którego pobrany zostanie rozkaz
  • SR - Rejestr stanu. Poszczególne jego pozycje oznaczają:
Bit Symbol Znaczenie
0÷9 RM rejestr masek przerwań
10 Q wskaźnik systemu: Q=0 oznacza pracę systemu operacyjnego, Q=1 pracę programu użytkowego
11 BS wskaźnik specjalny
12÷15 NB rejestr numeru bloku pamięci operacyjnej
  • RZ - 32-bitowy rejestr zgłoszeń przerwań (patrz Przerwania).

Rejestry sprzętowe

Rejestry sprzętowe nie są bezpośrenio dostępne programowo. Używa ich jednostka centralna w trakcie wykonywania instrukcji. Operator ma możliwość zapisu i odczytu niektórych z nich z pulpitu technicznego jednostki centralnej.

  • AR - rejestr adresowy pamięci.
  • IR - rejestr rozkazów. W cyklu rozkazowym rejestr IR przechowuje słowo podstawowe aktualnie wykonywanego rozkazu. Rejestr IR związany jest z układem dekodowania rozkazów, który wysterowuje drogi przepływu informacji w czasie cyklu rozkazowego.
  • AC - rejestr akumulatora. Jest to 17-bitowy rejestr, w którym znajduje się drugi argument operacji arytmetycznych i logicznych. Nie jest dostępny programowo.
  • AT - 17-bitowy rejestr wynikowy sumatora. Posiada on możliwość przesuwania zawartości w prawo. Nie jest dostępny programowo.
  • RP - rejestr przyjęć przerwań
  • RB - 16-bitowy rejestr używany przy automatycznym, wstępnym ładowaniu programu (operacja klucza BIN).
  • P - wskaźnik przeskoku, ustawiany przez instrukcje rozgałęzień.