Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LR_2_KS.doc
Скачиваний:
8
Добавлен:
14.11.2019
Размер:
140.29 Кб
Скачать

КОЛЕДЖ ІНФОРМАЦІЙНИХ СИСТЕМ І ТЕХНОЛОГІЙ

ДЕРЖАВНОГО ВИЩОГО НАВЧАЛЬНОГО ЗАКЛАДУ

КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ ЕКОНОМІЧНИЙ УНІВЕРСИТЕТ імені Вадима Гетьмана”

Інструкція до лабораторної роботи №2

з дисципліни: „Комп’ютерна схемотехніка”

для студентів спеціальностей:

5.05010301 –

Розробка програмного забезпечення

5.05010101 –

Обслуговування програмних систем і комплексів

Розробив викладач

Повхліб В.С.

Розглянуто на

засіданні циклової комісії

Обчислювальної техніки

Протокол № _______

від "____"________2012 р.

Голова комісії ____________

Тема: виконання операцій множення та ділення чисел з фіксованою та плаваючою комою

1. Мета роботи

1.1 Ознайомитись з алгоритмами множення в ЕОМ..

1.2. Ознайомитись з алгоритмами ділення в ЕОМ..

1.3. Ознайомитись з виконанням операцій множення та ділення для чисел з фіксованою та плаваючою комою.

2.Основні теоретичні відомості Множення чисел, представлених у формі з плаваючою комою

Якщо операнди задані у формі з плаваючою комою:

А = a2ma і B = b2mb, то їх добуток С = А*В і С = с2mc

де C = a * b * 2 (ma+mb)

Алгоритм множення нормалізованих чисел складається з наступних етапів:

1. Визначення знака добутку шляхом складання знакових розрядів мантиси операндів за модулем 2.

2. Алгебраїчне додавання порядків співмножників з метою визначення порядку добутку.

3. Множення модулів мантис співмножників за правилами множення чисел з фіксованою комою.

4. Нормалізація і округлення мантиси результату. Слід врахувати, що мантиси співмножників є нормалізованими числами. Тому денормалізація мантиси добутку можлива тільки на один розряд вправо. Вона усувається шляхом зсуву мантиси на один розряд вліво і віднімання 1 з порядку результату.

5. Присвоєння знака результату.

Перші три операції можуть виконуватися одночасно, так як вони незалежні. Наявність операції визначення знака добутку передбачає, що множення мантис виконується в прямому коді.

При виконанні операції множення в машині з плаваючою комою може вийти переповнення негативного порядку, яке буде інтерпретовано як машинний нуль, якщо програмою користувача ігнорується ознака зникнення порядку. Може також виникнути позитивне переповнення порядку. У цьому випадку в першу чергу необхідно нормалізувати мантиссу результату. Якщо і після цього переповнення порядку не усувається, то машиною формується ознака переповнення порядку.

Ділення чисел, представлених в формі з плаваючою комою

Якщо числа А і В задані в нормальній формі, то їх частка дорівнюватиме:

С = a: b = (a: b) 2 (mа-mb)

де а і b - мантиси, а ma і mb-порядки відповідно чисел А і В. Звідси випливає, що операція ділення в машинах з плаваючою комою виконується в п'ять етапів.

1-й етап. Визначення знака частки шляхом складання по модулю 2 знакових цифр мантиси операндів.

2-й етап. Розподіл модулів мантис операндів за правилами ділення чисел з фіксованою комою.

3-й етап. Визначення порядку частки шляхом вирахування порядку дільника з порядку діленого.

4-й етап. Нормалізація результату і його округлення.

5-й етап. Присвоєння знака мантиси результату.

Два перші етапи повністю збігаються з етапами ділення чисел з фіксованою комою. Третій етап являє собою звичайне додавання в інверсних кодах.

При розподілі нормалізованих чисел денормалізація результату можлива тільки вліво і тільки на один розряд. Це обумовлено тим, що мантиса будь-якого нормалізованого числа лежить в межах

2-1 |а|< 1— 2-n

Тоді найменша і найбільша можливі величини мантиси частки рівні відповідно

тобто мантиса частки лежить в межах 2-1  |y|< 2.

Тому на четвертому етапі може виникнути необхідність нормалізації мантиси частки шляхом її зсуву вправо на один розряд і збільшення порядку частки на одиницю. Якщо ж перед поділом зрушити ділене на один розряд вправо, то на 4-му етапі може знадобитися нормалізація результатів вліво на 1 розряд.

При виконанні третього (визначення порядку) етапу порядок частки може виявитися більше припустимого, тобто відбудеться переповнення розрядної сітки, яке розцінюється як аварійна ситуація. Може бути також отриманий порядок частки, який менше допустимого. Якщо на другому етапі обчислено частка | y |> 1, то на четвертому етапі при зсуві частки вправо її порядок повинен бути збільшений на одиницю. При цьому стає остаточно ясно, по-перше, чи виникло переповнення розрядної сітки порядку чи ні, по-друге, чи буде порядок частки менше допустимого значення. Якщо має місце зникнення порядку, то результат ділення за вказівкою програміста замінюється машинним нулем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]