PIC16F871 Microchip Technology Inc., PIC16F871 Datasheet - Page 18

no-image

PIC16F871

Manufacturer Part Number
PIC16F871
Description
28/40-pin, 8-bit Cmos Flash Microcontrollers
Manufacturer
Microchip Technology Inc.
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC16F871-E/L
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC16F871-E/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC16F871-I/L
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC16F871-I/P
Manufacturer:
Microchip Technology
Quantity:
1 984
Part Number:
PIC16F871-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC16F871T-E/L
Manufacturer:
Microchip Technology
Quantity:
10 000
PIC16F870/871
2.2.2.1
The STATUS register contains the arithmetic status of
the ALU, the RESET status and the bank select bits for
data memory.
The STATUS register can be the destination for any
instruction, as with any other register. If the STATUS
register is the destination for an instruction that affects
the Z, DC or C bits, then the write to these three bits is
disabled. These bits are set or cleared according to the
device logic. Furthermore, the TO and PD bits are not
writable, therefore, the result of an instruction with the
STATUS register as destination may be different than
intended.
REGISTER 2-1:
DS30569B-page 16
bit 7-6
bit 6-5
bit 4
bit 3
bit 2
bit 1
bit 0
STATUS Register
STATUS REGISTER (ADDRESS: 03h, 83h, 103h, 183h)
bit 7
IRP: Register Bank Select bit (used for indirect addressing)
1 = Bank 2, 3 (100h - 1FFh)
0 = Bank 0, 1 (00h - FFh)
RP1:RP0: Register Bank Select bits (used for direct addressing)
11 = Bank 3 (180h - 1FFh)
10 = Bank 2 (100h - 17Fh)
11 = Bank 1 (80h - FFh)
10 = Bank 0 (00h - 7Fh)
Each bank is 128 bytes.
TO: Time-out bit
1 = After power-up, CLRWDT instruction, or SLEEP instruction
0 = A WDT time-out occurred
PD: Power-down bit
1 = After power-up or by the CLRWDT instruction
0 = By execution of the SLEEP instruction
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
DC: Digit carry/borrow bit (ADDWF, ADDLW, SUBLW, SUBWF instructions)
(for borrow, the polarity is reversed)
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
C: Carry/borrow bit (ADDWF, ADDLW, SUBLW, 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
Legend:
R = Readable bit
- n = Value at POR
R/W-0
Note:
IRP
For borrow, the polarity is reversed. A subtraction is executed by adding the two’s
complement of the second operand. For rotate (RRF, RLF) instructions, this bit is
loaded with either the high or low order bit of the source register.
R/W-0
RP1
R/W-0
RP0
W = Writable bit
‘1’ = Bit is set
R-1
TO
For example, CLRF STATUS will clear the upper three
bits and set the Z bit. This leaves the STATUS register
as 000u u1uu (where u = unchanged).
It is recommended, therefore, that only BCF, BSF,
SWAPF and MOVWF instructions are used to alter the
STATUS register, because these instructions do not
affect the Z, C or DC bits from the STATUS register. For
other instructions not affecting any status bits, see the
“Instruction Set Summary”.
Note 1: The C and DC bits operate as a borrow
U = Unimplemented bit, read as ‘0’
‘0’ = Bit is cleared
R-1
PD
and digit borrow bit, respectively, in sub-
traction. See the SUBLW and SUBWF
instructions for examples.
R/W-x
 2003 Microchip Technology Inc.
Z
x = Bit is unknown
R/W-x
DC
R/W-x
C
bit 0

Related parts for PIC16F871