SW006010 Microchip Technology, SW006010 Datasheet - Page 109

no-image

SW006010

Manufacturer Part Number
SW006010
Description
MPLAB 17C SOFTWARE
Manufacturer
Microchip Technology
Datasheets

Specifications of SW006010

Tool Function
Compiler
Tool Type
Compiler
Processor Series
PIC17C
Lead Free Status / RoHS Status
Not applicable / Not applicable
For Use With/related Products
MPLAB®
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
 2002 Microchip Technology Inc.
TABLE 5-1:
5.3.4
Given two 32-bit signed integers, int1 (AARG) and int2 (BARG), the following code
will multiply the two numbers and place the result in int1 (AARG). Banking and paging
considerations have been omitted for clarity. Include this code into your C program as
inline assembly code.
MOVFP int1,
MOVWF AARGB0
MOVFP int1+1,
MOVWF AARGB1
MOVFP int1+2,
MOVWF AARGB2
MOVPF int1+3,
MOVWF AARGB3
MOVFP int2,
MOVWF BARGB0
MOVFP int2+1,
MOVWF BARGB1
MOVFP int2+2,
MOVWF BARGB2
MOVPF int2+3,
MOVWF BARGB3
CALL FXM3232S
MOVFP AARGB0,
MOVWF int1
MOVFP AARGB1,
MOVWF int1+1
MOVFP AARGB2,
MOVWF int1+2
MOVFP AARGB3,
MOVWF int1+3
FXM3232U()
FXM3232S()
FXD3232U()
FXD3232S()
FPM32()
FPD32()
FLO3232U()
FLO3232S()
FLO1632U()
FLO1632S()
FLO0832U()
FLO0832S()
INT3232()
Syntax
Example
A·B (unsigned 32-bit integers)
A·B (signed 32-bit integers)
A/B (unsigned 32-bit integers)
A/B (signed 32-bit integers)
A·B (32-bit floating point)
A/B (32-bit floating point)
32-bit unsigned int to 32-bit floating point
32-bit signed int to 32-bit floating point
16-bit unsigned int to 32-bit floating point
16-bit signed int to 32-bit floating point
8-bit unsigned int to 32-bit floating point
8-bit signed int to 32-bit floating point
32-bit floating point to 32-bit integer
MATH FUNCTIONS
WREG
WREG
WREG
WREG
WREG
WREG
WREG
WREG
WREG
WREG
WREG
WREG
; Load AARG
; Perform the multiply
; Save the result
Operation
; Load BARG
Operand(s)
Math Library
A, B
A, B
A, B
A, B
A, B
A, B
A
A
A
A
A
A
A
apRNOVS^-page 105
Result In
A, REM
A, REM
A
A
A
A
A
A
A
A
A
A
A

Related parts for SW006010