Skip to main content

Co to jest rejestr statusu?

Rejestr statusu mdash;Znany również jako rejestr flag, słowo statusu programu i kod warunków rejestr i mdash;jest zdefiniowany jako kolektyw flagi bitów wewnątrz procesora.Rejestr jest obwodem procesora i jest podobny do lokalizacji pamięci, co oznacza, że dane mogą być zapisane i odczytane z niego.W przeciwieństwie do lokalizacji pamięci rejestr statusu często nie ma adresu, ponieważ mikroprocesor używa go wewnętrznie.W centralnej jednostce przetwarzania (CPU), która jest 8-bitowa, bit rejestru statusu może być ustawiony , równy liczbie 1 lub wyczyszczonej , równej liczbie 0, przez wyniki działalności procesora.Procesor czasami ustawia lub usuwa same bity, ale innym razem określone instrukcje programu ustawiają lub usuwa bity.

Bity rejestru stanu są również nazywane flagami lub bitami flagowymi i są używane przez programista do niektórych celów programowania.Każda flaga w rejestrze statusu ma unikalny cel.Flaga noszenia ustawia, jeśli poprzednia operacja wykonała siódmy bit mdash;lub flaga negatywna i mdash;przelanie lub wykonał flagę podnoszącą flagę.Ustawia się podczas przesunięć logiki, porównania i arytmetyki.Zero zestawu flagi, jeśli najnowszy wynik operacji wynosił 0.

Flaga o nazwie „Wyłączanie przerwania” działa poprzez umożliwienie lub odrzucanie działania przerwań, które są instrukcjami, które tymczasowo zatrzymują niektóre operacje, aby można było wykonać inne operacje.Gdy ta konkretna flaga ustawia, przerwania nie mogą działać, ale gdy jest to jasne, dozwolone są przerwy.Kolejna flaga o nazwie Flaga dziesiętna pozwala procesorowi podążać za bardziej zaawansowanym trybem binarnym w celu wykonania bezbłędnych równań arytmetycznych.Po ustaleniu flagi używa tego zaawansowanego trybu binarnego.Kolejnym bitem rejestru jest bit flagi Break, który ustawia, gdy polecenie przerwania siły (BRK) jest wykonywane.

Flaga przepełnienia ustawia się podczas operacji arytmetyki, jeśli operacja daje nieprawidłowy wynik.Flaga ujemna ustawia, jeśli najnowszy wynik operacji ustawiono go na 1. Ostatnia flaga, zwana bit 5, jest bezimienna i zawsze ustawiona na 1. Programiści zasadniczo nie mają zastosowania dla tego konkretnego bitu.

Rejestr flag jest jednym z przykładówrejestru statusu, który był używany w niektórych środkowych jednostkach procesora i zawierał bieżące stany procesora.Miał 16 bitów szerokości i zastąpił go EFLAGS i RFLAGS, odpowiednio 32-bitowy rejestr i 64-bitowy rejestr.Rejestr flag miał jednak kilka flag, które były różne od oryginalnego 8-bitowego rejestru, w tym flaga parytetu, flaga pomocnicza i flaga pułapki.