Реклама:

1. Преобразуйте следующие числа в формат стандарта IEEE с одинарной точностью. Результаты представьте в восьми шестнадцатеричных разрядах.

1) 9;

2) 5/32;

3) -5/32;

4) 6,125.

2. Преобразуйте следующие числа с плавающей точкой одинарной точности из шестнадцатеричной в десятичную систему счисления:

1) 42Е28000Н;

2) 3F880000H;

3) 00800000Н;

4) C7F00000H.

3. Числа с плавающей точкой в формате одинарной точности в IBM/370 состоят из 7-разрядной смещенной экспоненты (смещение равно 64), 24-разрядной мантиссы и знакового бита. Двоичная точка находится слева от мантиссы. Основание степени - 16. Порядок полей - знаковый бит, экспонента, мантисса. Выразите число 7/64 в виде нормализованного шестнадцатеричного числа в этой системе.

4. Следующие двоичные числа с плавающей точкой состоят из знакового бита, смещенной экспоненты (смещение равно 64) с основанием 2 и 16-разрядной мантиссы. Нормализуйте их:

1) 0 1000000 0001010100000001;

2) 0 0111111 0000001111111111;

3) 0 1000011 1000000000000000.

5. Чтобы сложить два числа с плавающей точкой, нужно уровнять экспоненты (сдвинув мантиссу). Затем можно сложить мантиссы и нормализовать результат, если в этом есть необходимость. Сложите числа одинарной точности 3EE00000H и 3D800000H и выразите нормализованный результат в шестнадцатеричной системе счисления.

6. Компьютерная компания решила выпустить машину, поддерживающую 16-разрядные числа с плавающей точкой. В модели 0.001 формат состоит из знакового бита, 7-разрядной смещенной экспоненты (смещение равно 64) и 8-разрядной мантиссы. В модели 0.002 формат состоит из знакового бита, 5-разрядной смещенной экспоненты (смещение равно 16) и 10-разрядной мантиссы. В обеих моделях основание степени равно 2. Каково самое маленькое и самое большое положительное нормализованное число в этих моделях? Сколько десятичных разрядов точности содержится в каждой модели? А вы купили бы какую-нибудь из этих двух моделей?

7. Существует одна ситуация, при которой операция над двумя числами с плавающей точкой может вызвать радикальное сокращение количества значимых битов в результате. Что это за ситуация?

8. Некоторые микросхемы для обработки команд с плавающей точкой имеют встроенную команду извлечения квадратного корня. Возможно применение итерационного алгоритма (например, метода Ньютона-Рафсона). Итерационные алгоритмы дают последовательные приближения решения. Как можно быстро получить приближенный квадратный корень от числа с плавающей точкой?

9. Напишите процедуру сложения двух чисел одинарной точности с плавающей точкой. Каждое число представлено 32-элементным логическим массивом.

10. Напишите процедуру сложения двух чисел с плавающей точкой одинарной точности, в которых для экспоненты используется основание системы счисления 16, а для мантиссы - основание системы счисления 2, кроме того, числа не содержат неявного бита 1 слева от двоичной точки. В нормализованном числе крайние левые 4 бита мантиссы могут быть равны 0001, 0010, 1111, но не 0000. Число нормализуется путем сдвига мантиссы влево на 4 бита и прибавления 1 к экспоненте.

Стандарт IEEE 754 || Оглавление || Приложение В. Программирование на языке ассемблера