Fehler im PIC18Fxx2-Befehlssatz?

Hallo, bei Verwendung des Befehls SUBWF scheint das N-Flag nicht immer richtig gesetzt zu werden. Es tritt meistens dann auf, wenn der Befehl Null minus Null rechnet. Laut Microchip-Beispiele sollten N- und C-Flag immer den entgegengesetzten Wert haben, oder sehe ich das falsch? Hat jemand schon ähnliche Beobachtungen gemacht, ggf. auch mit anderen Befehlen des Befehlssatzes? Über weitere Informationen wäre ich dankbar, zumal bei Microchip dazu nichts zu erfahren ist.

MfG Martin

Reply to
Martin Konopka
Loading thread data ...

Ja.

Das N Flag ist ein Indikator für negative Zahlen, kommt also immer, wenn bit7 der letzten arithmetischen Operation 1 ist. Das Carry Flag zeigt einen arithmetischen Überlauf / Borrow an, und ist damit nicht zwingendermassen invers zum N-Flag.

Z.B:

0xff + 0xff : N und C Flag gesetzt.

MIKE

Reply to
M.Randelzhofer

"M.Randelzhofer" schrieb im Newsbeitrag news: snipped-for-privacy@individual.net...

Sorry, im Beispiel SUBWF sollte bei 0-0 ein N=0 und C=1 rauskommen. Und was macht das Pig ?

MIKE

Reply to
M.Randelzhofer

Hm, es stellt sich doch prinzipiell die Frage, was ein weiteres Flag soll, wenn es nur das Inverse eines anderen anzeigt?

bis dann andreas

Reply to
Andreas Neiser

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.