[an error occurred while processing this directive]
|
Чтобы было проще считать, положим, что все числа, которые мне надо возвести в квадрат, а затем просуммировать одинаковые (ни Ваш ни мой ДСП знать об этом не будут, просто это для нас, чтобы рассчеты упростить) и равны в int16=1 (в Шарке это будет float=2^-15).
Теперь моя (и Ваша) задача состоит в том, чтобы серию из огромного количества таких чисел возвести в квадрат и просуммировать. Делаем.
(2^-15)^2 = 2^-30. В представлении флоатинг-пойнта это будет выглядеть так: мантисса равна 1, порядок равен -30.
Заметим тут: в мантиссе все в порядке. Начинаем суммировать большое число раз, например 2^40. У меня ничего страшного не произойдет. Будет в точности результат равный 2^10 (мантисса равна 1, а порядок 10). А вот у Вас проблемы будут. Потом разделю я этот результат на число отсчетов, т.е. на 2^40 и получу 2^-30. Дальше извлеку корень квадратный и получу результат: 2^-15.
А теперь Вы сделайте то же, что и я.