« Fonctionnement d'un ordinateur/Les circuits de calcul flottant » : différence entre les versions

Contenu supprimé Contenu ajouté
Ligne 29 :
[[File:Interpolation memory - principe.PNG|vignette|''Interpolation memory'' - principe]]
 
La seconde ruse, quelque peu meilleure, se base sur le même principe : ne mémoriser le résultat que pour une partie des opérandes et calculer les autres à partir des résultats mémorisés. Sauf qu'ici, on n'utilise pas d'identités trigonométriques qui donnent un résultat exact. La seconde ruse ne fait que calculer une approximation du résultat, sauf pour les opérandes dont on a mémorisé directement le résultat. L'idée est de prendre les deux (ou trois, ou quatre, peu importe) résultats précalculés les plus proches du résultat voulu, et de les utiliser pour faire une approximation.

L'approximation du résultat se calcule en faisant une '''interpolation linéaire''', à savoir une moyenne pondérée des deux résultats les plus proches. Par exemple, si on connait le résultat pour sin(45°) et pour sin(50°), alors on peut calculer sin(47,5°), sin(47°), sin(45,5°), sin(46,5°) ou encore sin(46°) en faisant une moyenne pondérée des deux résultats. Une telle approximation est largement suffisante pour beaucoup d'applications
 
Le circuit qui permet de faire cela est appelée une '''mémoire à interpolation'''. Le schéma de principe du circuit est illustré ci-contre, alors que le schéma détaillé est illustré ci-dessous.