Heim > häufiges Problem > Hauptteil

Auf welcher Grundlage wird jedes Status-Flag-Bit im Statusregister gesetzt?

WBOY
Freigeben: 2022-08-23 11:19:15
Original
4424 Leute haben es durchsucht

Jedes Status-Flag-Bit im Statusregister wird basierend auf dem „letzten Operationsergebnis der ALU“ gesetzt. Das Statusregister, auch Bedingungscoderegister genannt, ist Teil der Kernkomponente des Computers, der Recheneinheit. und wird hauptsächlich zum Speichern der aktuellen Anweisung verwendet. Verschiedene Statusinformationen und Steuerinformationen der Ausführungsergebnisse.

Auf welcher Grundlage wird jedes Status-Flag-Bit im Statusregister gesetzt?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, DELL G3-Computer.

Die Status-Flag-Bits im Statusregister werden basierend auf den gesetzten Flag-Bits gesetzt.

Die Status-Flag-Bits im Statusregister werden basierend auf dem „letzten Operationsergebnis der ALU“ gesetzt.

Das Statusregister Außerdem ist das Zustandscoderegister die Kernkomponente des Computersystems – Teil der Recheneinheit. Das Statusregister wird zum Speichern von zwei Arten von Informationen verwendet:

Eine Art sind verschiedene Statusinformationen (Bedingungscodes), die die Ergebnisse widerspiegeln die aktuelle Befehlsausführung, falls vorhanden: Kein Übertrag (CF-Bit), Überlauf (OV-Bit), positives oder negatives Ergebnis (SF-Bit), ob das Ergebnis Null ist (ZF-Bit), Paritätsflag (P-Bit) usw.;

Der andere Typ besteht darin, Steuerinformationen (PSW: Program Status Word Register) zu speichern, z. B. das Aktivieren von Interrupts (IF-Bit), Tracking-Flags (TF-Bit) usw. In einigen Maschinen wird PSW als Flag-Register FR (Flag-Register) bezeichnet. Es gibt 6 Statusregister in ARM. Der ARM7TDMI-Kern enthält 1 CPSR und 5 SPSR für Ausnahmehandler. Das CPSR spiegelt den aktuellen Prozessorstatus wider, der Folgendes enthält:

4 Bedingungscode-Flags (negativ (N), Null (Z), Übertrag (C) und Überlauf (V)); Jeder steuert einen Interrupt-Typ.
  • 5 Bits kodieren den aktuellen Prozessormodus.
  • 1 Bit wird verwendet, um den aktuell ausgeführten Befehl anzuzeigen (ARM oder Thumb).
  • Erläuterung jedes Flag-Bits von PSW:
  • 1. Wird verwendet, um das Übertragsbit bei der Additionsoperation und das Ausleihbit bei der Subtraktionsoperation darzustellen ein Borrow-Bit in der Subtraktionsoperation. Die CY-Position ist 1, andernfalls ist sie 0
2: Im Grunde dasselbe wie CY, der Unterschied ist die Operation zwischen den niedrigen 4 Bits und den hohen 4 Bits.

3.F0 (Flag Zero-Benutzer-Flag-Bit): Dieses Bit ist ein Flag-Bit, das vom Benutzer entsprechend seinen eigenen Anforderungen festgelegt wird. Durch Setzen dieses Bits kann der Benutzer den Ablauf und die Verzweigung des Programms bestimmen.

4. RS1, RS0: 8051 verfügt über acht 8-Bit-Arbeitsregister R0~R7, und der tatsächliche physische Speicherort im RAM kann je nach Bedarf ausgewählt und bestimmt werden.

00: 00H~07H

01: 08H~0FH

10: 10H~17H

11: 18H~1FH

5.OV: Zeigt an, ob während des Vorgangs ein Überlauf aufgetreten ist, wenn das Ergebnis 8 Bit überschreitet binär Der Bereich, den die Zahl darstellen kann, ist die vorzeichenbehaftete Zahl -128~+127, dann ist die Flag-Position 1.

6.OP: Das Paritätsflag wird verwendet, um die Parität der Anzahl der Einsen im Operationsergebnis anzuzeigen. Wenn P=0, dann ist die Anzahl der Einsen im Akkumulator A gerade; wenn P=1, dann ist die Anzahl der Einsen Die Einsen im Akkumulator A sind gerade. Die Anzahl der Einsen ist eine ungerade Zahl.

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ

“!

Das obige ist der detaillierte Inhalt vonAuf welcher Grundlage wird jedes Status-Flag-Bit im Statusregister gesetzt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage