"The 80387 instruction only accepts arguments between 0 and 0.5..." WTF???

I’m learning a floating point package for the Intel FPU and the log routine discussion says “The 80387 instruction FYL2X only accepts arguments between 0 and 0.5…” .

Where in thundering hell did this come from?

I have tried numerous examples starting with x as big as I can represent it as a 32b integer, and this statement appears false.

In numerous documents, including several from the Intel website, the “Art of Assembly Language” that appears all over the web, and Detmer’s “80x86 Assembly Language and Computer Architecture”, I find nothing about this.

Anybody know what the writer of the above statement is talking about?

I am gonna guess that it might be a typo. Since this is a digital chip, the normal operation is 0 = gnd; 1 = 5V. But I did check at www.intel.com and found they have a technical support email addy.


You should write them with your question and tell them exactly on what document this statement was on.

Another guess is that it could be the voltage needed for a zero. 0- 0.5 V will result in a 0 state.

Napier, this link.

I meant, try the above link.

Napier, judging from the end of your subject heading, it sounds like you’re taking this way too seriously.

deb2world: the issue is what argument the function accepts, not what voltage powers the chip.
EasyPhil: I read the site you link to, but it just appears to be another Intel FPU discussion about this function that does not mention the limited domain issue. What was I supposed to see there?
Walloon: I think all you have to do to write good software is to understand the tools and apply them thoughtfully. I also think malfunctioning software might be the biggest technological shortfall of our entire civilization. If the people that wrote Windows got more right we wouldn’t be cursing our damn computers daily. How can this not drive you crazy too? How can I write software and give it to people I care about while there is a big misunderstanding in the references?

By not using assemly. No offense, but using assembly language in an attempt to make dependable software is not ‘a good thing’.