We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
Negative Flag: Difference between revisions
From SnesLab
(more description of LSR) |
(shorten description) |
||
Line 1: | Line 1: | ||
The '''Negative Flag''' (N) | The '''Negative Flag''' (N) is bit 7 of the [[65c816]]'s [[status register]]. Although there are no dedicated SEN or CLN instructions to set or clear it, it can be set with [[SEP]] and cleared with [[REP]]: | ||
<pre> | <pre> |
Revision as of 06:10, 10 August 2024
The Negative Flag (N) is bit 7 of the 65c816's status register. Although there are no dedicated SEN or CLN instructions to set or clear it, it can be set with SEP and cleared with REP:
SEP #$80 REP #$80
These instructions also affect the negative flag (this bulleted list being 37 long):
- ADC
- AND
- ASL
- BIT
- CMP
- CPX
- CPY
- DEC
- DEX
- DEY
- EOR
- INC
- INX
- INY
- LDA
- LDX
- LDY
- ORA
- PLA
- PLB
- PLD
- PLX
- PLY
- ROL
- ROR
- SBC
- TAX
- TAY
- TCD
- TDC
- TSC
- TSX
- TXA
- TXY
- TYA
- TYX
- XBA
Also, LSR always clears the negative flag because it also shifts a zero into the operand's most significant bit, making it non-negative.
BPL and BMI examine the negative flag to decide whether or not to branch.
See Also
Reference
- Labiak, Willam. Page 109