Wie setze ich alle Flags in 8085?

Mein Mikroprozessor-Lehrer von 8085 hat den Auftrag gegeben, alle Flags zu setzen! Ich habe dieses kleine Programm geschrieben, um alles außer Sign, Please help me out zu setzen

 MVI A,0FFH
 ANI 01H
 HLT

Antworten (3)

Die fünf Flags auf dem 8080/8085 sind Vorzeichen, Null, Übertrag, Halbübertrag und Parität. Es sieht so aus, als ob Ihr Programm alle löscht . Das Ergebnis von ANIist nicht Null, nicht negativ und hat eine ungerade Parität. Auch logische Operationen wie das ANIbedingungslose Löschen beider Carry-Flags.

Tatsächlich ist der direkteste Weg, sie alle einzustellen, ungefähr so:

LXI H, 0FFFFh
PUSH H
POP PSW

Was Ihr Lehrer als "Betrug" betrachten kann oder nicht. (Eigentlich fällt mir keine andere Möglichkeit ein, die Z- und S-Flags gleichzeitig zu setzen.)

Ich bin erstaunt, dass irgendjemand immer noch diese alte Architektur lehrt und nicht etwas, das tatsächlich noch in Produktion ist. Es ist völlig nutzloses Wissen.

Willkommen in meinem Computerarchitekturkurs, außer dass wir eine fiktive mikrokodierte CISC-Architektur mit einem Register ohne Stapelzeiger verwendet haben!
"Lassen Sie mich Ihnen erzählen, wie es 1983 gemacht wurde ..."
Ich betreue immer noch ein eingebettetes System, das auf einem Z80 für einen Kunden basiert. Trotz Wunschdenken ist die 8080-Architektur also nicht gerade tot. Die 8051-Architektur lebt und ist gesund und bildet den Kern mehrerer sehr beliebter USB- und Bluetooth-Implementierungen. Diese alten 8-Bit-Mikrokerne werden wahrscheinlich noch lange nicht wirklich sterben.
Da es mehrere Open-Source-Implementierungen des 8080 gibt , die bereit sind, in Ihr FPGA synthetisiert zu werden, können auch Sie ein 8080-basiertes System haben!
Es ist auch schwierig, den Sinn der eigentlichen Übung zu erkennen. Nichts, was in der Praxis jemals vorkommt.
MVI L,FFH
PUSH H
POP PSW
RAR   // upto which will set all flags
MVI L,00H
PUSH H
POP PSW
HLT   // upto which it reset all flags
MVI L,FFH PUSH H POP PSW RAR // bis zu dem alle Flags MVI L,00H PUSH H POP PSW HLT gesetzt werden
Willkommen bei EE.SE. Ihre Copy/Past-Buttons scheinen in einer Schleife zu stecken. Bitte drücken Sie auf Bearbeiten und formulieren Sie Ihre Antwort neu. Fügen Sie der aktuellen Antwort weitere Erläuterungen hinzu (nachdem Sie die Formatierung erheblich verbessert haben). Außerdem, hast du diese Tour gemacht ? Bitte bedenken Sie es!
MVI L,FFH;
Push H;
Pop PSW;

Das ist der einfachste Weg!