Вычислить (ln(x)^3 + (sin(3x)/(sin(x)+1))

Тема в разделе "WASM.ASSEMBLER", создана пользователем EvilsInterrupt, 10 май 2006.

  1. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Попросили решить на асме сабж.

    Раньше с сопроцом не работал, Возникло много вопросов полез в Юрова, понял что потребуются: fld , fsin ,

    но как вычислить ln(x)^3?

    Где "^" - знак степени, к примеру 2^3 = 8
     
  2. r90

    r90 New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2005
    Сообщения:
    898
    f2xm1, x^y = 2^(log_2(x)*y)
     
  3. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    r90

    Не совсем понял твою мысль. В степень то я уж как нить смогу, но ln(x) вот что для меня представляет трудность
     
  4. Spiteful

    Spiteful New Member

    Публикаций:
    0
    Регистрация:
    24 янв 2004
    Сообщения:
    33
    FLD x

    FLDLN2

    FXCH ST(1)

    FYL2X
     
  5. bers

    bers New Member

    Публикаций:
    0
    Регистрация:
    16 сен 2005
    Сообщения:
    139
    Адрес:
    Russia
    Вот FYL2X - Это то что тебе нужно.

    Сорри, опоздал ))
     
  6. Sergey_R

    Sergey_R Member

    Публикаций:
    0
    Регистрация:
    9 янв 2005
    Сообщения:
    138
    Только не FLDLN2 (загрузка log_e(2)), а FLDL2E - загрузка log_2(e).



    log_b(x) = (1/log_2(b)) ∗ log_2(x)

    т.е. для натурального логарифма:

    ln(x) = (1/log_2(e)) ∗ log_2(x)
     
  7. bers

    bers New Member

    Публикаций:
    0
    Регистрация:
    16 сен 2005
    Сообщения:
    139
    Адрес:
    Russia
    А вроде все правильно Spiteful написал
     
  8. Sergey_R

    Sergey_R Member

    Публикаций:
    0
    Регистрация:
    9 янв 2005
    Сообщения:
    138
    bers



    Нет, неправильно.

    Зачем, например, "FXCH ST(1)"? Сомножители в FYL2X поменять?



    Должно быть нечто вроде такого:
    Код (Text):
    1.   FLD1
    2.   FLDL2E
    3.   FDIVP ST(1), ST(0)  ; ST(0) <- 1/log_2(e)
    4.   FLD x
    5.   FYL2X               ; ST(0) <- ln(x)
     
  9. Spiteful

    Spiteful New Member

    Публикаций:
    0
    Регистрация:
    24 янв 2004
    Сообщения:
    33
    FLDLN2

    FLD x

    FYL2X

    так лучше для восприятия ? :)

    ln(x) = ln(a)*log_a(x)
     
  10. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Варю кашу! :)
     
  11. Sergey_R

    Sergey_R Member

    Публикаций:
    0
    Регистрация:
    9 янв 2005
    Сообщения:
    138
    Spiteful



    Ты прав! Извини мою поспешность...