- •Лабораторна робота 9
- •1 Основні теоретичні відомості
- •1.1 Виконання алгебрачної операцiї дiлення чисел у сучасних комп`ютерах iз вiдновленням залишкiв
- •1.1.1 Формальні основи визначення поточної цифри частки при діленні чисел iз відновленням залишків
- •1.1.2 Алгоритм реалiзацiї дiлення чисел iз вiдновленням залишкiв
- •1.2 Виконання алгебрачної операцiї дiлення чисел у сучасних комп`ютерах без вiдновлення залишкiв
- •2 Контрольні питання
- •Вимоги до оформлення, захисту та оцінювання лабораторних робіт
- •Зразок оформлення титульного аркуша
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ |
|
||||
ХЕРСОНСЬКИЙ НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ |
|
||||
Кафедра інформацiйних технологій |
|
||||
|
|
||||
|
|
|
|||
|
|
||||
|
МЕТОДИЧНІ РЕКОМЕНДАЦІЇ |
|
|
||
|
та контрольні завдання до виконання лабораторних робіт |
|
|
||
|
з дисципліни „Комп’ютерна арифметика” |
|
|
||
|
для студентів другого курсу |
|
|
||
|
для напряму підготовки 6.050102 “Комп’ютерна інженерія” |
|
|
||
|
за професійним спрямуванням “Комп’ютерні системи та мережі” |
|
|
||
|
галузі знань 0501 “Інформатика та обчислювальна техніка” |
|
|
||
|
факультету кібернетики та системної інженерії |
|
|
||
|
|
||||
Частина 9 (лабораторна робота 9) |
|
||||
|
|
||||
Херсон – 2016 р. |
|
||||
Методичні рекомендації та контрольні завдання до виконання лабораторних робіт з дисципліни „Комп'ютерна арифметика” для студентів другого курсу напряму підготовки 6.050102 “Комп’ютерна інженерія” (за професійним спрямуванням “Комп’ютерні системи та мережі”) галузі знань 0501 “Інформатика та обчислювальна техніка”. Частина 9 (лабораторна робота 9). |
|||||
|
|||||
Укладач: Веселовська Г.В., доцент кафедри інформаційних технологій ХНТУ, к.т.н., доцент, кількість сторінок 17. |
|||||
|
|||||
Рецензент: Кибалко І.І., доцент кафедри інформаційних технологій ХНТУ, к.т.н. |
|||||
|
|||||
|
Затверджено |
||||
|
на засіданні кафедри інформаційних технологій ХНТУ, |
||||
|
протокол № 1 від 30.08.2016 р. |
||||
|
Завідувач кафедри інформаційних технологій ХНТУ, д.т.н., професор, заслужений діяч науки і техніки України |
||||
|
____________________ В.Є.Ходаков |
||||
|
|||||
Відповідальний за випуск В.Є.Ходаков, завідувач кафедри інформаційних технологій ХНТУ, д.т.н., професор, заслужений діяч науки і техніки України. |
|||||
Лабораторна робота 9
Тема: Виконання алгебрачної операцiї дiлення чисел у сучасних комп`ютерах iз вiдновленням та без відновлення залишкiв.
Мета роботи: опанувати на практиці наступні ключові питання, пов`язані з виконанням алгебрачної операцiї дiлення чисел у сучасних комп`ютерах: формальні основи визначення поточної цифри частки й алго-ритм реалiзацiї дiлення чисел iз вiдновленням і без вiдновлення залишкiв.
Основні знання й уміння: знати основні відомості про дiлення чисел iз вiдновленням залишкiв у комп`ютернiй арифметицi, умiти виконувати основ-ні етапи дiлення чисел iз вiдновленням залишкiв; знати основні відомості про дiлення чисел без вiдновлення залишкiв у комп`ютернiй арифметицi, умiти виконувати основні етапи дiлення чисел без вiдновлення залишкiв.
1 Основні теоретичні відомості
1.1 Виконання алгебрачної операцiї дiлення чисел у сучасних комп`ютерах iз вiдновленням залишкiв
1.1.1 Формальні основи визначення поточної цифри частки при діленні чисел iз відновленням залишків
Ділення в комп`ютерах, так само, як і множення, найпростіше виконувати в прямому коді.
Але, на відміну від множення дробових співмножників, де не може виникнути переповнення розрядної сітки, при діленні правильних дробів таке переповнення можливе у тому випадку, коли ділене більше дільника.
Ознакою переповнення є поява одиниці в знаковому розряді частки, що сильно викривляє результат.
Знак частки при діленні в прямому коді формуться в наступний спосiб: визначається як сума по модулю 2 знакових цифр діленого та дільника; приписується частці наприкінці операції ділення.
Частка визначається шляхом ділення модулів вхідних чисел.
Для того, щоб уникнути переповнення розрядної сітки, для діленого А та дільника В повинна виконуватися наступна умова: |А| < |В|.
Якщо потрібно розділити А на В iз точністю до і-го розряду, то:
Yi = A/B = 0,y1y2…yi-1yi = y12-1+ y22-2+ yi-12-(i-1) + yi2-i. |
(1) |
При будь-якому значенні i, повинна виконуватися наступна нерівність:
0 <= A – BYi < B*2-i. |
(2) |
Перетворимо (2) до виду
0 <= (A – BYi)*2i < B |
(3) |
Позначивши (A – BYi)*2i через Ri, одержимо:
0 <= Ri < B |
(4) |
Частки визначаються послідовно, починаючи зі старшого розряду.
Припустимо, що в результаті виконання i циклів отримані старші i розрядів частки, тобто наближене значення частки Yi, що задовольняє нерівності (4).
У наступному, (i + 1)-ому циклі, буде отримане значення (i + 1)-го розряду частки.
Вхідними даними для даного циклу є Yi і Ri.
Цифра yi+1 може мати одне з двох значень: 0 або 1.
У першому випадку (yi+1 = 0), будемо мати наступне:
Yi+1 = Yi + yi+1*2-(i+1) = Yi; |
(5) |
Ri+1 = (A – BYi+1)*2i+1 = 2Ri, |
(6) |
тобто у частці записується нуль за умови
0 <= Ri+1 = 2Ri < B. |
(7) |
У другому випадку (якщо yi+1 = 1):
Yi+1 = Yi + 2-(i+1), |
(8) |
Ri+1 = 2Ri – B, |
(9) |
Тобто цифра частки дорівнює одиницi, якщо виконується умова
B <= 2Ri < 2B. |
(10) |
Оскільки завжди виконується лише одна з умов (або (7), або (10)), то, для визначення поточної цифри частки, досить перевірити тiльки одну з них.
