Article View: pl.comp.lang.asm
Article #315Re: Zmiennoprzecinkowe - konwersja Temporary Real (80bity) na Long Real (64bity)
From: Bogdan (bogdro)
Date: Tue, 06 Jun 2006 08:40
Date: Tue, 06 Jun 2006 08:40
34 lines
2513 bytes
2513 bytes
Jareq napisał(a):
>> Więcej roboty będzie niż w powyższym sposobie. Możesz po prostu
>> zapisać st0 do zmiennej qword, po czym sprawdź status FPU, czy nie
>> wystąpił wyjątek, wyłączając uprzednio sygnalizowanie wyjątków.
>
> ...chciałem właśnie zrobić to w powyższy sposób, jednak chyba
> namieszałem coś z statusem - w zasadzie to które bity w status word
> powinienem sprawdzić?
Poczytaj Intel Architecture Software Developer's Manual:
http://developer.intel.com/design/Pentium4/documentation.htm
Bity 3 i 4, sądząc po tym, co zrobiłem w moim kodzie.
> Chciałem właśnie zdjąć ze stosu koprocesora st0 do zmiennej qword,
> następnie sprawdzić (jakoś - niestety właśnie z tym etapem miałem
> problem) czy wszystko "poszło ok". Niestety walka ze status word nie
> przyniosła rezultatów.
>
> Także ogólnie działa, ale jak ktoś jeszcze wie jak to jest z tym fstp do
> zmiennej qword to będę wdzięczny (tzn. co się dzieje ze status word).
Ja u siebie sprawdzam tak:
fstsw ax
and al, 18h ; spr., czy over-/under-flow
jeśli wynik jest niezerowy, to wystąpił over/underflow.
--
Pozdrawiam, Bogdan (Linux i FreeDOS)
Kurs assemblera x86 (DOS i Linuks): http://rudy.mif.pg.gda.pl/~bogdro
Grupy dyskusyjne o asm: pl.comp.lang.asm alt.pl.asm alt.pl.asm.win32
Prawdziwy, bezpieczny komunikator: www.JabberPL.org
Technical Details
Message-ID:
<e63f38$4c6$1@atlantis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailReferences:
<e6198o$2l7$1@node1.news.atman.pl> <e61fnd$214$1@nemesis.news.tpi.pl> <e61u5k$b8p$1@node1.news.atman.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.nask.pl!news.nask.org.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: "Bogdan (bogdro)" <bogdan@bogdan.pl> Newsgroups: pl.comp.lang.asm Subject: Re: Zmiennoprzecinkowe - konwersja Temporary Real (80bity) na Long Real (64bity) Date: Tue, 06 Jun 2006 10:40:40 +0200 Organization: tp.internet - http://www.tpi.pl/ Lines: 34 Message-ID: <e63f38$4c6$1@atlantis.news.tpi.pl> References: <e6198o$2l7$1@node1.news.atman.pl> <e61fnd$214$1@nemesis.news.tpi.pl> <e61u5k$b8p$1@node1.news.atman.pl> NNTP-Posting-Host: acsc194.neoplus.adsl.tpnet.pl Mime-Version: 1.0 X-Trace: atlantis.news.tpi.pl 1149583272 4486 83.11.30.194 (6 Jun 2006 08:41:12 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Tue, 6 Jun 2006 08:41:12 +0000 (UTC) User-Agent: Thunderbird 1.5.0.4 (X11/20060516) In-Reply-To: <e61u5k$b8p$1@node1.news.atman.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit