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

Міністерство освіти і науки України

Національний університет „Львівська політехніка”

Кафедра ЕОМ

Звіт

з лабораторної роботи №6

з дисципліни: організація та функціонування комп’ютерів натему:

Дослідження виконання арифметичних операцій у форматі зрухомою комою»

Виконав:

ст.гр. КІ-11

Cаноцький М.Т.

Прийняв:

ст… викл.

Кудрявцев О.Т.

Львів 2010


 Мета роботи:

1.  Ознайомитися з поданням чиселу нормальній формі. Засвоїти порядок нормалізації чисел з рухомою комою.Ознайомитися з поняттям “характеристика” для чисел з рухомою комою.

2.  Вивчити правила додавання(віднімання) двійкових чисел з рухомою комою.

3.  Розробити алгоритми іпрограми додавання чисел в арифметиці з рухомою комою в інструкціях навчальногокомп'ютера — симулятора DeComp.


1. Теоретична частина

1.1 Подання чисел з рухомою комою

число рухомий комаалгоритм

У форматі з рухомою комою, якийзвичайно називають нормальною формою запису, числа записуються наступним чином:

A = М * d Р ,

де p – ціле число, яке називається порядкомчисла А;

d – основа системи числення;

М – мантиса числа А (звичайно |M| <1).

При нормальній формі запис одногочисла може приймати різний вигляд у залежності від обмежень, що накладаються найого форму. Фактично місце коми у мантисі М визначається величиною порядку р.Із зміною порядку р у більшу або меншу сторону кома відповідно переміщуєтьсяліворуч або праворуч, тобто рухається (“плаває”) у зображені мантиси. Наприклад:

23410 = 234 * 100 = 0,234 * 103 =0,0234 * 104 = 2,34 * 102 ;

1011012 = 101101 * 100 = 0,101101 *10110 = 0,00101101 * 101000.

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

d-1 M 1.

Числа, що записані у такій форміназиваються нормалізованими. Іншими словами, у нормалізованих числах у мантисі першоюцифрою перед комою стоїть 0, а перша цифра після коми – це цифра відмінна віднуля. Для двійкової системи числення вона дорівнює 1.

Таким чином, мантису розглядають якчисло менше одиниці, а порядок – як ціле число.

Операція нормалізації виконується шляхом зсувумантиси вліво із зменшенням порядку, або вправо із збільшення порядку навеличину, яка дорівнює кількості розрядів, на яку була зсунута мантиса.

Приклад: нормалізувати наступнічисла:

0,00237 * 105 = 0,237 * 103 – мантиса зсувається на дварозряди вліво, тобто – збільшується, а порядок зменшується на дві одиниці.

10101,0112 * 1010 = 0,10101011 * 10 111- мантисазсувається вправо на 5 розрядів, тобто – зменшується, а порядок збільшується на5 одиниць.

Нормалізоване подання чисел дозволяєзберігати у розрядній сітці комп’ютера більшу кількість цифр, що маютьзначення, тому точність обчислень підвищується. Зазвичай у комп’ютерахнормалізація здійснюється автоматично як при вводі чисел, так і у процесіобчислень (після виконання чергової операції). При цьому мантиса зсуваєтьсяліворуч на необхідну кількість розрядів і виконується відповідне зменшенняпорядку, тобто виконується “нормалізація вліво”.

При виконанні операції додавання абовіднімання нормалізованих чисел з різними порядками одно з них “денормалізується”до вирівнювання порядків, а сума (або різниця) знову нормалізується.

У розрядній сітці комп’ютерівфіксуються знак числа, знак порядку, порядок числа і числовий вираз мантиси.

 0  1  2 ... ... ... ... ... ... m+n+1  0  0  1  2  ...  m  1  2 ...  n

Знак

мантиси

Знак

порядку

Порядок Мантиса

У комп’ютерах із рухомою комою можливепереповнення розрядної сітки, так само, як і у комп’ютерах із фіксованою комою.Наприклад, переповнення може виникнути при додаванні нормалізованих чиселодного знаку з однаковими порядками. У цьому випадку з’являється “1” ліворучвід коми. Такого роду переповнення коригується зсувом мантиси вправо на одинрозряд і збільшенням порядку на одиницю, тобто виконується “нормалізація вправо”.

1.2 Правила додавання (віднімання) двійковихчисел з рухомою комою

Додавання і віднімання чисел зрухомою комою виконується у декілька етапів.

1.  Вирівнювання порядків;

Як відомо, реальна величина (вага) Niодиниці і-го розряду мантиси визначається не тільки позицією даного розряду,але й порядком р числа, тобто

Ni = d p-і,

де і – номер позиції, рахуючи вправовід коми.

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

1.  Додавання мантис;

Додавання мантис із вирівненимипорядками виконується згідно правил додавання чисел з фіксованою комою.Зазвичай використовується модифікований доповнювальний код. (Пригадайте правилаподання від’ємних чисел з використанням доповнювального або оберненогомодифікованого коду).

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

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

а). Виникає переповнення розрядноїсітки комп’ютера (порушення нормалізації вправо). Ознакою переповнення єневизначенність знакових розрядів, коли результат неможливо віднести ні дододатних, ні до від’ємних чисел (код 01 або 10). У цьому випадку необхідновиконати корекцію результату додавання мантис шляхом його зсуву вправо на одинрозряд і одночасного збільшення порядку на 1.

Наприклад, після додавання мантисотримуємо число 01,00001. Нормалізуємо його зсувом вправо на один розряд іодночасно збільшуємо порядок на 1. В результаті отримуємо:

(А + В)доп = 00,100001 * 10к+1

Переводимо у прямий код: (А + В)пр = 00,100001* 10к+1.

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

б). Результат від’ємний. Переведеннярезультату додавання мантис у прямий код віконується шляхом виконання другогодоповнення (тобто, виконується інверсія результату і до отриманого кодудодається 1 у молодший розряд) або другого обертання (тобто, виконуєтьсяінверсія результату);

в). Результат додатний. У прямомукоді додатний результат залишається без змін;

4. Нормалізація результату.

Виконується тоді, коли післяпереведення у прямий код у отриманому результаті відбувається порушеннянормалізації вправо, тобто з правого боку від коми є один або декілька нулів.Це порушення коректується зсувом мантиси результату вліво і одночасне зменшенняпорядку на кількість розрядів зсуву мантиси до повної нормалізації мантиси.

1.  Остаточний результатдодавання двох чисел з рухомою комою: сума мантис – це мантиса результату,порядок результату – вирівняний порядок доданків, із врахуванням всіх проведенихкорекцій…

Розглянемо приклади виконанняоперації додавання двійкових чисел з рухомою комою. Всі арифметичні дії будемовиконувати у модифікованому доповнювальному коді.

Приклад 1: Додати A = — 0,1101 *10101 i B = + 0,1100 * 10011.

а) Вирівнюємо порядки… Спочатку,визначаємо арифметичну різницю між порядками, віднімаючи від значення порядкучисла А значення порядку числа В. При цьому операцію віднімання замінюємооперацією додавання у доповнювальному модифікованому коді.

рА – рВ = рА + (– рВ) = (pA доп(м) =00,101) + (pB доп(м) = 11,101) = 00,010 – різниця порядків

Аналіз отриманої різниці:

· знакрізниці показує, що порядок числа А більше порядку числа В;

· порядкивідрізняються на дві одиниці.

Через те, що рА > pB, зсуваємомантису числа В вправо на два розряди, тобто

МВ пр= 00,001100 і Впр= 00,001100 *10101.

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

б) Переводимо мантиси обох чисел умодифікований доповнювальний код (в межах 4-х розрядів):

МА пр = 11,1101 МА доп(М) =.11,0011

МВ пр = 00,0011 МВ доп(М) =.00,0011

в) Додаємо модифіковані доповнювальнікоди мантис чисел А та В і отримуємо результат у модифікованому доповнювальномукоді:

(А + В)доп (М) = 11,0011 + 00,0011 =11,0110

г) Аналіз результату додавання мантиспочинається із знакових розрядів. Знакові розряди показують, що переповненнярозрядної сітки у нас не виникло. Результат – від'ємний, тому переводимомантису результату у прямий код шляхом виконання другого доповнення і дописуємоспільний порядок:

(А + В)пр (М) = (11,1001 + 00,0001) *10 101 = 11,1010 * 10101 — остаточний результат.

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

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

Приклад 2.: Додати двійкові числа: А= + 0,10100 * 10101 та В = — 0,10110 * 10100.

а) Для вирівнювання порядків доданківнеобхідно із порядку числа А відняти порядок числа В. Віднімання замінимододаванням у модифікованому доповняльному коді.

(рА доп(м)= 00,101) + (рВ доп(м) =11,100) = ,101 – 00,100 = 00,101 + (- 00,100) = 00,101 + (11,011 + 00,001) = 00,101 + 1,100 = 00,001

Через те, що рА > pB на +1,виконуємо зсув мантиси числа В вправо на 1 розряд.

МВ пр = 11,010110 і В = 11,010110 *10101.

б) Переведемо мантиси доданків умодифікований доповняльний код.

МА пр = 00,10100 МА доп(М) = 00,10100.

МВ пр = 11,010110 МВ доп(М) =11,101010.

в) Додаємо мантиси чисел А і В умодифікованих доповняльних кодах:

(МА доп(М) = 00,10100) + (МВ доп(М) =11,10101) = 00,01001

г) Переводимо результат у прямий код(виконуємо друге доповнення). У нашому випадку прямий код суми мантисзбігається з доповнювальним кодом суми мантис, тому що результат є числододатне.

(МА + МВ) пр(м) = 00,01001

Як видно, виникло порушеннянормалізації вправо, тому що вправо від коми розряд дорівнює 0.

д) Виконуємо нормалізацію результату,тобто зсув мантиси ліворуч на 1 розряд з одночасним відповідним зменшеннямпорядку:

(А + В)пр = 0,1001 * 10100 – остаточнийрезультат.


2.Хід роботи:

· Розробитиалгоритм і написати програму додавання довільних (додатних і від’ємних)двійкових чисел із рухомою комою у модифікованому доповнювальному коді вінструкціях симулятора DeComp. Числа подаються у форматі:

Знак порядку Знак мантиси Порядок Мантиса 2 розряди 2 розряди 4 розряди 8 розрядів

 У алгоритмі передбачити аналізотриманого результату на:

· переповненнярозрядної сітки (порушення нормалізації вліво);

· наявністьпорушення нормалізації вправо;

· від'ємнийрезультат

 Передбачити відповідні заходи зкорекції результату.

Блок-схема написаної програми

Попередньо в такі комірки заношу такідані:

350 хххх хххх хххх хххх Число а 351 хххх хххх хххх хххх Число b 352 1100 0000 0000 0000 Маска для знаку порядку 353 0000 1111 0000 0000 Маска для порядку 354 0000 0000 0000 0000 Порядок числа а 355 0000 0000 0000 0000 Знак порадка числа а 356 0000 0000 0000 0000 Порядок числа b 357 0000 0000 0000 0000 Знак порядку числа b 358 0000 0000 0000 0000 Порядок зі знаком числа a 359 0000 0000 0000 0000 Порядок зі знаком числа b 360 0000 0000 0000 0001 Одиниця для додавання 361 0000 0000 0000 0010 Нормалізація порядку 362 0011 1100 0000 0000 Маска для нормалізації інвертації порядка 363 0000 0000 0000 0000 Мантиса числа a 364 0000 0000 0000 0000 Мантиса числа b 365 0000 0000 0000 0000 Знак мантиси числа a 366 0000 0000 0000 0000 Знак мантиси числа b 367 0011 0000 0000 0000 маска для відокремлення знаку мантиси 368 0000 0000 1111 1111 Маска для відокремлення мантиси 369 0000 0000 0000 0000 Мантиса зі знаком числа a 370 0000 0000 0000 0000 Мантиса зі знаком числа a 371 0000 0000 0000 0000 Різниця порядків 372 0011 1110 0000 0000 Маска для взяття різниці порядків 373 1011 1111 1111 1111 Обернена маска для взяття модуля різниці 374 0000 0000 0000 1001 Нормалізація різниці порядків 375 0000 0000 0000 0101 Підготовка мантиси 376 0000 0000 0000 0101 Підготовка мантиси 377 0000 0000 0000 0010 Нормалізація порядку 378 0000 0000 1111 1111 Маска для виділення мантиси 379 1000 0000 0000 0000 Відновлення знаку мантиси 380 0000 0000 0000 0000 Сума двох чисел 381 0000 0000 0000 0000 Мантиса результату 382 0000 0000 0000 0000 Знак мантиси результату 383 0000 0000 0000 0000 Порядок результату 384 0000 0000 0000 0000 Знак порядоку результату 385 0011 1111 1110 0000 Маска для вибору мантиси результату 386 0000 0000 0000 0110 Зсув мантиси до молодших розрядів 387 0000 0000 0000 0000 Результат (Зн. П, Зн.М, Порядок, Мантиса) 388 0000 0100 0000 0000 Додавання одиниці для переведення порядку 389 0000 0010 0000 0000 Одиниця для переведення різниці порядків 390 0000 0000 0010 0000 Додавання одиниці для переведення мантиси

Код програми:

0000 0001 0101 1110 LOAD 350 Виділення порядка 1-го числа 1 0100 0001 0110 0001 AND 353 2 0001 0001 0110 0010 STORE 354 Переміщення порядку до старших розрядів 3 0000 0001 0110 0010 LOAD 354 4 1111 0010 0000 0000 LSL 5 0001 0001 0110 0010 STORE 354 6 0000 0001 0110 1001 LOAD 361 7 0011 0001 0110 1000 SUB 360 8 0001 0001 0110 1001 STORE 361 9 1000 0000 0000 0011 JNZ 3 10 0000 0001 0101 1110 LOAD 350 Виділення знаку порядку 1-го числа 11 0100 0001 0110 0000 AND 352 12 0001 0001 0110 0011 STORE 355 13 1111 1100 0000 0000 LSL Перевірка на відємність порядка 1-го числа 14 1100 0000 0001 0100 JNC 20 15 0000 0001 0110 0010 LOAD 354 Якщо порядок 1-го числа відємний інвертуєм порядок перевести в доповняльний код 16 0111 0000 0000 0000 NOT 17 0100 0001 0110 1010 AND 362 18 0010 0001 1000 0100 ADD 388 19 0001 0001 0110 0010 STORE 354 20 0000 0001 0110 0010 LOAD 354 Обєднання знаку і порядку в одне число 21 0010 0001 0110 0011 ADD 355 22 0001 0001 0110 0110 STORE 358 23 0000 0001 0101 1111 LOAD 351 Виділення порядка 2-го числа 24 0100 0001 0110 0001 AND 353 25 0001 0001 0110 0100 STORE 356 26 0000 0001 0110 0100 LOAD 356 Переміщення порядку до старших розрядів 27 1111 0010 0000 0000 LSL 28 0001 0001 0110 0100 STORE 356 29 0000 0001 0110 1001 LOAD 377 30 0011 0001 0110 1000 SUB 360 31 0001 0001 0110 1001 STORE 377 32 1000 0000 0001 1010 JNZ 26 33 0000 0001 0101 1111 LOAD 351 Виділення знаку порядку 2-го числа 34 0100 0001 0110 0000 AND 352 35 0001 0001 0110 0101 STORE 357 36 1111 1100 0000 0000 LSL Перевірка на відємність порядка 2-го числа 37 1100 0000 0010 1011 JNC 43 38 0000 0001 0110 0100 LOAD 356 Якщо порядок 2-го числа відємний інвертуєм порядок 39 0111 0000 0000 0000 NOT 40 0100 0001 0110 1010 AND 362 41 0010 0001 1000 0100 ADD 388 42 0001 0001 0110 0100 STORE 356 43 0000 0001 0110 0100 LOAD 356 Обєднання знаку і порядку в одне число 44 0010 0001 0110 0101 ADD 357 45 0001 0001 0110 0111 STORE 359 46 0000 0001 0101 1110 LOAD 350 Виділення мантиси 47 0100 0001 0111 0000 AND 368 48 0001 0001 0110 1011 STORE 363 49 0000 0001 0101 1110 LOAD 350 Виділення і нормалізація знаку 50 0100 0001 0110 1111 AND 367 51 1111 1100 0000 0000 LSL 52 1111 1100 0000 0000 LSL 53 0001 0001 0110 1101 STORE 365 54 0000 0001 0101 1111 LOAD 351 Виділення мантиси 55 0100 0001 0111 0000 AND 368 56 0001 0001 0110 1100 STORE 364 57 0000 0001 0101 1111 LOAD 351 Виділення і нормалізація знаку 58 0100 0001 0110 1111 AND 367 59 1111 1100 0000 0000 LSL 60 1111 1100 0000 0000 LSL 61 0001 0001 0110 1110 STORE 366 62 0000 0001 0110 0110 LOAD 358 Визначення різниці порядків 63 0010 0001 0110 0111 ADD 359 64 0001 0001 0111 0011 STORE 371 65 1011 0000 0100 1100 JM 76 Визначення знаку різниці 66 1111 0010 0000 0000 LSR Корекція результату 67 0100 0001 0111 0100 AND 372 68 0001 0001 0111 0011 STORE 371 69 0000 0001 0111 0011 LOAD 371 Нормалізація різниці порядків 70 1111 0010 0000 0000 LSR 71 0001 0001 0111 0011 STORE 371 72 0000 0001 0111 0110 LOAD 374 73 0011 0001 0110 1000 SUB 360 74 0001 0001 0111 0110 STORE 374 75 1000 0000 0100 0101 JNZ 69 76 0000 0001 0111 0011 LOAD 371 77 0010 0001 0110 1000 ADD 360 78 0001 0001 0111 0011 STORE 371 79 0000 0001 0110 0111 LOAD 359 Збільшення меншого порядку на величину різниці 80 0010 0001 0111 0011 ADD 371 81 0001 0001 0110 0111 STORE 359 82 0000 0001 0111 0011 LOAD 371 Зсув мантиси на величину різниці порядків 83 0011 0001 0110 1000 SUB 360 84 1001 0000 0101 1010 JZ 90 85 0001 0001 0111 0011 STORE 371 86 0000 0001 0110 1100 LOAD 364 87 1111 0010 0000 0000 LSR 88 0001 0000 0110 1100 STORE 364 89 1110 0000 0101 0010 JMP 82 90 1111 0010 0000 0000 LSR Корекція результату 91 0100 0001 0111 0101 AND 373 92 0001 0001 0111 0011 STORE 371 93 0100 0001 0111 0100 AND 372 Переведення числа в прямий код 94 0111 0000 0000 0000 NOT 95 0010 0001 1000 0101 ADD 389 96 0000 0001 0110 0110 LOAD 358 Збільшення меншого порядку на величину різниці 97 0010 0001 0111 0011 ADD 371 98 0001 0001 0110 0110 STORE 358 99 0001 0001 0111 0011 STORE 371 Нормалізація різниці порядків 100 0000 0001 0111 0011 LOAD 371 101 1111 0010 0000 0000 LSR 102 0001 0001 0111 0011 STORE 371 103 0000 0001 0111 0110 LOAD 374 104 0011 0001 0110 1000 SUB 360 105 0001 0001 0111 0110 STORE 374 106 1000 0000 0110 0011 JNZ 99 107 0000 0001 0111 0011 LOAD 371 Зсув мантиси на величину різниці порядків 108 0011 0001 0110 1000 SUB 360 109 1001 0000 0111 0011 JZ 115 110 0001 0001 0111 0011 STORE 371 111 0001 0001 0110 1011 LOAD 363 112 1111 0010 0000 0000 LSR 113 0000 0001 0110 1011 STORE 363 114 1110 0000 0110 1011 JMP 107 115 0000 0001 0110 1101 LOAD 365 Переведення числа в доповняльний код 116 1111 1100 0000 0000 LSL 117 1100 0000 0110 1110 JNC 110 118 0001 0000 0110 1011 LOAD 363 119 0111 0000 0000 0000 NOT 120 0010 0001 0110 1000 ADD 360 121 0100 0001 0111 1010 AND 378 122 0000 0000 0110 1011 STORE 363 123 0000 0001 0110 1110 LOAD 366 Переведення числа в доповняльний код 124 1111 1100 0000 0000 LSL 125 1100 0000 0111 0110 JNC 118 126 0000 0000 0110 1100 LOAD 364 127 0111 0000 0000 0000 NOT 128 0010 0001 0110 1000 ADD 360 129 0100 0001 0111 1010 AND 378 130 0001 0001 0110 1100 STORE 364 131 0001 0001 0110 1011 LOAD 363 Зсув мантиси до старших розрядів 132 1111 1100 0000 0000 LSL 133 0001 0001 0110 1011 STORE 363 134 0000 0001 0111 1101 LOAD 375 135 0011 0001 0110 1000 SUB 360 136 0001 0001 0111 1101 STORE 375 137 1000 0000 1000 0011 JNZ 131 138 0000 0001 0110 1100 LOAD 364 Зсув мантиси до старших розрядів 139 1111 1100 0000 0000 LSL 140 0001 0001 0110 1100 STORE 364 141 0000 0001 0111 1110 LOAD 376 142 0011 0001 0110 1000 SUB 360 143 0001 0001 0111 1110 STORE 376 144 1000 0000 1000 1010 JNZ 138 145 0001 0001 0110 1011 LOAD 363 Обєднання знаку і мантиси в одне число 1-го числа 146 0010 0001 0110 1101 ADD 365 147 0001 0001 0111 0001 STORE 369 148 0000 0001 0110 1100 LOAD 364 Обєднання знаку і мантиси в одне число 2-го числа 149 0010 0001 0110 1110 ADD 366 150 0001 0001 0111 0010 STORE 370 151 0000 0001 0111 0001 LOAD 369 Додавання мантис двох чисел 152 0000 0001 0111 0001 ADD 370 153 1011 0000 1001 1100 JM 156 Збереження результату при додатньому результаті 154 1111 1100 0000 0000 LSL 155 0001 0001 0111 1100 STORE 380 156 1111 1100 0000 0000 LSL Збереження результату при відємному результаті 157 0010 0001 0111 1011 ADD 379 158 0111 0000 0000 0000 NOT Переведення відємного результату в прямий код 159 0100 0001 1000 0001 AND 385 160 0010 0001 1000 0110 ADD 390 161 0010 0001 0110 0000 ADD 352 162 0001 0001 0111 1100 STORE 380 163 0000 0001 0110 0010 LOAD 354 Збереження порядку результату 164 1111 0010 0000 0000 LSR 165 1111 0010 0000 0000 LSR 166 0001 0001 0111 1111 STORE 383 167 0000 0001 0110 0011 LOAD 355 Збереження знаку порядку результату 168 0001 0001 1000 0000 STORE 384 169 0000 0001 0111 1100 LOAD 380 Перевірка денормалізації в право і корекція результату 170 0100 0001 1000 0001 AND 385 171 1111 1100 0000 0000 LSL 172 1111 1100 0000 0000 LSL 173 1111 1100 0000 0000 RCL 174 1101 0000 1011 0110 JC 182 175 1111 1100 0000 0000 RCL 176 1101 0000 1011 0110 JC 182 177 0000 0001 0111 1111 LOAD 383 178 0010 0001 0110 1000 ADD 360 179 0001 0001 0111 1111 STORE 383 180 0000 0001 0111 1101 LOAD 381 181 1110 0000 1010 1001 JMP 169 182 1111 1110 0000 0000 RCR 183 0001 0001 0111 1101 STORE 381 184 0000 0001 0111 1101 LOAD 381 Збереження мантиси результату 185 1111 0010 0000 0000 LSR 186 0001 0001 0111 1101 STORE 381 187 0000 0001 1000 0010 LOAD 386 188 0011 0001 0110 1000 SUB 360 189 0001 0001 1000 0010 STORE 386 190 1000 0000 1011 1000 JNZ 184 191 0000 0001 0111 1100 LOAD 380 Збереження знаку мантиси результату 192 0100 0001 0110 0000 AND 352 193 1111 0010 0000 0000 LSR 194 1111 0010 0000 0000 LSR 195 0001 0001 0111 1110 STORE 382 196 0000 0001 0111 1101 LOAD 381 Формування результату 197 0010 0001 0111 1110 ADD 382 198 0010 0001 0111 1111 ADD 383 199 0010 0001 1000 0000 ADD 384 200 0001 0001 1000 0011 STORE 387 201 0111 1100 0000 0000 HALT Завершення програми

Висновки

На даній лабораторній роботі — ознайомився з поданням чисел у нормальній формі. Засвоїв порядок нормалізаціїчисел з рухомою комою. Ознайомився з поняттям “характеристика” для чисел зрухомою комою.

-вивчив правила додавання (віднімання)двійкових чисел з рухомою комою.

-розробив алгоритми і програми додаваннячисел в арифметиці з рухомою комою в інструкціях навчального комп'.ютера — симулятора DeComp.

еще рефераты
Еще работы по информатике, программированию