Car a+b+c+d veut en fait dire :
trunc<32>(trunc<32>(trunc<32>(a+b)+c)+d)
Ce qui est non équivalent à :
trunc<32>(trunc<32>(a+b)+trunc<32>(c+d))
Heu... en calcul entier c'est la même chose. La seule différence pourrait avoir lieu dans l'état des flags à la fin, mais les flags ne sont pas testables directement en C.
[^] # Re: Quelques infos
Posté par Antoine . En réponse au journal Comment les programmeurs écrivent du code flottant ?. Évalué à 2.
Car a+b+c+d veut en fait dire :
trunc<32>(trunc<32>(trunc<32>(a+b)+c)+d)
Ce qui est non équivalent à :
trunc<32>(trunc<32>(a+b)+trunc<32>(c+d))
Heu... en calcul entier c'est la même chose. La seule différence pourrait avoir lieu dans l'état des flags à la fin, mais les flags ne sont pas testables directement en C.