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

Przejdź do nawigacji Przejdź do wyszukiwania
brak opisu edycji
Nie podano opisu zmian
 
(Nie pokazano 6 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
== Rejestry programowe ==
Poniższa lista prezentuje wszystkie rejestry jednostki centralnej. Niektóre z nich dostępne są programowo bezpośrednio (rejestry R0-R7 oraz częściowo RZ), inne pośrednio (jak np. rejestr IC, którego zawartość można ustawić instrukcją skoku). Część z nich jest programowo niedostępna, ale można ich zawartość odczytać lub zapisać z [[Pulpit techniczny|pulpitu technicznego]].
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:
* '''R0''' - 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:
{| class="wikitable"
{| class="wikitable"
! Bit !! Symbol !! Żródłosłów !! Znaczenie
! Bit !! Symbol !! Żródłosłów !! Znaczenie
Linia 27: Linia 26:
|-
|-
|}
|}
* '''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
* '''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
* '''IC''' - 16-bitowy licznik rozkazów, zawierający adres miejsca pamięci operacyjnej, z którego pobrany zostanie rozkaz. Dostępny pośrednio z użyciem instrukcji skoków.
* '''SR''' - Rejestr stanu. Poszczególne jego pozycje oznaczają:
* '''SR''' - Rejestr stanu. Poszczególne jego pozycje oznaczają:
{| class="wikitable"
{| class="wikitable"
Linia 37: Linia 36:
| 10 || Q || wskaźnik systemu: Q=0 oznacza pracę systemu operacyjnego, Q=1 pracę programu użytkowego
| 10 || Q || wskaźnik systemu: Q=0 oznacza pracę systemu operacyjnego, Q=1 pracę programu użytkowego
|-
|-
| 11 || BS || wskaźnik specjalny
| 11 || BS || wskaźnik specjalny: BS=1 pozwala na dostęp do bloku pamięci drugiego procesora
|-
|-
| 12÷15 || NB || rejestr numeru bloku pamięci operacyjnej
| 12÷15 || NB || rejestr numeru bloku pamięci operacyjnej
|-
|-
|}
|}
* '''RZ''' -  32-bitowy rejestr zgłoszeń przerwań (patrz [[Przerwania]])
* '''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 [[Pulpit techniczny|pulpitu technicznego jednostki centralnej]].
* '''AR''' - rejestr adresowy pamięci.
* '''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.
* '''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.
Linia 52: Linia 48:
* '''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ń.

Menu nawigacyjne