Microchip Technology MCU PIC PIC18F87K22-I/PTRSL TQFP-80 MCP PIC18F87K22-I/PTRSL Hoja De Datos

Los códigos de productos
PIC18F87K22-I/PTRSL
Descargar
Página de 550
PIC18F87K22 FAMILY
DS39960D-page 104
 2009-2011 Microchip Technology Inc.
6.3.5
STATUS REGISTER
The STATUS register, shown in 
, contains
the arithmetic status of the ALU. The STATUS register
can be the operand for any instruction, as with any
other register. If the STATUS register is the destination
for an instruction that affects the Z, DC, C, OV or N bits,
the write to these five bits is disabled. 
These bits are set or cleared according to the device
logic. Therefore, the result of an instruction with the
STATUS register as destination may be different than
intended. For example, CLRF STATUS will set the Z bit
but leave the other bits unchanged. The STATUS
register then reads back as ‘000u u1uu’.
It is recommended, therefore, that only BCF, BSF,
SWAPF, MOVFF
 and MOVWF instructions be used to
alter the STATUS register because these instructions
do not affect the Z, C, DC, OV or N bits in the STATUS
register. 
For other instructions not affecting any Status bits, see
the instruction set summaries in 
 and
  
Note:
The C and DC bits operate, in subtraction,
as borrow and digit borrow bits, respectively.
REGISTER 6-2:
STATUS REGISTER
U-0
U-0
U-0
R/W-x
R/W-x
R/W-x
R/W-x
R/W-x
N
OV
Z
DC
(
)
C
(
)
bit 7
bit 0
Legend:
R = Readable bit
W = Writable bit
U = Unimplemented bit, read as ‘0’
-n = Value at POR
‘1’ = Bit is set
‘0’ = Bit is cleared
x = Bit is unknown
bit 7-5
Unimplemented: 
Read as ‘0’ 
bit 4
N:
 Negative bit 
This bit is used for signed arithmetic (2’s complement). It indicates whether the result was negative 
(ALU MSB = 1).
1
 = Result was negative 
0
 = Result was positive 
bit 3
OV:
 Overflow bit 
This bit is used for signed arithmetic (2’s complement). It indicates an overflow of the seven-bit 
magnitude which causes the sign bit (bit 7) to change state.
1
 = Overflow occurred for signed arithmetic (in this arithmetic operation) 
0
 = No overflow occurred 
bit 2
Z:
 Zero bit 
1
 = The result of an arithmetic or logic operation is zero 
0
 = The result of an arithmetic or logic operation is not zero 
bit 1
DC:
 Digit Carry/Borrow bit
 
For ADDWF, ADDLW, SUBLW and SUBWF instructions: 
1
 = A carry-out from the 4th low-order bit of the result occurred 
0
 = No carry-out from the 4th low-order bit of the result 
bit 0
C:
 Carry/Borrow bit
(
 
For ADDWF, ADDLW, SUBLW and SUBWF instructions: 
1
 = A carry-out from the Most Significant bit of the result occurred 
0
 = No carry-out from the Most Significant bit of the result occurred   
Note 1:
For borrow, the polarity is reversed. A subtraction is executed by adding the 2’s complement of the second 
operand.
2:
For borrow, the polarity is reversed. A subtraction is executed by adding the 2’s complement of the second 
operand.