SW006013 Microchip Technology, SW006013 Datasheet - Page 174

MPLAB C Compiler For DsPIC DSCs

SW006013

Manufacturer Part Number
SW006013
Description
MPLAB C Compiler For DsPIC DSCs
Manufacturer
Microchip Technology
Series
DsPIC30F/33Fr
Type
MPLAB® C Compilerr
Datasheet

Specifications of SW006013

Supported Families
DsPIC30F, DsPIC33F
Core Architecture
DsPIC
Kit Contents
Software And Docs
Mcu Supported Families
DsPIC30F And DsPIC33F
Tool Function
Compiler
Tool Type
Compiler
Processor Series
dsPIC
Lead Free Status / RoHS Status
na
For Use With/related Products
dSPIC DSCs
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
DS51456E-page 170
ldexp (Continued)
ldexpf
Description:
Include:
Prototype:
Arguments:
Return Value:
Remarks:
Example:
For a number = -0.625000 and an exponent = 2
For a number = 2.500000 and an exponent = 3
Error: range error
For a number = 15.000000 and an exponent = 10000
Calculates the result of a single precision floating-point number multi-
plied by an exponent of 2.
<math.h>
float ldexpf(float x, int ex);
x
ex
Returns x * 2^ex. On an overflow, ldexp returns inf and on an
underflow, ldexp returns 0.
A range error will occur on overflow or underflow.
#include <math.h>
#include <stdio.h> /* for printf, perror */
#include <errno.h> /* for errno
int main(void)
{
Output:
ldexp(-0.625000, 2) = -2.500000
ldexp(2.500000, 3) = 20.000000
ldexp(15.000000, 10000) = inf
float x,y;
int n;
errno = 0;
x = -0.625F;
n = 2;
y = ldexpf (x, n);
if (errno)
printf("For a number = %f and an exponent = %d\n",
printf("
errno = 0;
x = 2.5F;
n = 3;
y = ldexpf (x, n);
if (errno)
printf("For a number = %f and an exponent = %d\n",
printf("
perror("Error");
perror("Error");
floating-point value
integer exponent
x, n);
x, n, y);
x, n);
x, n, y);
ldexpf(%f, %d) = %f\n\n",
ldexpf(%f, %d) = %f\n\n",
/* for ldexpf
© 2008 Microchip Technology Inc.
*/
*/

Related parts for SW006013