Data Types
MPLAB | TMS320 | C++ | Java | C# | |
bool | - | - | 8 | 8 | |
byte | - | - | - | 8 | 8 |
sbyte | - | - | - | 8 | 8 |
char, signed char | 8 | 16 | 8 | 16 | 16 |
unsigned char | 8 | 16 | 8 | 16 | - |
short | 16 | 16 | 16 | 16 | 16 |
unsigned short | 16 | 16 | 16 | 16 | 16 |
int | 16 | 16 | 32 | 32 | 32 |
unsigned int | 16 | 16 | 32 | 32 | 32 |
long | 32 | 32 | 32 | 64 | 64 |
unsigned long | 32 | 32 | 32 | 64 | 64 |
long long | 64 | - | 64 | - | |
unsigned long long | 64 | - | 64 | - | |
float | 32 | 32 | 32 | 32 | 32 |
double | 32 | 32 | 32 | 64 | 64 |
long double | 64 | 32 | 64 | - | |
decimal | - | - | - | 128 |
INTEGER DATA TYPES MPLAB C30
Type | Bits | Min | Max |
char, signed char | 8 | -128 | 127 |
unsigned char | 8 | 0 | 255 |
short, signed short | 16 | -32768 | 32767 |
unsigned short | 16 | 0 | 65535 |
int, signed int 1 | 6 | -32768 | 32767 |
unsigned int | 16 | 0 | 65535 |
long, signed long | 32 | -2^31 | 2^31 - 1 |
unsigned long | 32 | 0 | 2^32 - 1 |
long long**, signed long long** | 64 | -2^63 | 2^63 - 1 |
unsigned long long** | 64 | 0 | 2^64 - 1 |
** ANSI-89 extension
FLOATING POINT DATA TYPES MPLAB C30
Type | Bits | E Min | E Max | N Min | N Max |
float | 32 | -126 | 127 | 2^-126 | 2^128 |
double* | 32 | -126 | 127 | 2^-126 | 2^128 |
long double | 64 | -1022 | 1023 | 2^-1022 | 2^1024 |
E = Exponent
N = Normalized (approximate)
* double is equivalent to long double if -fno-short-double is used.