ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
28 ноября
426291 Топик полностью
zeleny (21.07.2013 23:25, просмотров: 74) ответил zeleny на Кто-нибудь реализовывал быстрый кв.корень для uint16_t (можно приблизительный) ? Может есть табличные методы (доступно до 400 байт Flash).
!как-то так (на основе микрочиповского аппнота): uint8_t sqrt16(uint16_t n) { uint8_t guess = 0x00; uint8_t bit = 0x80; do { uint8_t guess1 = guess | bit; uint16_t guess2 = (uint16_t)guess1 * (uint16_t)guess1; if (n > guess2) guess = guess1; bit >>= 1; } while (bit); return guess; }