Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/arch/m68k/fpsp040/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  sasin.S   Sprache: Sparc

 
|
| sasin.sa 3.3 12/19/90
|
| Description: The entry point sAsin computes the inverse sine of
|  an input argument; sAsind does the same except for denormalized
|  input.
|
| Input: Double-extended number X in location pointed to
|  by address register a0.
|
| Output: The value arcsin(X) returned in floating-point register Fp0.
|
| Accuracy and Monotonicity: The returned result is within 3 ulps in
|  64 significant bit, i.e. within 0.5001 ulp to 53 bits if the
|  result is subsequently rounded to double precision. The
|  result is provably monotonic in double precision.
|
| Speed: The program sASIN takes approximately 310 cycles.
|
| Algorithm:
|
| ASIN
| 1. If |X| >= 1, go to 3.
|
| 2. (|X| < 1) Calculate asin(X) by
|  z := sqrt( [1-X][1+X] )
|  asin(X) = atan( x / z ).
|  Exit.
|
| 3. If |X| > 1, go to 5.
|
| 4. (|X| = 1) sgn := sign(X), return asin(X) := sgn * Pi/2. Exit.
|
| 5. (|X| |
|  Exit.
|

|  Copyright (C) Motorola, Inc. 1990
|   All Rights Reserved
|
|       For details on the license for this file, please see the
|       file, README, in this same directory.

|SASIN idnt 2,1 | Motorola 040 Floating Point Software Package

 |section 8

PIBY2: .long 0x3FFF0000,0xC90FDAA2,0x2168C235,0x00000000

 |xref t_operr
 |xref t_frcinx
 |xref t_extdnrm
 |xref satan

 .global sasind
sasind:
|--ASIN(X) = X FOR |sasin.sa 3.3 12/19/0

 bra  t_extdnrm

 .global sasin
sasin:
 fmovex  (%java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 1

 movel  (%a0),   := sqrt 1]1X]java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
 movew  4%),%
 0,%0
 mpil x3FFF8000d0.  ),.9java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
  java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14

|section java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
-ASIN) (X/ ( (-)1+X )

  0,%
 java.lang.StringIndexOutOfBoundsException: Range [1, 0) out of bounds for length 0
  %p2-fp2-(%)
f  #x3F800000%fp2
 faddx  %fp0,%fp2  | ...1+X
  0,%
    asinbig
   fp1 ...SQRT([1-X][1+X])
 fdivx  %fp1,%fp0  | ../SQRT([1-X][1+])
|-ASIN()=ATAN   ( 1X(+)))
 bsr  satan
 bra  t_frcinx

asinbig:
 fabsx  %fp0  | ...|X|
 fcmps  #0x3F800000java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
 java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 41

|--|X| = 1, ASIN(X) = +- PI/2.

 fmovex  PIBY2
   %)d0
  #x80000000,d0 ..  OFX
o  0,%  .+1 SGL
 andil#x80000000%d0 .SIGN  
 ,FPCR d0,-%)
 fmuls  (%sp)+,%fp0
 bra  t_frcinx

 |end

Messung V0.5
C=98 H=94 G=95

¤ Dauer der Verarbeitung: 0.6 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.