unsigned short a=10;
unsigned short b;
unsigned short c;
unsigned long d;
b = (unsigned short)(d/2400)/60; /*ok */
==============================================
//sbit p3_0 = P3^0;
unsigned long fun();
unsigned short a=10;
//int a,b;
//long c;
void main()
{
d = (unsigned long)b * a;
// d = (long)b*a;
// b = d / a;
// unsigned long tmp;
// unsigned short tmp1,tmp2;
// #pragma ot(4,size)
// c = ((long)a * b)/10; /* MUL and DIVL */
intrinsic function for 32bit multiplication hello, are there intrinsic functions available for the XC164 to use the multiply unit of the ALU? For example for calculations like: 16bit x 16bit = 32bit (MUL-instruction)or 32bit / 16bit = 16bit (DIVL-instruction)? regards! Andreas | |
Read-Only Author Mike Kleshov Posted 5-Jun-2005 12:03 GMT Toolset C166 | ![]() RE: intrinsic function for 32bit multiplication As far as I know, there are no such intrinsic functions. Besides, why would you need them when the compiler emits the appropriae instructions well enough? Just compile the following piece of code and see the compiler output: Regards, - mike |
Andreas Greif 11-Jun-2005 17:14 GMT | ![]() Hi Mike, Thanks for the answer! With the tasking compiler this was a problem. With Keil it works well! |