欢迎访问ic37.com |
会员登录 免费注册
发布采购

PIC18F2450-I/SO 参数 Datasheet PDF下载

PIC18F2450-I/SO图片预览
型号: PIC18F2450-I/SO
PDF下载: 下载PDF文件 查看货源
内容描述: 28 /40/ 44引脚,高性能, 12 MIPS ,增强型闪存, USB微控制器采用纳瓦技术 [28/40/44-Pin, High-Performance, 12 MIPS, Enhanced Flash, USB Microcontrollers with nanoWatt Technology]
分类和应用: 闪存微控制器和处理器外围集成电路光电二极管PC时钟
文件页数/大小: 320 页 / 5591 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号PIC18F2450-I/SO的Datasheet PDF文件第82页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第83页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第84页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第85页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第87页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第88页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第89页浏览型号PIC18F2450-I/SO的Datasheet PDF文件第90页  
PIC18F2450/4450  
Example 7-3 shows the sequence to do a 16 x 16  
unsigned multiplication. Equation 7-1 shows the  
algorithm that is used. The 32-bit result is stored in four  
registers (RES3:RES0).  
EQUATION 7-2:  
16 x 16 SIGNED  
MULTIPLICATION  
ALGORITHM  
RES3:RES0=ARG1H:ARG1L ARG2H:ARG2L  
16  
= (ARG1H ARG2H 2 ) +  
(ARG1H ARG2L 2 ) +  
(ARG1L ARG2H 2 ) +  
(ARG1L ARG2L) +  
(-1 ARG2H<7> ARG1H:ARG1L 2 ) +  
(-1 ARG1H<7> ARG2H:ARG2L 2  
8
EQUATION 7-1:  
16 x 16 UNSIGNED  
MULTIPLICATION  
ALGORITHM  
8
16  
RES3:RES0  
=
=
ARG1H:ARG1L ARG2H:ARG2L  
16  
)
16  
(ARG1H ARG2H 2 ) +  
8
(ARG1H ARG2L 2 ) +  
8
(ARG1L ARG2H 2 ) +  
EXAMPLE 7-4:  
16 x 16 SIGNED  
MULTIPLY ROUTINE  
(ARG1L ARG2L)  
MOVF  
ARG1L, W  
MULWF  
ARG2L  
; ARG1L * ARG2L ->  
; PRODH:PRODL  
;
;
EXAMPLE 7-3:  
16 x 16 UNSIGNED  
MULTIPLY ROUTINE  
MOVFF  
MOVFF  
PRODH, RES1  
PRODL, RES0  
MOVF  
ARG1L, W  
MULWF  
ARG2L  
; ARG1L * ARG2L->  
; PRODH:PRODL  
;
;
;
;
MOVF  
MULWF  
ARG1H, W  
ARG2H  
MOVFF  
MOVFF  
PRODH, RES1  
PRODL, RES0  
; ARG1H * ARG2H ->  
; PRODH:PRODL  
;
;
;
;
MOVFF  
MOVFF  
PRODH, RES3  
PRODL, RES2  
MOVF  
MULWF  
ARG1H, W  
ARG2H  
; ARG1H * ARG2H->  
; PRODH:PRODL  
;
;
MOVF  
MULWF  
ARG1L,W  
ARG2H  
MOVFF  
MOVFF  
PRODH, RES3  
PRODL, RES2  
; ARG1L * ARG2H ->  
; PRODH:PRODL  
;
; Add cross  
; products  
;
;
;
MOVF  
ADDWF  
MOVF  
ADDWFC RES2, F  
CLRF WREG  
ADDWFC RES3, F  
PRODL, W  
RES1, F  
PRODH, W  
MOVF  
MULWF  
ARG1L, W  
ARG2H  
; ARG1L * ARG2H->  
; PRODH:PRODL  
;
; Add cross  
; products  
;
;
;
MOVF  
ADDWF  
MOVF  
PRODL, W  
RES1, F  
PRODH, W  
;
ADDWFC RES2, F  
CLRF WREG  
ADDWFC RES3, F  
MOVF  
MULWF  
ARG1H, W  
ARG2L  
;
; ARG1H * ARG2L ->  
; PRODH:PRODL  
;
; Add cross  
; products  
;
;
;
;
MOVF  
ADDWF  
MOVF  
ADDWFC RES2, F  
CLRF WREG  
ADDWFC RES3, F  
PRODL, W  
RES1, F  
PRODH, W  
MOVF  
MULWF  
ARG1H, W  
ARG2L  
;
; ARG1H * ARG2L->  
; PRODH:PRODL  
;
; Add cross  
; products  
MOVF  
ADDWF  
MOVF  
PRODL, W  
RES1, F  
PRODH, W  
;
;
ADDWFC RES2, F  
CLRF WREG  
ADDWFC RES3, F  
;
;
;
BTFSS  
BRA  
MOVF  
SUBWF  
MOVF  
ARG2H, 7  
SIGN_ARG1  
ARG1L, W  
RES2  
; ARG2H:ARG2L neg?  
; no, check ARG1  
;
;
;
Example 7-4 shows the sequence to do a 16 x 16  
signed multiply. Equation 7-2 shows the algorithm  
used. The 32-bit result is stored in four registers  
(RES3:RES0). To account for the sign bits of the  
arguments, the MSb for each argument pair is tested  
and the appropriate subtractions are done.  
ARG1H, W  
SUBWFB RES3  
SIGN_ARG1  
BTFSS  
BRA  
ARG1H, 7  
CONT_CODE  
ARG2L, W  
RES2  
; ARG1H:ARG1L neg?  
; no, done  
;
;
;
MOVF  
SUBWF  
MOVF  
ARG2H, W  
SUBWFB RES3  
;
CONT_CODE  
:
DS39760A-page 84  
Advance Information  
© 2006 Microchip Technology Inc.