From: George H. <geo...@us...> - 2006-02-08 14:26:46
|
Update of /cvsroot/win32forth/win32forth/doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23074/win32forth/doc Modified Files: p-AcceleratorTables.htm p-classdbg.htm p-float.htm p-module.htm p-task.htm w32f-glossary.csv Log Message: gah: Updated glossary and docs Index: w32f-glossary.csv =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/w32f-glossary.csv,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** w32f-glossary.csv 7 Feb 2006 16:58:33 -0000 1.6 --- w32f-glossary.csv 8 Feb 2006 14:26:34 -0000 1.7 *************** *** 926,929 **** --- 926,931 ---- ">fpcw","n --","W32F Floating extra","CODE","","p-float.htm#3" "fpsw>","-- n","W32F Floating extra","CODE","","p-float.htm#4" + "B/FLOAT","-- n","W32F Floating extra","CONSTANT","","p-float.htm#5" + "cells/float","","","VALUE","","p-float.htm#6" "finit","--","W32F Floating extra","CODE","","p-float.htm#7" "F@","addr -- ; fs: -- r","ANSI Floating","CODE","","p-float.htm#8" *************** *** 951,967 **** "F2NIP","fs: r1 r2 r3 r4 -- r3 r4","W32F Floating extra","COLON","","p-float.htm#30" "fpi","fs: -- r","W32F Floating extra","CODE","","p-float.htm#31" ! "f0.0","FS: -- r","W32F Floating extra","CODE","","p-float.htm#32" "f1.0","fs: -- r","W32F Floating extra","CODE","","p-float.htm#33" "fL2t","fs: -- r","W32F Floating extra","CODE","","p-float.htm#34" "fL2e","fs: -- r","W32F Floating extra","CODE","","p-float.htm#35" "fLog2","fs: -- r","W32F Floating extra","CODE","","p-float.htm#36" ! "fLn2","fs: -- r","W32F Floating extra","CODE","","p-float.htm#37" ! "finf","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#38" ! "f2.0","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#39" ! "f10.0","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#40" ! "f0.5","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#41" ! "fbig","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#42" ! "feps","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#43" ! "fsmall","FS: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#44" "a2**63","-- addr","W32F Floating extra","FVARIABLE","","p-float.htm#45" "sq2m1","-- addr","W32F Floating extra","FVARIABLE","","p-float.htm#46" --- 953,969 ---- "F2NIP","fs: r1 r2 r3 r4 -- r3 r4","W32F Floating extra","COLON","","p-float.htm#30" "fpi","fs: -- r","W32F Floating extra","CODE","","p-float.htm#31" ! "f0.0","fs: -- r","W32F Floating extra","CODE","","p-float.htm#32" "f1.0","fs: -- r","W32F Floating extra","CODE","","p-float.htm#33" "fL2t","fs: -- r","W32F Floating extra","CODE","","p-float.htm#34" "fL2e","fs: -- r","W32F Floating extra","CODE","","p-float.htm#35" "fLog2","fs: -- r","W32F Floating extra","CODE","","p-float.htm#36" ! "fLn2","fs: -- r","W32F Floating extra","CODE","","p-float.htm#37" ! "finf","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#38" ! "f2.0","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#39" ! "f10.0","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#40" ! "f0.5","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#41" ! "fbig","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#42" ! "feps","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#43" ! "fsmall","fs: -- r","W32F Floating extra","FCONSTANT","","p-float.htm#44" "a2**63","-- addr","W32F Floating extra","FVARIABLE","","p-float.htm#45" "sq2m1","-- addr","W32F Floating extra","FVARIABLE","","p-float.htm#46" *************** *** 973,977 **** "D>F","d -- ; Fs: -- r","ANSI Floating","CODE","","p-float.htm#52" "F>D","-- d ; fs: r --","ANSI Floating","CODE","","p-float.htm#53" ! "ZF>D","-- d ; fs: r --","W32F Floating extra","CODE","","p-float.htm#54" "s>f","n -- ; fs: -- r","W32F Floating extra","COLON","","p-float.htm#55" "f>s","-- n ; fs: r --","W32F Floating extra","COLON","","p-float.htm#56" --- 975,979 ---- "D>F","d -- ; Fs: -- r","ANSI Floating","CODE","","p-float.htm#52" "F>D","-- d ; fs: r --","ANSI Floating","CODE","","p-float.htm#53" ! "ZF>D","-- d ; fs: r --","W32F Floating extra","CODE","","p-float.htm#54" "s>f","n -- ; fs: -- r","W32F Floating extra","COLON","","p-float.htm#55" "f>s","-- n ; fs: r --","W32F Floating extra","COLON","","p-float.htm#56" *************** *** 994,999 **** "FNEGATE","fs: r1 -- r2","ANSI Floating","CODE","","p-float.htm#73" "1/f","fs: r1 -- r2","W32F Floating extra","COLON","","p-float.htm#74" ! "f2/","fs: r1 -- r2","W32F Floating extra","CODE","","p-float.htm#75" ! "f2*","fs: r1 -- r2","W32F Floating extra","CODE","","p-float.htm#76" "FABS","fs: r1 -- r2","ANSI Floating ext","CODE","","p-float.htm#77" "FSQRT","fs: r1 -- r2","ANSI Floating ext","CODE","","p-float.htm#78" --- 996,1001 ---- "FNEGATE","fs: r1 -- r2","ANSI Floating","CODE","","p-float.htm#73" "1/f","fs: r1 -- r2","W32F Floating extra","COLON","","p-float.htm#74" ! "f2*","fs: r1 -- r2","W32F Floating extra","CODE","","p-float.htm#75" ! "f2/","fs: r1 -- r2","W32F Floating extra","CODE","","p-float.htm#76" "FABS","fs: r1 -- r2","ANSI Floating ext","CODE","","p-float.htm#77" "FSQRT","fs: r1 -- r2","ANSI Floating ext","CODE","","p-float.htm#78" Index: p-float.htm =================================================================== RCS file: /cvsroot/win32forth/win32forth/doc/p-float.htm,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** p-float.htm 7 Feb 2006 11:53:24 -0000 1.13 --- p-float.htm 8 Feb 2006 14:26:34 -0000 1.14 *************** *** 50,56 **** </p><pre><b><a name="4">code fpsw> ( -- n ) \ W32F Floating extra </a></b></pre><p>Get x87 FPU Status Word. ! </p><pre><b><a name="5">\- B/FLOAT 10 constant B/FLOAT ( -- n ) \ W32F Floating extra </a></b></pre><p>Number of bytes in a floating-point number. Note the default is 8 bytes. ! </p><pre><b><a name="6">B/FLOAT aligned cell / value cells/float </a></b></pre><p>Number of cells in a floating-point number. If the number of bytes is not a multiple of 4 this is rounded up. --- 50,56 ---- </p><pre><b><a name="4">code fpsw> ( -- n ) \ W32F Floating extra </a></b></pre><p>Get x87 FPU Status Word. ! </p><pre><b><a name="5"> 10 constant B/FLOAT ( -- n ) \ W32F Floating extra </a></b></pre><p>Number of bytes in a floating-point number. Note the default is 8 bytes. ! </p><pre><b><a name="6">value cells/float </a></b></pre><p>Number of cells in a floating-point number. If the number of bytes is not a multiple of 4 this is rounded up. *************** *** 129,195 **** </h3><pre><b><a name="31">code fpi ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 3.141596... on to the FP stack. ! </p><pre><b><a name="32">code f0.0 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus zero on to the FP stack. </p><pre><b><a name="33">code f1.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 1.0 on to the FP stack. ! </p><pre><b><a name="34">code fL2t ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of 10. ! </p><pre><b><a name="35">code fL2e ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of e. ! </p><pre><b><a name="36">code fLog2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 10 of 2. ! </p><pre><b><a name="37">code fLn2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of ln 2 (the natural logarithm). ! </p><pre><b><a name="38"> f0.0 fconstant finf ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus infinity. ! </p><pre><b><a name="39"> f1.0 fconstant f2.0 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 2.0. ! </p><pre><b><a name="40"> f0.0 fconstant f10.0 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 10.0. ! </p><pre><b><a name="41"> f1.0 fconstant f0.5 ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 0.5. ! </p><pre><b><a name="42"> f0.0 fconstant fbig ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push the largest non-infinite floating-point number. ! </p><pre><b><a name="43"> f0.0 fconstant feps ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push the smallest non-zero floating-point number. ! </p><pre><b><a name="44"> f1.0 fconstant fsmall ( FS: -- r ) \ W32F Floating extra </a></b></pre><p>Push the smallest non-denormalised floating-point number. </p><h3>Variables ! </h3><pre><b><a name="45"> fvariable a2**63 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing 2**63. ! </p><pre><b><a name="46"> fvariable sq2m1 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing sqrt(2) - 1. </p><pre><b><a name="47"> fvariable sq2/2m1 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing sqrt(2)/2 - 1. </p><h3>Rounding functions ! </h3><pre><b><a name="48">code FLOOR ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Round r1 to an integral value using the round toward negative infinity rule, giving r2. ! </p><pre><b><a name="49">code FCEIL ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Round r1 to an integral value using the round toward positive infinity rule, giving r2. ! </p><pre><b><a name="50">code FTRUNC ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Round r1 to an integral value using the round toward zero rule, giving r2. ! </p><pre><b><a name="51">code FROUND ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Round r1 to an integral value using the round to nearest rule, giving r2. </p><h3>Integer to float conversion ! </h3><pre><b><a name="52">code D>F ( d -- ; Fs: -- r ) \ ANSI Floating </a></b></pre><p>Convert double number to floating-point number. ! </p><pre><b><a name="53">code F>D ( -- d ; fs: r -- ) \ ANSI Floating </a></b></pre><p>Convert floating-point number to double number, by rounding towards zero. If the result would be too large to fit in a double number then <br /> -9223372036854775808 is returned. ! </p><pre><b><a name="54">code ZF>D ( -- d ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Convert floating-point number to double number, using the current rounding mode ! (rounding towards zero unless changed by the user). If the result would be too large to fit in a double number then <br /> -9223372036854775808 is returned. ! </p><pre><b><a name="55">: s>f ( n -- ; fs: -- r ) \ W32F Floating extra </a></b></pre><p>Convert the single number n to floating point number r. ! </p><pre><b><a name="56">: f>s ( -- n ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Convert the floating point number r to single number n. </p><pre><b><a name="57">code FS>DS ( -- dfloat fs: r -- ) \ W32F Floating extra </a></b></pre><p>Move floating point number bits to the data stack as a 64-bit float. This function is for passing floats to DLLs. ! </p><pre><b><a name="58">code SFS>DS ( -- float ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Push the top of the float stack onto the data stack as a 32-bit float. This function is for passing floats to DLLs. --- 129,195 ---- </h3><pre><b><a name="31">code fpi ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 3.141596... on to the FP stack. ! </p><pre><b><a name="32">code f0.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus zero on to the FP stack. </p><pre><b><a name="33">code f1.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value 1.0 on to the FP stack. ! </p><pre><b><a name="34">code fL2t ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of 10. ! </p><pre><b><a name="35">code fL2e ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 2 of e. ! </p><pre><b><a name="36">code fLog2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of log base 10 of 2. ! </p><pre><b><a name="37">code fLn2 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the value of ln 2 (the natural logarithm). ! </p><pre><b><a name="38"> fconstant finf ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push plus infinity. ! </p><pre><b><a name="39">2e0 fconstant f2.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 2.0. ! </p><pre><b><a name="40">10e0 fconstant f10.0 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 10.0. ! </p><pre><b><a name="41">5e-1 fconstant f0.5 ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push floating-point 0.5. ! </p><pre><b><a name="42"> f0.0 fconstant fbig ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the largest non-infinite floating-point number. ! </p><pre><b><a name="43"> f0.0 fconstant feps ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the smallest non-zero floating-point number. ! </p><pre><b><a name="44"> f1.0 fconstant fsmall ( fs: -- r ) \ W32F Floating extra </a></b></pre><p>Push the smallest non-denormalised floating-point number. </p><h3>Variables ! </h3><pre><b><a name="45"> fvariable a2**63 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing 2**63. ! </p><pre><b><a name="46"> fvariable sq2m1 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing sqrt(2) - 1. </p><pre><b><a name="47"> fvariable sq2/2m1 ( -- addr ) \ W32F Floating extra </a></b></pre><p>Return the address of a float containing sqrt(2)/2 - 1. </p><h3>Rounding functions ! </h3><pre><b><a name="48">code FLOOR ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Round r1 to an integral value using the round toward negative infinity rule, giving r2. ! </p><pre><b><a name="49">code FCEIL ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Round r1 to an integral value using the round toward positive infinity rule, giving r2. ! </p><pre><b><a name="50">code FTRUNC ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Round r1 to an integral value using the round toward zero rule, giving r2. ! </p><pre><b><a name="51">code FROUND ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Round r1 to an integral value using the round to nearest rule, giving r2. </p><h3>Integer to float conversion ! </h3><pre><b><a name="52">code D>F ( d -- ; Fs: -- r ) \ ANSI Floating </a></b></pre><p>Convert double number to floating-point number. ! </p><pre><b><a name="53">code F>D ( -- d ; fs: r -- ) \ ANSI Floating </a></b></pre><p>Convert floating-point number to double number, by rounding towards zero. If the result would be too large to fit in a double number then <br /> -9223372036854775808 is returned. ! </p><pre><b><a name="54">code ZF>D ( -- d ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Convert floating-point number to double number, using the current rounding mode ! (rounding towards nearest unless changed by the user). If the result would be too large to fit in a double number then <br /> -9223372036854775808 is returned. ! </p><pre><b><a name="55">: s>f ( n -- ; fs: -- r ) \ W32F Floating extra </a></b></pre><p>Convert the single number n to floating point number r. ! </p><pre><b><a name="56">: f>s ( -- n ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Convert the floating point number r to single number n. </p><pre><b><a name="57">code FS>DS ( -- dfloat fs: r -- ) \ W32F Floating extra </a></b></pre><p>Move floating point number bits to the data stack as a 64-bit float. This function is for passing floats to DLLs. ! </p><pre><b><a name="58">code SFS>DS ( -- float ; fs: r -- ) \ W32F Floating extra </a></b></pre><p>Push the top of the float stack onto the data stack as a 32-bit float. This function is for passing floats to DLLs. *************** *** 213,263 **** </a></b></pre><p>Return true if r1 is greater than or equal to r2. Returns true if either number is a NAN. ! </p><pre><b><a name="67">: FMAX ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Return r3 the maximum of r1 and r2. If r1 is a NAN then so is r3. If r2 is a NAN then r3=r1. ! </p><pre><b><a name="68">: FMIN ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Return r3 the minimum of r1 and r2. If r1 is a NAN then so is r3. If r2 is a NAN then r3=r1. </p><h3>Arithmetic operators ! </h3><pre><b><a name="69">code F+ ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Add r1 to r2. ! </p><pre><b><a name="70">code F- ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Subtract r2 from r1. ! </p><pre><b><a name="71">code F* ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Multiply r1 by r2. ! </p><pre><b><a name="72">code F/ ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Divide r1 by r2. ! </p><pre><b><a name="73">code FNEGATE ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Reverse the sign of r1. ! </p><pre><b><a name="74">: 1/f ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>r2 is the reciprocal of r1. ! </p><pre><b><a name="75">code f2/ ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Multiply by 2. ! </p><pre><b><a name="76">code f2* ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Divide by 2. ! </p><pre><b><a name="77">code FABS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the absolute value of r1. ! </p><pre><b><a name="78">code FSQRT ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the positive square root of r1. </p><h3>Trigonometric functions ! </h3><pre><b><a name="79">: FSIN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the sine of r1 in radians. ! </p><pre><b><a name="80">: FCOS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the cosine of r1 in radians. ! </p><pre><b><a name="81">: FSINCOS ( fs: r1 -- r2 r3 ) \ ANSI Floating ext </a></b></pre><p>r2 is the sine and r3 the cosine of r1 in radians. This function is more efficient than calling FSIN and FCOS separately. ! </p><pre><b><a name="82">: FTAN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the tangent of r1 in radians. </p><h3>Inverse Trigonometric functions ! </h3><pre><b><a name="83">code FASIN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose sine is r1. The result for |x| =< 1 is between ±pi/2. The result for |x| > 1 is NAN. ! </p><pre><b><a name="84">code FACOS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose cosine is r1. The result for |x| =< 1 is between 0 and pi. The result for |x| > 1 is NAN ! </p><pre><b><a name="85">code FATAN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose tangent is r1. The result is between ±pi/2. ! </p><pre><b><a name="86">code FATAN2 ( fs: r1 r2 -- r3 ) \ ANSI Floating ext </a></b></pre><p>r3 is the radian angle whose tangent is r1/r2. The result is between ±pi with the same sign as r2. If r1 and r2 are both zero then r3 is ±zero. --- 213,263 ---- </a></b></pre><p>Return true if r1 is greater than or equal to r2. Returns true if either number is a NAN. ! </p><pre><b><a name="67">: FMAX ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Return r3 the maximum of r1 and r2. If r1 is a NAN then so is r3. If r2 is a NAN then r3=r1. ! </p><pre><b><a name="68">: FMIN ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Return r3 the minimum of r1 and r2. If r1 is a NAN then so is r3. If r2 is a NAN then r3=r1. </p><h3>Arithmetic operators ! </h3><pre><b><a name="69">code F+ ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Add r1 to r2. ! </p><pre><b><a name="70">code F- ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Subtract r2 from r1. ! </p><pre><b><a name="71">code F* ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Multiply r1 by r2. ! </p><pre><b><a name="72">code F/ ( fs: r1 r2 -- r3 ) \ ANSI Floating </a></b></pre><p>Divide r1 by r2. ! </p><pre><b><a name="73">code FNEGATE ( fs: r1 -- r2 ) \ ANSI Floating </a></b></pre><p>Reverse the sign of r1. ! </p><pre><b><a name="74">: 1/f ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>r2 is the reciprocal of r1. ! </p><pre><b><a name="75">code f2* ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Multiply by 2. ! </p><pre><b><a name="76">code f2/ ( fs: r1 -- r2 ) \ W32F Floating extra </a></b></pre><p>Divide by 2. ! </p><pre><b><a name="77">code FABS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the absolute value of r1. ! </p><pre><b><a name="78">code FSQRT ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the positive square root of r1. </p><h3>Trigonometric functions ! </h3><pre><b><a name="79">: FSIN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the sine of r1 in radians. ! </p><pre><b><a name="80">: FCOS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the cosine of r1 in radians. ! </p><pre><b><a name="81">: FSINCOS ( fs: r1 -- r2 r3 ) \ ANSI Floating ext </a></b></pre><p>r2 is the sine and r3 the cosine of r1 in radians. This function is more efficient than calling FSIN and FCOS separately. ! </p><pre><b><a name="82">: FTAN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the tangent of r1 in radians. </p><h3>Inverse Trigonometric functions ! </h3><pre><b><a name="83">code FASIN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose sine is r1. The result for |x| =< 1 is between ±pi/2. The result for |x| > 1 is NAN. ! </p><pre><b><a name="84">code FACOS ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose cosine is r1. The result for |x| =< 1 is between 0 and pi. The result for |x| > 1 is NAN ! </p><pre><b><a name="85">code FATAN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the radian angle whose tangent is r1. The result is between ±pi/2. ! </p><pre><b><a name="86">code FATAN2 ( fs: r1 r2 -- r3 ) \ ANSI Floating ext </a></b></pre><p>r3 is the radian angle whose tangent is r1/r2. The result is between ±pi with the same sign as r2. If r1 and r2 are both zero then r3 is ±zero. *************** *** 265,282 **** polar coordinates. </p><h3>Logarithmic functions ! </h3><pre><b><a name="87">code FLN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the natural logarithm of r1. If r1 is ±0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than zero then r2 is a NAN. ! </p><pre><b><a name="88">code FLNP1 ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the natural logarithm of the quantity r1 plus one. If r1 is -1.0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than -1.0 then r2 is a NAN. ! </p><pre><b><a name="89">code FLOG ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the logarithm to base 10 of r1. If r1 is ±0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than zero then r2 is a NAN. </p><h3>Exponential functions ! </h3><pre><b><a name="90">code FEXP ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise e to the power r1, giving r2. ! </p><pre><b><a name="91">code FEXPM1 ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise e to the power r1 and subtract one, giving r2. </p><p>This function allows accurate computation when its arguments are close to zero, and --- 265,282 ---- polar coordinates. </p><h3>Logarithmic functions ! </h3><pre><b><a name="87">code FLN ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the natural logarithm of r1. If r1 is ±0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than zero then r2 is a NAN. ! </p><pre><b><a name="88">code FLNP1 ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the natural logarithm of the quantity r1 plus one. If r1 is -1.0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than -1.0 then r2 is a NAN. ! </p><pre><b><a name="89">code FLOG ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the logarithm to base 10 of r1. If r1 is ±0 then r2 is -infinity. If r1 is infinity then r2 is infinity. If r1 is less than zero then r2 is a NAN. </p><h3>Exponential functions ! </h3><pre><b><a name="90">code FEXP ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise e to the power r1, giving r2. ! </p><pre><b><a name="91">code FEXPM1 ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise e to the power r1 and subtract one, giving r2. </p><p>This function allows accurate computation when its arguments are close to zero, and *************** *** 284,304 **** such as cosh(x) can be efficiently and accurately implemented by using FEXPM1; accuracy is lost in this function for small values of x if the word FEXP is used. ! </p><pre><b><a name="92">: f** ( fs: r1 r2 -- r3 ) \ ANSI Floating ext </a></b></pre><p>Raise r1 to the power r2, giving the product r3. ! </p><pre><b><a name="93">: FALOG ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise ten to the power r1, giving r2. </p><h3>Hyperbolic functions ! </h3><pre><b><a name="94">: FSINH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic sine of r1. ! </p><pre><b><a name="95">: FCOSH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic cosine of r1. ! </p><pre><b><a name="96">: FTANH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic tangent of r1, |r2| <= 1. </p><h3>Inverse hyperbolic functions ! </h3><pre><b><a name="97">code FASINH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic sine is r1. ! </p><pre><b><a name="98">code FACOSH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic cosine is r1. If r1 < 1.0 then r2 is a NAN. ! </p><pre><b><a name="99">: FATANH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic tangent is r1. IF |r1| > 1.0 then r2 is a NAN. </p><pre><b><a name="100">: F~ ( -- flag ; fs: r1 r2 r3 -- ) \ ANSI Floating ext --- 284,304 ---- such as cosh(x) can be efficiently and accurately implemented by using FEXPM1; accuracy is lost in this function for small values of x if the word FEXP is used. ! </p><pre><b><a name="92">: f** ( fs: r1 r2 -- r3 ) \ ANSI Floating ext </a></b></pre><p>Raise r1 to the power r2, giving the product r3. ! </p><pre><b><a name="93">: FALOG ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>Raise ten to the power r1, giving r2. </p><h3>Hyperbolic functions ! </h3><pre><b><a name="94">: FSINH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic sine of r1. ! </p><pre><b><a name="95">: FCOSH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic cosine of r1. ! </p><pre><b><a name="96">: FTANH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the hyperbolic tangent of r1, |r2| <= 1. </p><h3>Inverse hyperbolic functions ! </h3><pre><b><a name="97">code FASINH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic sine is r1. ! </p><pre><b><a name="98">code FACOSH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic cosine is r1. If r1 < 1.0 then r2 is a NAN. ! </p><pre><b><a name="99">: FATANH ( fs: r1 -- r2 ) \ ANSI Floating ext </a></b></pre><p>r2 is the number whose hyperbolic tangent is r1. IF |r1| > 1.0 then r2 is a NAN. </p><pre><b><a name="100">: F~ ( -- flag ; fs: r1 r2 r3 -- ) \ ANSI Floating ext |