/*****************************************************************************/
/* */
/* COMPUTE NATURAL LOGARITHM OF 3/2 */
/* 10/04/10 (dkc) */
/* */
/*****************************************************************************/
#include <stdio.h>
#include <math.h>
unsigned int carry(unsigned int a, unsigned int b, unsigned int sum);
unsigned int lmbd(unsigned int mode, unsigned int a);
void div256_32(unsigned int a0, unsigned int a1, unsigned int a2,
unsigned int a3, unsigned int a4, unsigned int a5,
unsigned int a6, unsigned int a7, unsigned int *quotient,
unsigned int d7);
void add256(unsigned int *a, unsigned int *b);
void sub256(unsigned int *a, unsigned int *b);
int main ()
{
unsigned int i,j,limit;
unsigned int A[8],B[8],C[8];
FILE *Outfp;
Outfp = fopen("output32.dat","w");
for (i=0; i<8; i++) {
A[i]=0;
C[i]=0;
}
limit=1<<30;
j=3;
A[0]=0x20000000;
for (i=1; i<1000000; i++) {
div256_32(A[0],A[1],A[2],A[3],A[4],A[5],A[6],A[7],B,i*j);
add256(B, C);
j=j*3;
if ((i*j)>limit)
break;
}
for (i=0; i<8; i++) {
printf(" %#010x \n",C[i]);
fprintf(Outfp," %#010x \n",C[i]);
}
fclose(Outfp);
return(0);
}