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资料
PIC24HJ256GP210-I/PT IC PIC MCU FLASH 128KX16 100TQFP
PIC24HJ128GP310A-I/PF IC PIC MCU FLASH 128KB 100-TQFP
DSPIC33FJ128GP310-I/PF IC DSPIC MCU/DSP 128K 100TQFP
PIC16C66-20I/SO IC MCU OTP 8KX14 PWM 28SOIC
DSPIC33FJ128MC510-I/PT IC DSPIC MCU/DSP 128K 100TQFP
PIC16C66-20I/SP IC MCU OTP 8KX14 PWM 28DIP
PIC18LF2620-I/SP IC MCU FLASH 32KX16 28SDIP
PIC16F877-04I/P IC MCU FLASH 8KX14 EE 40DIP
相关代理商/技术参数
PIC18F4620-I/P 功能描述:8位微控制器 -MCU 64KB 3968 RAM 36 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
PIC18F4620-I/P 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 18F4620 DIP40
PIC18F4620-I/PT 功能描述:8位微控制器 -MCU 64KB 3968 RAM 36 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
PIC18F4620-I/PT 制造商:Microchip Technology Inc 功能描述:IC 8BIT FLASH MCU 18F4620 TQFP44
PIC18F4620T-I/ML 功能描述:8位微控制器 -MCU 64KB 3968 RAM 36 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
PIC18F4620T-I/PT 功能描述:8位微控制器 -MCU 64KB 3968 RAM 36 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
PIC18F4680-E/ML 功能描述: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
PIC18F4680-E/P 功能描述: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