KursLek110_2 (Лекция), страница 3
Описание файла
Файл "KursLek110_2" внутри архива находится в папке "Лекция". PDF-файл из архива "Лекция", который расположен в категории "". Всё это находится в предмете "основы теории вычислительных систем" из 6 семестр, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст 3 страницы из PDF
число представляетсякак = × ̅ ,где - масштаб числа , а ̅ - число, которое может быть представлена в форме сфиксированной запятой с конкретной фиксацией запятой. Для фиксации запятойперед старшим значащим разрядом |̅ | < 1, а для фиксации запятой послемладшего значащего разряда |̅ | ≥ 1.Достоинством представления чисел с фиксированной запятой являетсямалый расход оборудования для представления чисел, т.е. упрощение схем ЭВМ,и высокое быстродействие схем. К недостатку относится необходимость вводитьмасштабы чисел. Кроме этого, при выполнении операции сложения необходимовыравнивать масштабы слагаемых, а при выполнении операции умножения илиделения необходимо суммировать или вычитать масштабы.
Можно было быввести универсальные масштабы, но при этом будет страдать точностьвычислений.В) Плавающая запятая. Недостатки формы с фиксированной запятойустраняются при использовании формы представления чисел с плавающейзапятой (точкой). Представления чисел с плавающей запятой имеет вид: = × ,где - мантисса числа , || < 1; - характеристика числа ;- порядок;- основание с/c.Представление чисел с плавающей запятой неоднозначно.
Для исключениянеоднозначности вводится ограничение на мантиссу: −1 ≤ || < 1(1.11)Определение 12. Число называется нормализованным, если мантисса удовлетворяет условию (1.11), а приведения мантиссы к виду (1.11) –нормализацией.При нормализации числа должен корректироваться порядок. Для двоичной с/с0,1 ≤ || < 1Пример. Двоичное число = 101,11 Представить в форме с плавающейзапятой. = 101,11 =0,10111× 23 , = 0,10111, p = 11.Использование модифицированного дополнительного кода дает следующеепредставление:[]д = 00.10111, []д = 00.11Порядок может быть положительным или отрицательным целым числом,которое указывает на положение запятой в числе . Запись основания с/с припредставлении числа с плавающей запятой опускается.
Формат с плавающейзапятой можно представить следующим образом:Знак мантиссыЗн. Зн. 1 2 . . . 1 2 . ..Знак порядкаПорядокМантиссаРис. 1.4. Формат с плавающей запятойЗнак мантиссы определяет знак числа. Принято, что нуль представляетсянулевыми значениями мантиссы и порядка.К недостаткам формы с плавающей запятой относят больший объемоборудования для представления чисел и большее время выполнения операций счислами (по сравнению с фиксированной запятой).Оценим диапазон чисел, представленных в разрядной сетке для формы сплавающей запятой: − ≤ || ≤ (1 − − ) × −1,где – количество разрядов, выделенных для порядка,m – количество разрядов, выделенных для мантиссы.Рассмотрим диапазон представления чисел с плавающей запятой дляразрядной сетки с = 32, = 6, = 24 и по 1 разряду для знаков мантиссы ипорядка.Определим максимальное и минимальное значения порядка.0 = 0: = 26 − 1 = 63, т.е.
характеристика равна 263 .0 = 1: = −(26 − 1) = −63, т.е. характеристика равна 2−63 .Определим положительное нормализованное максимальное и минимальноезначения мантиссы. = 0.11 … 1 = 1 − 2−24 , = 0.100 … 0 = 2−1 .Значения области отрицательных чисел по модулю совпадают со значениямиобласти положительных чисел. Тогда диапазон представления чисел длязаданного примера определяется как:2−63 × 2−1 ≤ || ≤ 263 × (1 − 2−24 ) или2−64 ≤ || ≤ 263 × (1 − 2−24 ),что подтверждает правильность приведенного выше общего соотношения длявычисления диапазона представления чисел в форме с плавающей запятой.Теоретически нерешённая задача для формы с плавающей запятой: длязаданной разрядной сетки определить соотношение количества разрядов,отводимых для порядка и мантиссы, чтобы диапазон представления чисел былнаибольшим.1.14.
Особенности выполнения арифметических операций с плавающейзапятойОсобенности выполнения операции сложения для чисел, представленных вформе с фиксированной запятой,были рассмотрены в подразделе 1.9.Остановимся на особенностях выполнения арифметических операций с числами1 = 1 × 1 , 2 = 2 × 2 ,представленными в форме с плавающей запятой.Сложение. Особенность выполнения операции сложения состоит ввыравнивании порядков слагаемых. Причём всегда порядок меньшего числаприводится к порядку большего числа. Это связано со стремлением к повышениюточности представления чисел.
Сформулируем правило сложения.1. а)Порядки слагаемых равны 1 =2 . Тогда проводится сложение мантисс:1 ± 2 = (1 + 2 ) × 1 , переход к п. 4.б) Порядок первого слагаемого больше порядка второго слагаемого1 > 2 . В этом случае порядок 2 числа 2 приводится к порядку 1 числа 1 .Далее корректируется мантисса 2 путём сдвига её вправо на ∆= 1 −2 ,2 = 2 × 2 .Проводится переход к п.
2.в) Порядок второго слагаемого больше порядка первого слагаемого1 < 2 . Тогда:∆= 2 − 1 , 1 = 1 × 1 , переход к п. 3.2.1 ± 2 = (1 + 2 ) × 1 , переход к п. 4.3.1 ± 2 = (1 + 2 ) × 2 , переход к п. 4.4.При необходимости нормализовать результат.Выполнение п.п. 1.б,в называется выравниванием порядков. Всегда порядокменьшего числа приводится к порядку большего числа. При этом мантиссаменьшего числа сдвигается вправо на ∆ разрядов.Умножение.1 × 2 = 1 × 1 × 2 × 2 = (1 × 2 ) × 1+2 .Деление.1 × 2 = 1 × 1 ÷ 2 × 2 = (1 ÷ 2 ) × 1−2 .Знак операций умножения (деления) определяется применением операции«ИСКЛЮЧАЮЩЕЕ ИЛИ» для знаковых разрядов.1.15.
Нарушение нормализацииНарушение нормализации связано с невыполнением одного из отношенийформулы (1.11). Нарушение нормализации слева означает невыполнениеотношения −1 ≤ ||, т. е. −1 > ||. Признаком нарушения нормализации слева являетсясовпадение значений знакового разряда и старшего значащего разряда двоичногокода числа: 11.1 … для обратного и дополнительного кодов отрицательных двоичных чисе 00.0 … для обратного и дополнительного кодов положительных двоичных чисеДля приведения значения к нормализованному виду необходимо мантиссусдвинуть влево до удовлетворения условия −1 ≤ ||,т.е. до полученияследующих комбинаций значений знакового разряда и старшего значащегоразрядов: 11.0 … для обратного и дополнительного кодов двоичных отрицательных чисе 00.1 … для обратного и дополнительного кодов двоичных положительных чисеПри этом порядок необходимо уменьшить на значение, равное значениюпроизведенных сдвигов мантиссы.Нарушение нормализации справа означает невыполнение отношения|| < 1, т.
е. || ≥ 1 . Для приведения значения к нормализованному видунеобходимо мантиссу сдвинуть вправо на один разряд. При этом порядокнеобходимо увеличить на единицу.Пример. Сложить двоичные числа 1 и 2 , используя форму с плавающейзапятой и дополнительный код.1 = 0,10100 × 24 , 2 = 0,11010 × 23 .[1 ]д = 00,10100,[1 ]д = 00.100;[2 ]д = 00,11010,[2 ]д = 00.011.Проводится выравнивание порядков:∆= [1 ]д − [2 ]д = 00.001,Мантисса [2 ]д сдвигается на один разряд вправо, а порядок[2 ]д увеличивается на 1:[2 ]д = 00,01101,[2 ]д = 00.100.Можно складывать мантиссы:[]д = [1 ]д + [2 ]д = 01.00000, []д = 00.100.В результате произошло нарушение нормализации слева. Для ликвидацииэтого нарушения мантисса []д результата сдвигается вправо на один разряд, апорядок []д увеличивается на единицу:[]д = 00.10000, []д = 00.1011.16. Точность представления формРассмотрим абсолютные и относительные погрешности для форм сфиксированной и плавающей запятой.Фиксированная точка.Ограничимся рассмотрением разрядной двоичной сетки с фиксациейперед старшим разрядом.
Диапазон чисел, представимых в указанной разряднойсетке, определяется как: −+1 ≤ | | ≤ 1 − −+1В реальных ЭВМ = 16 ÷ 64. Отсюда можно сделать вывод, что 1 ≫ −+1 , т.е. 1 − −+1 ≈ 1.Для рассмотрения абсолютной погрешности определим ее минимальное имаксимальное значения. Представление числа с погрешностью можно описатькак:−+1 = ∑ × + ∆ ,=−1где ∆ - абсолютная погрешность.
А точное представление числа выглядитследующим образом:−∞ = ∑ × =−1Представим разрядную сетку в виде линейки.0Зн.−1 −2−+1. . .−− − 111−∞. . .100. . .∆0Минимальное и максимальное значения представления равно:−∞∆ = 0,∆ = ∑ ≈ −+1=−Усредненная абсолютная погрешность равна:0 + −+1∆уср == 0,5 × −+12Относительная погрешность рассматривается по отношению к модулюминимального и модулю максимального значения в заданной разрядной сетке.Общая формула вычисления относительной погрешности учитывает значениеабсолютной погрешности:=∆||Тогда∆уср0,5 × −+1==≈ 0,5 × −+1| |1 − −+1∆уср0,5 × −+1=== 0,5| | −+1Плавающая точка.Модуль нормализованной мантиссы лежит в пределах: −1 ≤ || ≤ 1 − −+1Абсолютная погрешность мантиссы совпадает с абсолютной погрешностьюформы представлениячислаучитываетс фиксированной запятой.
А абсолютная погрешностьпорядок,т.е..Относительнаяпогрешностьпредставленных в форме с плавающей запятой равна:∆уср0,5 × −+1 × === 0,5 × −+1| | (1 − −+1 ) × чисел,∆уср0,5 × −+1 × === 0,5 × −+2−1| | ×.