
void divide( Num, Den, Quo, Rem )unsigned long Num, Den, &Quo, &Rem;{   int pwr = 1;   unsigned long acc = 0;   if ( Den == 0 ) {       printf( "DIVIDE BY ZERO ERRORn" );       exit;   }   // Scale Num and Den   while ( (Num>Den) && !(Den&0x80000000) ) {       pwr <<= 1;       Den <<= 1;   }   while (Num && pwr) {      if (Num > Den) {         Num -= Den;         acc += pwr;      }      Den >>= 1;      pwr >>= 1;   }   *Quo = acc;   *Rem = Num;}