Pendant que j'écrivais un prog qui faisanit pas mal de conversion float vers int, j'ai regardé le code assembleur généré et je me suis aperçu que le prog passait son temps à modifier le registre de contrôle du FPU avant de faire sa conversion et perdait ainsi tu temps.
j'ai voulu vois ce que j'obtenai en faisant moi-même la conversion :
un float est représenté sous 32 bits comme ceci :
signe*1.m * 2^exp
bit 31 : signe.
bits 30..23 : exposant+127.
bits 22..0 : partie fractionnaire de la mantisse.