AU08 (24.03.2012 04:11 - 04:20, просмотров: 86) ответил whale на Как заменить деление умножением ?
Ещё есть вариант методом последовательного вычитания. На C ЙяР AVR тактов в 100-120 вписаться можно легко. Сдвигаем делитель на 4 бита (long int от 32'000 до 480'000)
Получаем число бит результата.
delimoe = long int 50'000
if (delimoe-delitel)>0 {delimoe-=delitel; set_bit7};
delitel<<; // поделить делитель на 2 сдвигом вправо
// ------------------------------------------------------- Старший бит
if (delimoe-delitel)>0 {delimoe-=delitel; set_bit6};
delitel<<; // поделить делитель на 2 сдвигом вправо
// ------------------------------------------------------- Следующий бит
// и так все 8 бит результата
Что такое асимметричный ответ?
Это когда о тебе негативно отзываются в комментарии, а ты об авторе этого комментария пишешь хорошо и по-доброму: в некрологе!