Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Вниз

как работает корень квадратный?   Найти похожие ветки 

 
Vlad Oshin ©   (2005-07-29 14:40) [0]

как реализаван fsqrt в сопроцессоре?
а то есть мнение...


 
ocean   (2005-07-29 14:44) [1]

полагаю, приближает рядом Тэйлора


 
Jeer ©   (2005-07-29 15:03) [2]

Не факт.


 
Плохиш ©   (2005-07-29 15:22) [3]

Да ладно вам, обычный TStringList в формате <число>=<корень>.


 
wal ©   (2005-07-29 15:23) [4]

Возможно пополамным делением, возможно суммированием ряда, возможно там таблицы типа брадиса есть. Лично мне первый вариант нравится. А какая разница? Работает и не трогай :)

С уважением.


 
jack128 ©   (2005-07-29 15:28) [5]

wal ©   (29.07.05 15:23) [4]
Лично мне первый вариант нравится

скорее все таки каким то рядом... наврядли тейлора, наверника есть какие нить другие, которые быстрее сходятся...


 
Anatoly Podgoretsky ©   (2005-07-29 15:36) [6]

Давно читал, разложением рядов, каким именно не помню.


 
DiamondShark ©   (2005-07-29 15:38) [7]

Таблично.


 
oldman ©   (2005-07-29 15:38) [8]


>
> Vlad Oshin ©   (29.07.05 14:40)  
> как реализаван fsqrt в сопроцессоре?
> а то есть мнение...


хм...
Реши сам N способами. Заодно выяснишь, как реализован в сопроцессоре...
Хотя, если во всех N методах результат до 32 знака совпадет - какая разница?


 
jack128 ©   (2005-07-29 15:39) [9]

oldman ©   (29.07.05 15:38) [8]
Хотя, если во всех N методах результат до 32 знака совпадет - какая разница?

разница в скорости


 
Vlad Oshin ©   (2005-07-29 16:03) [10]


> oldman ©   (29.07.05 15:38) [8]

решил
есть замечательная ф-ла? рассмотренная недавно, по методу г.Перельмана
и последствия из нее

labl1:
c:=b+(a-b*b)/2*b
if abs(и-c)>0.00001 then goto labl1;

такое дает тики на (52000-50000) по сравнению с обычным sqrt
правда если бать примерное значение и
т.е. b*b~a
например для а<10
хватит b=2.5

или a<100 >10
b=8

или 7, 9, 10, 6
сходимость очень быстрая

тиков очень мало, 20%
где то
единственная пробдлема - чему равно Б?
в принципице, оно может быт любым, или чем точнее Б к sqrt от А тем быстрее сходимость


 
Vlad Oshin ©   (2005-07-29 16:07) [11]


> Anatoly Podgoretsky ©   (29.07.05 15:36) [6]
> Давно читал, разложением рядов, каким именно не помню.

чаще всего г.Ньютон фигурирует


 
Jeer ©   (2005-07-29 16:11) [12]

Для фиксированной сетки очень эффективны были методы "цифра за цифрой" (иные названия: алгоритм Волдера, CORDIC)

Кстати, у меня ощущение, что в сопроцессоре функция одновременного вычисления sin и cos (  SinCos() в Дельфи ) именно так и выполнена


 
Anatoly Podgoretsky ©   (2005-07-29 16:11) [13]

Главное, что раскладывают, пока относительно квадратным не станет.


 
Vlad Oshin ©   (2005-07-30 02:58) [14]


> Jeer ©   (29.07.05 16:11) [12]
> Для фиксированной сетки очень эффективны были методы "цифра
> за цифрой" (иные названия: алгоритм Волдера, CORDIC)
>
> Кстати, у меня ощущение, что в сопроцессоре функция одновременного
> вычисления sin и cos (  SinCos() в Дельфи ) именно так и
> выполнена

не понял ничего
sin, как и fsqrt объявлен, но не описан
т.е. это работает аппаратно? как бы
получается так
и, получается, что можно усовершенствовать
?


> DiamondShark ©   (29.07.05 15:38) [7]
> Таблично.

точно?


 
Vlad Oshin ©   (2005-07-30 03:17) [15]

был у нас препод
кстати, это он с БГ жил вместе на одной кв., в Ленинграде
вот он говрил: если Вы вдруг чего0то изобрели - приходите ко мне, я Вам 2 поставлю, и делов то.

:)
можть к нему пора сходить :)


 
Юрий Зотов ©   (2005-07-30 06:07) [16]

Все вышесказанное - фигня.

Правильный ответ такой - бесшумно.


 
vidiv ©   (2005-07-30 07:40) [17]


> Юрий Зотов ©   (30.07.05 06:07) [16]

Неправда, у меня проц начинает шуметь когда его напрягаешь! наверняка если напрягать его этой командой - он тоже шуметь будет!


 
uw ©   (2005-07-30 08:36) [18]

Ньютон сходится очень быстро, но все-таки требует много делений и сложений. Тем не менее, библиотеки С для микропроцессоров используют, как правило, именно Ньютона. Я их переписывал, используя школьный алгоритм извлечения корня: разбиваем число на группы по две цифры, начиная справа, для старшей группы подбираем наибольшее число, квадрат которого не превосходит значения этой групыы, и т.д. В двоичной арифметике этот алгоритм чрезвычайно эффективен, и извлечение корня оказывается только в пару раз медленнее, чем деление. Думаю, в сопроцессорах так и делается.


 
SergP ©   (2005-07-30 09:08) [19]


>  [17] vidiv ©   (30.07.05 07:40)
>
> > Юрий Зотов ©   (30.07.05 06:07) [16]
>
> Неправда, у меня проц начинает шуметь когда его напрягаешь!
>


Еще бы... Если там такая толпа битов бегает. :-))



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.08.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.049 c
1-1122617343
Katya21
2005-07-29 10:09
2005.08.21
Как открыть файл


4-1117836874
Вадим Станкевич
2005-06-04 02:14
2005.08.21
Как отловить открытие/закрытие дверцы CD-ROM?


6-1115489058
Ландграф Павел
2005-05-07 22:04
2005.08.21
получить статистику текущего соединения с интернет


14-1122403270
Е-клмн
2005-07-26 22:41
2005.08.21
Ну, вот с верой вроде бы разобрались…


1-1122618209
td
2005-07-29 10:23
2005.08.21
кодировка в Database Desktop





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский