|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Alexander Golovlev 2:5020/400 10 Sep 2002 00:33:04 To : Michael Ryazanov Subject : Re: деление на 6 -------------------------------------------------------------------------------- Дброе время суток, Michael! Вы писали to Alexander Golovlev не далее, как Sat, 07 Sep 2002 23:16:00 +0400: MR> 06.09 10:58 Alexander Golovlev -> All AG>> Поджскажите пожалуйста алгоритм деления беззнакового байта на число 6. AG>> mod + div AG>> который был бы оптимален по скорости, а не по размеру кода. MR> ; bl -- исходный байт MR> xor bh,bh MR> mov ax,divmod6[bx] MR> ; ah -- частное MR> ; al -- остаток MR> divmod6 label word MR> n=0 MR> rept 256 MR> db n mod 6, n / 6 MR> n=n+1 MR> endm MR> Устроит? :-) Мне тут подсказали способ: Делимое*171 сдвинуть старшую часть результата вправо на 2 = ответ Hу а остаток : умножил на 6 то что получилось и вычел из делимого, умножать легче чем делить :) СУВ Alexander Golovlev. MailTo: alex-gol1@mtu-net.ru --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/6577f9de53a2.html, оценка из 5, голосов 10
|