ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
5 мая
1327099 Топик полностью
SciFi (04.07.2023 15:16, просмотров: 201) ответил Sl на В каком документе описаны встроенные в IAR математические функции? Нужен целочисленный квадратный корень. sqrt для float. А у меня STM32F107 и использовать float совсем не хочется.
Есть простой итерационный алгоритм. Можно немного подкручивать начальную точку и число итераций, разменивая скорость на точность: 
int
sqrt_int(int x)
{
    unsigned int ret = 44; // starting point is relatively unimportant
    for (int i = 0; i < 6; i++)
    {
        ret = (ret + x / ret) / 2;
    }
    // almost exact for x ~ 1 .. 500000
    return ret;
}
ส็็็็็็็็็็็็็็็็็็็็็็็็็༼ ຈل͜ຈ༽ส้้้้้้้้้้้้้้้้้้้้้้้