PIC17C4X
DS30412C-page 136
1996 Microchip Technology Inc.
SUBWF
Subtract WREG from f
Syntax:
[
label ] SUBWF f,d
Operands:
0
≤ f ≤ 255
d
∈ [0,1]
Operation:
(f) – (W)
→ (dest)
Status Affected:
OV, C, DC, Z
Encoding:
0000
010d
ffff
Description:
Subtract WREG from register 'f' (2’s
complement method). If 'd' is 0 the
result is stored in WREG. If 'd' is 1 the
result is stored back in register 'f'.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register 'f'
Execute
Write to
destination
Example 1:
SUBWF
REG1, 1
Before Instruction
REG1
=
3
WREG
=
2
C=
?
After Instruction
REG1
=
1
WREG
=
2
C
=
1
; result is positive
Z=
0
Example 2:
Before Instruction
REG1
=
2
WREG
=
2
C=
?
After Instruction
REG1
=
0
WREG
=
2
C
=
1
; result is zero
Z=
1
Example 3:
Before Instruction
REG1
=
1
WREG
=
2
C=
?
After Instruction
REG1
=
FF
WREG
=
2
C
=
0
; result is negative
Z=
0
SUBWFB
Subtract WREG from f with
Borrow
Syntax:
[
label ] SUBWFB f,d
Operands:
0
≤ f ≤ 255
d
∈ [0,1]
Operation:
(f) – (W) – C
→ (dest)
Status Affected:
OV, C, DC, Z
Encoding:
0000
001d
ffff
Description:
Subtract WREG and the carry ag
(borrow) from register 'f' (2’s comple-
ment method). If 'd' is 0 the result is
stored in WREG. If 'd' is 1 the result is
stored back in register 'f'.
Words:
1
Cycles:
1
Q Cycle Activity:
Q1
Q2
Q3
Q4
Decode
Read
register 'f'
Execute
Write to
destination
Example 1:
SUBWFB
REG1, 1
Before Instruction
REG1
=
0x19
(0001 1001)
WREG
=
0x0D
(0000 1101)
C=
1
After Instruction
REG1
=
0x0C
(0000 1011)
WREG
=
0x0D
(0000 1101)
C
=
1
; result is positive
Z=
0
Example2:
SUBWFB
REG1,0
Before Instruction
REG1
=
0x1B
(0001 1011)
WREG
=
0x1A
(0001 1010)
C=
0
After Instruction
REG1
=
0x1B
(0001 1011)
WREG
=
0x00
C
=
1
; result is zero
Z=
1
Example3:
SUBWFB
REG1,1
Before Instruction
REG1
=
0x03
(0000 0011)
WREG
=
0x0E
(0000 1101)
C=
1
After Instruction
REG1
=
0xF5
(1111 0100) [2’s comp]
WREG
=
0x0E
(0000 1101)
C
=
0
; result is negative
Z=
0
相关PDF资料
PIC24FJ256GB106-I/PT IC PIC MCU FLASH 256K 64-TQFP
PIC18LF2480-I/SP IC PIC MCU FLASH 8KX16 28-DIP
PIC18F252-I/SP IC MCU FLASH 16KX16 EE 28DIP
PIC18F252-I/SO IC MCU FLASH 16KX16 EE 28SOIC
PIC16F876-04I/SP IC MCU FLASH 8KX14 EE 28DIP
PIC16F876-04I/SO IC MCU FLASH 8KX14 EE 28SOIC
PIC16LF874A-I/L IC MCU FLASH 4KX14 EE A/D 44PLCC
DSPIC33FJ256GP506-I/PT IC DSPIC MCU/DSP 256K 64TQFP
相关代理商/技术参数
PIC18F2620-I/SO 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 18F2620 SOIC28
PIC18F2620-I/SOB4 制造商:Microchip Technology Inc 功能描述:
PIC18F2620-I/SP 功能描述:8位微控制器 -MCU 64KB 3968 RAM 25 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2620-I/SP 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 18F2620 SDIL28
PIC18F2620T-I/SO 功能描述:8位微控制器 -MCU 64KB 3968 RAM 25 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2680-E/SO 功能描述:8位微控制器 -MCU 64KB 3328 RAM w/ECAN RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2680-E/SP 功能描述:8位微控制器 -MCU 64KB 3328 RAM w/ECAN RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F2680-H/SO 功能描述:8位微控制器 -MCU 64 KB Flash 3328 RAM 25 I/O w/ECAN RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT