Un des algorithmes les plus courants sur calculatrice scientifique est l'algorithme CORDIC (pour COordinate Rotation DIgital Computer).
J. Volder est probablement le premier à décrire des algorithmes pour l'évaluation rapide des fonctions sinus et cosinus au moyen d'une série de rotations du système de coordonnées [] (méthodes qu'on retrouvera lors de l'évaluation de la tangente).
Dans une calculatrice typique un nombre 'flottant' occupe 8 octets de mémoire et se décompose en:
Les algorithmes mathématiques sont généralement implémentés à un plus bas niveau utilisant une représentation fixe en BCD (sur 16 chiffres soit 8 octets dans notre exemple).
Une multiplication (division) par peut donc
être remplacée par un décalage de
chiffres binaires. Sur calculatrice on tente
d'éviter les opérations 'lourdes' que sont la
multiplication et la division.
Toutes les fonctions 'standard' peuvent se ramener (entre
autres) aux quatre fonctions suivantes: ,
,
,
.
Soit à évaluer une de ces fonctions au point
, le principe des algorithmes CORDIC
est d'effectuer une série de transformations simples
(addition/soustraction et décalage) réduisant la
valeur de
à une valeur très faible
en même temps qu'élaborant le résultat.
Chacune de ces transformations nécessite une valeur
précalculée de (ou de son
inverse). Le résultat est obtenu par une simple
interpolation linéaire (ou un développement en
série si davantage de chiffres sont requis).
Pour les 4 fonctions précédentes les tableaux
et
suffiront (pour
obtenir plus de 12 chiffres de précision):
On procède en deux étapes: