antibotan.com

ВСЕУКРАЇНСЬКИЙ СТУДЕНТСЬКИЙ АРХІВ

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




Тип роботи:
Методичні вказівки до лабораторної роботи
ВУЗ:
Національний університет Львівська політехніка
Предмет:
Організація та функціонування комп’ютерів
Рік:
2006
Вартість:
1 бал

Посилання на дану роботу:

http://antibotan.com/file.html?work_id=400262


Опублікувати посилання:

Завантажень:

16


Частина тексту файла:

Міністерство освіти та науки України
Національний університет “Львівська політехніка”
Кафедра ЕОМ
Методичні вказівки
до лабораторної роботи 5
з дисципліни “Організація та функціонування комп’ютерів”
Тема:
Дослідження виконання арифметичних операцій з числами у форматі з
фіксованою комою у навчальному комп’ютері - симуляторі DeComp.
Укладач:
ст.викл.
Кудрявцев О.Т.
Львів
2006
Тема:
Дослідження виконання арифметичних
операцій з числами у форматі з фіксованою
комою у симуляторі DeComp.
Мета роботи:
Вивчити подання і застосування додатних та від’ємних чисел у арифметиці з фіксованою комою.
Навчитись розробляти алгоритми виконання операції віднімання з використанням обернених, доповнювальних і модифікованих кодів.
Навчитись розробляти алгоритми виконання операції множення додатних і від’ємних двійкових чисел.
1. Теоретична частина.
1.1.
Додавання і віднімання двійкових чисел з фіксованою комою
Простота виконання арифметичних дій є важливою особливістю
двійкової системи числення. Але у дійсності при виконанні арифметичних операцій потрібно ще додатково враховувати знаки чисел, що обробляються, діапазон та форму подання чисел для виконання певних розрахунків у конкретному комп’ютері.
Відомо, що одним з можливих шляхів виконання операції віднімання є заміна знаку числа, яке віднімається, на протилежний і додавання його до зменшуваного.
А - В = А + ( - В)
Таким чином операцію арифметичного віднімання замінюють операцією алгебраїчного додавання, яку можна виконати за допомогою двійкових суматорів. Нагадаємо, що від’ємні числа у комп’ютері подаються у прямому, доповняльному і оберненому кодах. Числа зберігаються у прямому коді, перед виконанням обчислень перетворюються у потрібний – доповняльний або обернений - код і після виконання обчислень знову перетворюються у прямий код.
При реалізації заміни віднімання додаванням другий доданок у наведенному виразі переводиться у доповняльний код шляхом інвертування та додавання одиниці у молодший розряд. (Треба пам’ятати, що доповняльний код додатного числа співпадає з прямим кодом).
A –B = A + EMBED Equation.3
+1
При додаванні двох двійкових чисел, за абсолютною величиною менших одиниці, код суми може за абсолютною величиною перевищити одиницю або стати рівним їй. У такому випадку відбудеться переповнення розрядної сітки, що призведе до неправильного результату. Поясним це на прикладах додавання двійкових чисел у доповняльних кодах (табл. 1). У прикладах 1 і 4 отримані суми не відповідають дійсним, тобто відбулось переповнення розрядної сітки. У таких випадках результату не існує.
Переповнення може відбутися у тих випадках, коли доданки мають однакові знаки. Признаком переповнення розрядної сітки може слугувати протилежність знаку суми, що отримана, знакам доданків.
Таблиця 1.
1.2.
Додавання двійкових чисел у модифікованому доповнювальному коді
При додаванні двійкових чисел у доповнювальному коді обов’язковою є умова, щоб кожний з доданків і їх сума за абсолютною величиною були менше одиниці.
Доповнювальні коди чисел додаються порозрядно. Причому знакові розряди додаються як звичайні розряди цілих чисел. Одиниця переносу, яка виникає при додаванні знакових розрядів, не враховується, тобто
відкидається. Суму отримуємо у доповнювальному коді.
Приклад 1. Додати у модифікованому доповнювальному коді двійкові числа
А і В при наступних
умовах:
А > 0; B > 0; A + B > 0.
A = + 0,1101;
B = + 0,0001
+ EMBED Equation.3

EMBED Equation.3
00,1110;
EMBED Equation.3
00,1110;
2.
А > 0; B
0.
A = + 0,1101;
B = - 0,0001
+ EMBED Equation.3

EMBED Equation.3
100,1100;
EMBED Equation.3
00,1100;
Одиниця переносу з старшого знакового

розряду не враховується
3.
А
0; A + B < 0.
A = -
0,1101;
B = + 0,0001;
+
EMBED Equation.3

EMBED Equation.3
11,0100;
EMBED Equation.3
11,1100;
4. А < 0; B < 0; A + B
0;
B > 0;
A + B > 0.
A =
+ 0,1101;
B = + 0,0001;
+ EMBED Equation.3

EMBED Equation.3
00,1110;
EMBED Equation.3
00,1110;
2.
А > 0; B
0.
A = + 0,1101; B = -
0,0001;
+ EMBED Equation.3

EMBED Equation.3
100,1011
Циклічний перенос
+1
EMBED Equation.3
;
EMBED Equation.3
00,1110;
3.
А0; A+B<0.
A= - 0,1101;
B= +0,0001;
+ EMBED Equation.3

EMBED Equation.3
11,0011;
EMBED Equation.3
11,1100;
4.
А < 0; B < 0; A + B
0;
А + В
0), В – множник (В > 0),
С – добуток. Тоді у випадку подання чисел у формі з фіксованою комою отримаємо:
А = 0, а1 а2 а3 . . . аn;
В = 0, b1 b2 . . .bn = b12-1 + b22-2 + . . . + bn2-n.
Звідси
С = А * В = 0, а1 а2 а3 . . . аn(b12-1 + . . . + bn2-n) =
= (2-1 * 0, a1 a2 . . . an )b1 + (2-2 * 0, a1 a2 . . .an )bn + . . . + (2-n * 0, a1 a2
. . . an )bn .
Множник 2-n означає зсув на n розрядів вправо числа, яке знаходиться у дужках, тобто у даному випадку зсувається вправо множене і множення починається із старших розрядів.
М е т о д
2.
Нехай А = 0, а1 а2 а3 . . . аn – множене і В = 0, b1 b2 . . .bn – множник.
Множник легко перетворити, використовуючи метод Горнера:
В = (. . .((bn * 2-1 + bn-1)2-1 + bn-2) * 2-1 + . . . b2) * 2-1 + b1) * 2-1 .
Тоді
С = А * В = (. . .((b
* 0, a1 a2 . . . an) * 2-1 + bn-1 0, a1 a2 . . .an )2-1 + b1 0, a1 a2 . . .an )2-1 .
У цьому випадку множення починається з молодшиз розрядів і зсувається вправо сума проміжних добутків.
М е т о д
3.
Нехай А = 0, а1 а2 а3 . . . аn – множене і В = 0, b1 b2 . . .bn – множник.
Множник, використовуючи метод Горнера, можна записати таким чином:
В = 2-n (b1 * 2n-1 +
b2* 2n-2 + bn-1* 21 + bn * 20) = 2n-1 (. . . ((b1 * 21 * b2) 21 + . . . + b n-1) 21 + bn).
У цьому випадку
С = А * В = 2-n (bn * 0, a1 a2 . . . an + (21 * 0, a1 a2 . . . an) bn-1 + . . . + (2n-1 * 0, a1 a2 . . . an)b1),
що означає: множення починається з молодших розрядів, і множене зсувається вліво на один розряд у кожному такті.
М е т о д
4.
Нехай А = 0, а1 а2 а3 . . . аn – множене і В = 0, b1 b2 . . .bn – множник.
Якщо множник В записати за методом Горнера:
С = А * В = 2-n (. . .(21 (b1 * 0, a1 a2 . . . an) + b2* 0, a1 a2 . . . an) 21 + . . .
. . . + bn-1* 0, a1 a2 . . . an) 21 + bn* 0, a1 a2 . . . an),
то множення починається із старшого розряду і у кожному такті зсувається вліво сума проміжних добутків.
Крім згаданих вище існують і інші методи та алгоритми.
Взагалі множення двійкових чисел може здійснюватися:
- послідовним способом – при цьому одночасно аналізується тільки один розряд
множника і формуються часткові добутки множеного на один розряд множника. Ці добутки послідовно сумуються;
паралельним способом – при цьому одночасно аналізуються всі розряди множника і одразу формується кінцевий результат – добуток множеного на усі розряди множника;
проміжним способом – при цьому одночасно аналізуються декілька розрядів множника і формуються часткові добутки множеного на декілька розрядів множника, ці добутки послідовно сумуються.
Хід роботи:
Ознайомитися з теоретичними відомостями методичних вказівок.
Розробити алгоритм і написати програму додавання
(віднімання) довільних 16-розрядних (із знаковими розрядами) двійкових чисел, поданих у форматі з фіксованою комою у оберненому модифікованому коді
у інструкціях навчального комп’ютера
DeComp
Виконати дослідження програми, розробленої у пункті 1, у покроковому режимі.
Розробити алгоритм і написати програму множення довільних двійкових чисел. Варіант виконання вибрати з таблиці:
Виконати дослідження програми, розробленої у пункті 4, у покроковому режимі.
Оформити і захистити звіт.
3. Вимоги до звіту
Вимоги до звіту аналогічні вимогам до лабораторної роботи 3.
Література.
Нешумова К. А. Электронные вычислительные машины и системы. Учеб. для техникумов спец. ЭВТ. – 2-е изд., доп. и перераб. М.: Высш. шк., 1989.
Рабинович З. Л., Раманаускас В. А. Типовые операции в вычислительных машинах. К.: Техніка, 1980.
Савельев А. Я. Арифметические и логические основы цифрових автоматов: Учебник. – М.: Высш. школа,
1980.
Цилькер Б. Я., Орлов С. А.
Организация ЭВМ и систем. Учебник для вузов. – СПб.: Питер. 2006.



Коментарі

Залишити коментар »

 

Ви не можете залишити коментар.

Для цього, будь ласка, увійдіть або зареєструйтесь.