Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Igor Glukharev                       2:5035/26.31   07 Sep 2002  14:57:56
 To : Alexander Golovlev
 Subject : Re: деление на 6
 -------------------------------------------------------------------------------- 
 
 06 Sep 02  23:28:37 Alexander Golovlev --> Pertzel Family
 
 AG> ATmega103 нет деления, нет умножения. Вычисления не должны занимать 
 AG> более 35 операций (операции типа: сдвиг, сложение, вычитание).
 PF>  это одно, к вычислениям на "Рейнметалле" с моторчиком,
 AG> это другое, а для x86 я бы предложил
 AG> программно, сдвигами и сложениями реализовать
 AG> умножение на 1/6 .
 AG> 
 AG> 
 AG> Хорошо, а как умножить на 1/6
 
 Если не очень важна точность, то можешь попытаться приблизить 1/6 
 другой более удобной дробью для реализации в заданной системе команд. 
 Hапример: 1/6=11/66=~11/64. Тут я думаю все ясно как поделить на 64.
 Учитывая, что у тебя 1 байт, можно сделать немного иначе:
 1/6=(1*43)/(6*43)=43/258=~43/256
 Т.е. просто берем один байт и умножаем его на 43, получаем 2-байтовое
 число, от которого просто берем старший байт. 43(10)=101011(2) - 
 т.е. 3 сдвига + несколько операций сложения и операций перемещения в памяти.
 Максимальная погрешность для байта: |1/6-43/256|*256=0.33333...
 Т.е. если тебе важна целая часть и ты собираешься делить на 6 только 
 1-байтовые числа, то результат _всегда_ будет точным.
 
 P.S. Hа крайний случай можно попробовать таблицей 
 (если скорость _сильно_ критична).
 Bye!    Igor
 --- F.I.P.S./32 v1.0r W95/NT [M]
  * Origin:  (2:5035/26.31)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 деление на 6   Alexander Golovlev   06 Sep 2002 10:58:25 
 Re: деление на 6   Pertzel Family   06 Sep 2002 15:22:39 
 Re: деление на 6   Max Snegirev   06 Sep 2002 16:59:34 
 Re: деление на 6   Alexander Golovlev   06 Sep 2002 23:28:37 
 Re: деление на 6   Pertzel Family   07 Sep 2002 12:47:27 
 Re: деление на 6   Alexander Golovlev   07 Sep 2002 15:37:48 
 Re: деление на 6   Alexander Golovlev   09 Sep 2002 20:43:25 
 Re: деление на 6   Igor Glukharev   07 Sep 2002 14:57:56 
 деление на 6   Kirill Frolov   07 Sep 2002 17:49:48 
 Re: деление на 6   Michael Ryazanov   08 Sep 2002 00:16:00 
 Re: деление на 6   Alexander Golovlev   10 Sep 2002 00:33:04 
Архивное /ru.algorithms/33043d79dbb4.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional