Esse Bug está me deixando Louco, Salvando FLOAT na EEPROM

Prezado amigo, muito obrigado pela pronta-resposta.
Realmente com o PUT e GET funcionam perfeitamente, questão é que não consigo entender porque não funciona aquele tratamento da variavél:

Serial.println(byte((coef-byte(coef))*100)); // (8.49 - 8) * 100 = 49 

(8.49 - 8) * 100 = 49
porém retorna 48

Com 8.59:
(8.59 - 8) * 100 = 59
Ele retorna certo: 59

Pois na realidade o problema não está na gravação na eeprom e sim nessa fórmula, eu só preciso entender o porque, pois coisas sem explicação me tiram o sono, kkkk.
Porque funciona com 8.59 e com 8.49 não? Isso que me deixa louco.

Eu só precisava de uma explicação lógica para poder descansar em paz, na teoria deveria funcionar e até funciona. Questão está em determinados números impares, mas não é em todos, como mencionei 8.59 retorna certo 59.

Obrigado pela atenção!