Welke berekening voert een rekenmachine uit bij de sinus, cosinus en tangens?

Weet jij het antwoord?

/2500

Het beste antwoord

Een reeksontwikkeling: sin X = 1/1!x -1/3!x^3 +1/5!x^5 -1/7!x^7 cos X = 1/1!x -1/2!x^2 +1/4!x^4 -1/6!x^6 Zie de bron voor een betere weergave.

Bronnen:
http://nl.wikipedia.org/wiki/Sinus_en_cosinus

De reeksontwikkeling zou op zich wel kunnen, maar is te traag. Daarom wordt gewoonlijk het CORDIC-algoritme gebruikt. Ik heb er alleen engelstalige bronnen bij kunnen vinden. Google op CORDIC.

In feite wordt in rekenmachines een speciaal algoritme gebruikt, waardoor de processor alleen maar bits hoeft te schuiven en constantes uit tabellen hoeft op te zoeken. Dat heet het Cordic algoritme en is de basis voor al de wetenschappelijke (hyperbolische, geometrische en goniometrische) functies van de rekenmachine. Het werkt door de hoeken eerst naar het eerste kwadrant tussen 0 en 90 graden om te zetten. Door vanuit 1.0 met 45 graden te roteren naar links, de hoek dan te vergelijken met de hoek waarvan je de cosinus wilt hebben. Als hij te klein is draai je met een helft van de vorige hoek naar links, is hij te groot dan draai je met dezelfde hoek naar rechts. Omdat er steeds door twee gedeeld wordt kan de processor gewoon binaire getallen steeds een stapje naar links schuiven om een uitkomst te krijgen. Er wordt bijgehouden hoevaak naar links en naar rechts wordt geroteerd en na ze 20 of 40 herhalingen van de procedure heb je een nauwkeurige vectorschatting van een vector op de eenheidscirkel met cos(bèta), sin(beta). Als je sinus in hebt getoetst geeft hij het tweede getal, bij cosinus het tweede getal en bij de tangens deelt hij de twee elementen van de vector op elkaar. Voor de procedure is wel een tabel van de arctangens en van K nodig. In de bron wordt het duidelijk uitgelegd.

Stel zelf een vraag

Ben je op zoek naar het antwoord op die ene vraag die je misschien al tijden achtervolgt?

/100