Datasheet
1998-2013 Microchip Technology Inc. DS30289C-page 207
PIC17C7XX
CALL Subroutine Call
Syntax: [ label ] CALL k
Operands: 0 k 8191
Operation: PC+ 1 TOS, k PC<12:0>,
k<12:8> PCLATH<4:0>;
PC<15:13> PCLATH<7:5>
Status Affected: None
Encoding:
111k kkkk kkkk kkkk
Description:
Subroutine call within 8K page. First,
return address (PC+1) is pushed onto
the stack. The 13-bit value is loaded
into PC bits<12:0>. Then the upper-
eight bits of the PC are copied into
PCLATH. CALL is a two-cycle
instruction.
See LCALL for calls outside 8K memory
space.
Words: 1
Cycles: 2
Q Cycle Activity:
Q1 Q2 Q3 Q4
Decode Read literal
'k'<7:0>,
Push PC to
stack
Process
Data
Write to PC
No
operation
No
operation
No
operation
No
operation
Example:
HERE CALL THERE
Before Instruction
PC = Address(HERE)
After Instruction
PC = Address(THERE)
TOS = Address (HERE + 1)
CLRF Clear f
Syntax: [label] CLRF f,s
Operands: 0 f 255
Operation: 00h f, s [0,1]
00h dest
Status Affected: None
Encoding:
0010 100s ffff ffff
Description:
Clears the contents of the specified
register(s).
s = 0: Data memory location 'f' and
WREG are cleared.
s = 1: Data memory location 'f' is
cleared.
Words: 1
Cycles: 1
Q Cycle Activity:
Q1 Q2 Q3 Q4
Decode Read
register 'f'
Process
Data
Write
register 'f'
and if
specified
WREG
Example:
CLRF FLAG_REG, 1
Before Instruction
FLAG_REG = 0x5A
WREG = 0x01
After Instruction
FLAG_REG = 0x00
WREG = 0x01