Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
Сомножители: unsigned long operand1,operand2;
unsigned long low_result; //low 32 bits of result
unsigned long high_result; //high 32 bits of result;
unsigned long tmp;
unsigned long lop1,lop2;
lop1=operand1&0xffffL;
lop2=operand2&0xffffL;
operand1>>=16;
operand2>>=16;
low_result=lop1*lop2;
tmp=low_result>>16;
high_result=operand1*operand2;
operand1*=lop2;
operand2*=lop1;
lop1=operand1&0xffffL;
operand1>>=16;
lop2=operand2&0xffffL;
operand2>>=16;
tmp+=lop1+lop2;
lop1=tmp<<16;
low_result+=lop1;
tmp>>=16;
high_result+=(tmp+operand1+operand2);