it-swarm.com.de

Trageflagge, Hilfsflagge und Überlaufflagge in der Montage

Ich kann anscheinend den Unterschied zwischen der Tragflagge, der Hilfsflagge und der Überlaufflagge in der Baugruppe nicht erkennen. Ich lerne es gerade in der Schule und der Lehrer ging nicht auf Details ein. Bitte helfen Sie mir zu verstehen, ich werde es für die Prüfung benötigen. Ich werde sehr dankbar sein !! Aus dem, was ich mittlerweile zu wissen scheine, ist, dass das Carry Flag verwendet wird, wenn Sie versuchen, sagen wir, 255 + 9, wenn Sie nur 8 Bits für Daten haben. Das Auxiliary Flag ist dasselbe, aber nur für die 4 letzten Bits? Und der Überlauf wird verwendet, wenn Sie 7 Bits für die Binärzahl haben und die 8 (ganz links) für das Vorzeichen verwendet wird ???

16
user2322960

Carry Flag ist ein Flag, das gesetzt wird, wenn:

a) Zwei vorzeichenlose Zahlen wurden hinzugefügt und das Ergebnis ist größer als die "Kapazität" des Registers, in dem es gespeichert ist. Bsp .: Wir wollen zwei 8-Bit-Zahlen addieren und das Ergebnis im 8-Bit-Register speichern. In Ihrem Beispiel: 255 + 9 = 264, dh mehr als 8-Bit-Register können gespeichert werden. Der Wert "8" wird dort gespeichert (264 & 255 = 8) und das CF-Flag wird gesetzt.

b) Zwei vorzeichenlose Zahlen wurden subtrahiert und die größere von der kleineren abgezogen. Beispiel: 1-2 gibt 255 im Ergebnis und das CF-Flag wird gesetzt.

Auxiliary Flag wird als CF verwendet, wenn jedoch mit BCD gearbeitet wird. AF wird also eingestellt, wenn in BCD-Berechnungen ein Über- oder Unterlauf vorliegt. Zum Beispiel: Betrachtet man die 8-Bit-ALU-Einheit, wird das Hilfsflag gesetzt, wenn ein Übertrag vom 3. Bit zum 4. Bit vorliegt, d. H. Ein Übertrag vom unteren Halbbyte zum höheren Halbbyte. ( Wiki-Link )

Overflow Flag wird als CF verwendet, wenn wir jedoch mit vorzeichenbehafteten Zahlen arbeiten. Zum Beispiel wollen wir zwei vorzeichenbehaftete 8-Bit-Zahlen hinzufügen: 127 + 2. Das Ergebnis ist 129, aber es ist zu viel für vorzeichenbehaftete 8-Bit-Zahlen, daher wird OF gesetzt. Ähnlich, wenn das Ergebnis zu klein ist wie -128 - 1 = -129, was für vorzeichenbehaftete 8-Bit-Zahlen nicht möglich ist.

Sie können mehr über Flaggen auf Wikipedia lesen

24

Fahne tragen

Die Regeln zum Aktivieren des Übertrags-Flags in der Binär-/Ganzzahl-Mathematik sind zwei:

  1. Das Übertragsflag wird gesetzt, wenn das Hinzufügen von zwei Zahlen ein Übertragen der höchstwertigen (am weitesten links liegenden) hinzugefügten Bits bewirkt. 1111 + 0001 = 0000 (Übertragsflag ist eingeschaltet)

  2. Das Übertrags Entleih-) Flag wird auch gesetzt, wenn die Subtraktion von zwei Zahlen ein Entleihen in die höchstwertigen (am weitesten links liegenden) subtrahierten Bits erfordert. 0000 - 0001 = 1111 (Übertragsflag ist eingeschaltet) Andernfalls ist das Übertragsflag ausgeschaltet (Null).

Achten Sie bei vorzeichenloser Arithmetik auf das Übertragsflag, um Fehler zu erkennen.

In der vorzeichenbehafteten Arithmetik sagt das Übertragsflag nichts Interessantes aus.

Überlauf-Flag

Die Regeln zum Aktivieren des Überlauf-Flags in der Binär-/Ganzzahl-Mathematik sind zwei:

  1. Wenn die Summe von zwei Zahlen mit ausgeschalteten Vorzeichenbits eine Ergebniszahl mit eingeschaltetem Vorzeichenbit ergibt, wird das "Überlauf" -Flag eingeschaltet. 0100 + 0100 = 1000 (Überlaufflag ist eingeschaltet)

  2. Wenn die Summe von zwei Zahlen mit eingeschalteten Vorzeichenbits eine Ergebniszahl mit ausgeschaltetem Vorzeichenbit ergibt, wird das "Überlauf" -Flag eingeschaltet. 1000 + 1000 = 0000 (Überlaufflag ist eingeschaltet)

Andernfalls wird das "Überlauf" -Flag ausgeschaltet

Beachten Sie, dass Sie sich nur die Vorzeichenbits (ganz links) der drei Zahlen ansehen müssen, um zu entscheiden, ob das Überlauf-Flag aktiviert oder deaktiviert ist.

Wenn Sie eine Zweierkomplementarithmetik (mit Vorzeichen) ausführen, bedeutet Überlauf, dass die Antwort falsch ist - Sie haben zwei positive Zahlen hinzugefügt und ein Negativ erhalten, oder Sie haben zwei negative Zahlen hinzugefügt und ein Positiv erhalten.

Wenn Sie vorzeichenloses Rechnen ausführen, bedeutet das Überlauf-Flag nichts und sollte ignoriert werden.

Weitere Informationen finden Sie unter: --- (http://teaching.idallen.com/dat2343/10f/notes/040_overflow.txt

33
dark_knight