Информационный сервер для программистов: Исходники со всего света. Паскальные исходники со всего света
  Powered by Поисковый сервер Яndex: Найдется ВСЁ!
На Главную Исходники Форум Информер Страны мира
   ЧАВО - Частые Вопросы и Ответы    >>    arcsin
   
 
 MAT. Как вычислить ArcSin   Evgeny Sharandin 28.11.1997

Вычисление ArcSin через ArcTan и с помощью сопроцессора FPU


 
 

Reply-To: shar@nep.cplire.ru Hello, Vladimir! Пон Hоя 24 1997 23:34, Vladimir Vikulin написал All: VV> Hе подскажет ли кто-нибудь алгоритм вычисления ArcSinуса? Или VV> готовую функцию на Паскале? Вот так: Arcsin(x):=Arctan(x/Sqrt(1-x*x)); Или вот так: function ArcSin( x:extended):extended; assembler; var sw:word; asm fld [x] xor al,al mov ah,byte ptr [x+9] shl ah,1 jnc @plus fchs inc al @plus: { fld1} db 0CDh, 35h, 0e8h fld st(1) fmul st,st(2) fsub fsqrt fcom st(1) fstsw [sw] fwait mov ah,byte ptr [sw+1] sahf jnb @l1 fxch fpatan { fld1} db 0CDh, 35h, 0e8h fchs { fldPi} db 0CDh, 35h, 0eBh fscale fstp St(1) fsubrp st(1),st jmp @2 @l1: fpatan @2: shr al,1 jnc @end fchs @end: end; С уважением, Евгений --- GoldED 2.42.G0214+ * Origin: LID, Evgeny Sharandin (2:5020/755.12)