Rejestr flag procesora
Z Wikipedii
Rejestr flag procesora, rejestr statusu - wewnętrzny rejestr w procesorach, składająca się z bitów nazywanych flagami lub znacznikami, opisujących i kontrolujących stan procesora. Ustawienie wartości danej flagi zależy np. od trybu pracy procesora, wyniku ostatnio wykonanej operacji arytmetycznej, porównania, niekiedy może być także ustawiana z poziomu programu. Budowa rejestru statusu zależy od modelu programowego, według którego dany procesor jest zbudowany.
[edytuj] Przykładowe flagi rejestru statusu
- Z - wynik ostatniej operacji był zerem jeśli bit = 1
- S - wynik ostatniej operacji był dodatni lub ujemny
- C - nastąpiło przeniesienie
- V - nastąpiło przepełnienie rejestru
[edytuj] Budowa rejestru flag w procesorach x86
W procesorach IA-32, zgodnych z architekturą x86 zaprojektowaną przez Intela w latach 70. XX wieku, na której opiera się zdecydowana większość współczesnych komputerów osobistych, rejestr flag procesora ma rozmiar 32 bajtów i nosi nazwę EFLAGS. W procesorach x86 sprzed IA-32 (do procesora 80286 włącznie) miał rozmiar 16 bajtów i nosił nazwę FLAGS; młodsza część rejestru EFLAGS jest tożsama z 16-bitowym rejestrem FLAGS.
W nowych procesorach 64-bitowych zgodnych z x86 (x86-64, EM64T) rejestr EFLAGS rozszerzono do 64 bitów i określono symbolem RFLAGS. Młodsze 32 bity tego rejestru są tożsame z rejestem EFLAGS, starsze 32 są zarezerwowane do wykorzystania w przyszłych wersjach procesorów (do tej pory nie przypisano im funkcji).