Илья Тарасов - Руководство по программированию на Форте
Название: | Руководство по программированию на Форте | |
Автор: | Илья Тарасов | |
Жанр: | Руководства и инструкции, Самиздат, сетевая литература, Литература ХXI века (эпоха Глобализации экономики), Программирование: прочее, Forth | |
Изадано в серии: | неизвестно | |
Издательство: | Интернет-издательство «Stribog» | |
Год издания: | 2022 | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Руководство по программированию на Форте"
Краткое введение в современный Форт.
Читаем онлайн "Руководство по программированию на Форте". [Страница - 26]
Сложение и вычитание чисел с плавающей точкой имеет некоторые отличия от аналогичных операций над числами с фиксированной точкой. Это связано с тем, что перед сложением/вычитанием необходимо совместить положение десятичной точки в обоих операндах. Такая операция называется денормализацией. Мантисса числа с меньшим порядком последовательно сдвигается вправо с одновременным увеличением порядка. При равенстве порядков можно выполнять операцию сложения или вычитания над мантиссами. При этом порядок обоих операндов равен порядку результата.
0,11011011·21+0,10010110·23
Поскольку первое число имеет меньший порядок, его необходимо денормализовать. Эквивалентной записью для него будет 0,00110110·23
Теперь можно выполнить сложение мантисс: 0,001101102+0,100101102=0,110011002
Порядок результата равен 3.
Таким образом, результатом сложения является 0,110011002·23
Примечание: после выполнения операции сложения или вычитания над мантиссами может потребоваться дополнительная нормализация мантиссы результата (в случае переполнения разрядной сетки или обнуления старших разрядов).
Из описания способа сложения/вычитания чисел с плавающей точкой видно, что его недостатком является потеря точности в случае существенного различия порядков. Например, попытка сложить числа с 16 разрядами мантиссы не приведет к видимому изменению, если порядки различаются более чем на 16. В этом случае операция нормализации вызовет обнуление одной из мантисс, и результатом сложения будет просто число с наибольшим порядком.
Операции умножения и деления чисел не требуют приведения порядков. Умножение производится по следующему правилу: перемножение мантисс операндов дает мантиссу результата, а порядок результата равен сумме порядков операндов. После получения мантиссы результата может потребоваться ее нормализация.
По схожим правилам производится и деление. Мантисса результата равна частному от деления мантисс операндов. Порядок результата равен разности порядка делителя и порядка делимого. Здесь также может потребоваться нормализация мантиссы.
Операции нормализации и денормализации могут представлять некоторые сложности при программной реализации. Обычно во избежание потери точности их проводят в специальном буфере, имеющем большую разрядность, чем мантисса в исходном представлении числа (подобный подход используется в сопроцессорах Intel, использующих 80-битный внутренний формат представления чисел и 32- и 64- битные форматы для чисел одинарной и двойной точности соответственно).
Трансцендентные функции
Особый интерес представляет вычисление трансцендентных функций. На практике необходимость их вычисления служит одной из главных причин использования вещественных чисел.К трансцендентным относятся функции, которые не могут быть выражены с помощью четырех арифметических действий. Существуют различные классы трансцендентных функций: степенные, показательные, тригонометрические, гиперболические, а также обратные к этим классам. Несмотря на существующее многообразие, все эти функции могут быть получены из небольшого набора базовых трансцендентных функций.
Например, если существует способ вычисления функции , то можно использовать известные из тригонометрии соотношения:
Книги схожие с «Руководство по программированию на Форте» по жанру, серии, автору или названию:
Михаил Иосифович Кондратович - Создание электронных книг в формате FictionBook 2.1: практическое руководство (beta 4) Жанр: Программы |
Уильям Зинсер - Как писать хорошо. Классическое руководство по созданию нехудожественных текстов Жанр: Руководства и инструкции Год издания: 2013 |
Наталья Юрьевна Добровольская - Анализируй этих! Полное руководство по подбору персонала Жанр: Корпоративная культура Год издания: 2017 Серия: Побеждай в бизнесе! Менеджмент по-Суворовски |