Gebruikersavatar
Rogier
Artikelen: 0
Berichten: 5.679
Lid geworden op: di 27 apr 2004, 13:40

Re: Opdracht digitale technieken schrijven assembler functies samen met c++ code

Stef31 schreef:Hallo iedereen

Bij de functie ArcSin voer ik 60 in en deze geeft een raar resultaat en op de rekenmachine is het wel juist hoe kan ik dat oplossen?
Niet, want de arcsin van 60o (of het equivalent in radialen,
\(\pi\)
/3) bestaat niet!

De uitkomst kan wel 60o of
\(\pi\)
/3 radialen zijn... (hint: bedenk eens wat het domein is van arcsin :D )

(PS: mijn commentaar in een van de eerste posts klopt ook niet echt, dat had op temp i.p.v. result moeten slaan. Overigens verwarrende naamgeving: de tijdelijke graden-naar-radialen omgezette waarde sla je op in "result" en het resultaat sla je op in "temp", andersom lijkt me handiger)
In theory, there's no difference between theory and practice. In practice, there is.
Gebruikersavatar
Rogier
Artikelen: 0
Berichten: 5.679
Lid geworden op: di 27 apr 2004, 13:40

Re: Opdracht digitale technieken schrijven assembler functies samen met c++ code

Ik heb zelfde probleem met TanH(x) deze geeft ook een verkeerd resultaat af
De enige fout die ik zo gauw zie is in je commentaar: bij de tweede regel (FLD MSX) staat "load MSX := SinH(x) => ST(1)" maar die laadt SinH(x) (MSX) juist in ST(0), en pusht CosH(x) (MCX) die dan nog in ST(0) staat door naar ST(1).

De rest is volgens mij in orde, als hij toch niet werkt moet je eens naar je SinH en CosH functies kijken.
In theory, there's no difference between theory and practice. In practice, there is.

Terug naar “Huiswerk en Practica”