SW006012 Microchip Technology, SW006012 Datasheet - Page 156

C COMPILER FOR DSPIC30F FAMILY

SW006012

Manufacturer Part Number
SW006012
Description
C COMPILER FOR DSPIC30F FAMILY
Manufacturer
Microchip Technology
Type
MPLAB® C30 Compilerr
Series
PIC24 & DsPICr
Datasheets

Specifications of SW006012

Supported Families
PIC24, DsPIC30F And DsPIC33F
Core Architecture
PIC, DsPIC
Kit Contents
Software And Docs
Mcu Supported Families
PIC24 MCUs And DsPIC DSCs
Tool Type
Compiler
Processor Series
PIC24, dsPIC
Lead Free Status / RoHS Status
Not applicable / Not applicable
For Use With/related Products
dsPIC30F
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
MPLAB
DS51284F-page 150
®
C30 User’s Guide
__
Assembler Opera-
tor / Machine
Instruction:
Error Messages
__
Description:
Prototype:
Argument:
Return Value:
Assembler Opera-
tor / Machine
Instruction:
Error Messages
__
Description:
Prototype:
Argument:
Return Value:
Assembler Opera-
tor / Machine
Instruction:
Error Messages
builtin_sac (Continued)
builtin_sacr
builtin_sftac
sac
An error message will be displayed if:
• the result is not an accumulator register
• the shift value is not a literal within range
Shifts value by shift (a literal between -8 and 7) and returns the value
which is rounded using the rounding mode determined by the
CORCONbits.RND control bit.
For example:
Might generate:
int __builtin_sacr(int value, int shift);
value
shift
Returns the shifted result to CORCON register.
sacr
An error message will be displayed if:
• the result is not an accumulator register
• the shift value is not a literal within range
Shifts accumulator by shift. The valid shift range is -16 to 16.
For example:
Might generate:
int __builtin_sftac(int shift);
shift
Returns the shifted result to an accumulator.
sftac
An error message will be displayed if:
• the result is not an accumulator register
• the shift value is not a literal within range
register int value asm("A");
int result;
result = __builtin_sac(value,3);
sac.r A, #3, w0
register int result asm("A");
int i;
result = __builtin_sftac(i);
sftac A, w0
Integer number to be shifted.
Literal amount to shift.
Literal amount to shift.
© 2007 Microchip Technology Inc.

Related parts for SW006012