Earl.
Do you mind if I ask how you arrived at 583? I am trying your method and comparing it to the regular floating point method and it is not correct. So I must be doing something wrong.
This is a quick test routine:
float vTemp,vTemp25;
float step = (float)(3.3/65536.0);
vTemp25 = 0.719;
vTemp = (float)cpuTemp * step;
intTempInC = 25000 -((vTemp - vTemp25) * 583);
tempInC = (int)(25.0 - ((vTemp - vTemp25) / 0.001715));
printf("\r\n CPU Temp = %d C %d C",tempInC,intTempInC);
Thank you sir.