Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1410-Архитектура

.pdf
Скачиваний:
20
Добавлен:
21.02.2016
Размер:
399.05 Кб
Скачать

рядів множника та зсув суми часткових добутків; 3 – початок множення зі старших розрядів множника та зсув множеного; 4 – початок множення зі старших розрядів множника та зсув суми часткових добутків.

2.2. Промоделювати роботу на трьох прикладах, в яких передбачити: звичайний хід виконання операції, переповнення та зникнення порядку.

3. Зміст звіту

Звіт повинен містити структуру пристрою, що моделюється, роздруковану мікропрограму заданого способу множення мовою ЯОЛС, результати моделювання на ПЕОМ.

4.Контрольні запитання та завдання

1.Назвіть основні етапи множення чисел із плаваючою комою.

2.Чи може виникнути переповнення під час множення мантис?

3.В яких ситуаціях виникає справжнє переповнення?

4.Чому наявність переповнення перевіряється після нормалізації резуль-

тату?

5.Що є ознакою переповнення?

6.В яких ситуаціях виникає втрата порядку? Що є ознакою втрати поряд-

ку?

7.Що є результатом операції, якщо відбулась втрата порядку?

8.Чому дорівнює час виконання операції?

9.Як визначається знак результату?

10.Як виконується округлення результату?

11.Які методи прискорення операції можуть застосовуватись під час множення?

ЛАБОРАТОРНА РОБОТА № 8

Вивчення операції ділення чисел із плаваючою комою

Мета роботи: вивчення функціонування АЛП під час виконання операції множення.

1. Теоретичні відомості

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

1.Ділення мантис відбувається з використанням одного з методів, що розглянуто раніше.

2.Порядок результату визначається як різниця порядків діленого та діль-

ника.

Під час ділення можуть виникнути такі явища як переповнення порядку та втрата порядку.

21

2.Порядок виконання

2.1.Розробити структуру АЛП та мікропрограму його роботи мовою ЯОЛС під час виконання ділення. Вихідні дані вибираються за таблицею 9.

 

 

 

 

 

 

 

 

Таблиця 9

 

 

 

Варіанти завдання

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Розрядність

Представлення порядку

 

 

Спосіб ділення

 

 

 

 

 

 

 

 

 

 

 

№ вар.

мантиси

порядку

Зсув залишку

 

Зсув дільника

З відновленням залишку

 

Без відновлення залишку

 

 

 

 

 

 

 

 

 

 

1

8

4

Х

+

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

2

9

5

П

 

 

+

+

 

 

 

 

 

 

 

 

 

 

 

 

3

10

6

Х

+

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

4

11

7

П

 

 

+

 

 

+

 

 

 

 

 

 

 

 

 

 

5

12

7

Х

+

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

6

13

7

П

 

 

+

+

 

 

 

 

 

 

 

 

 

 

 

 

7

14

7

Х

+

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

8

15

8

П

 

 

+

 

 

+

 

 

 

 

 

 

 

 

 

 

9

8

5

Х

+

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

10

9

6

П

 

 

+

+

 

 

 

 

 

 

 

 

 

 

 

 

11

10

7

Х

+

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

12

11

7

П

 

 

+

 

 

+

 

 

 

 

 

 

 

 

 

 

13

12

8

Х

+

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

14

13

7

П

 

 

+

+

 

 

 

 

 

 

 

 

 

 

 

 

15

14

8

Х

+

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

16

15

7

П

 

 

+

 

 

+

 

 

 

 

 

 

 

 

 

 

17

8

6

Х

+

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

18

9

7

П

 

 

+

+

 

 

 

 

 

 

 

 

 

 

 

 

19

10

8

Х

+

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

20

11

8

П

 

 

+

 

 

+

 

 

 

 

 

 

 

 

 

 

22

Закінчення табл. 9

 

Розрядність

 

 

Спосіб ділення

 

 

 

 

Представлення порядку

 

 

 

 

№ вар.

мантиси

порядку

Зсув залишку

Зсув дільника

З відновленням залишку

Без відновлення залишку

 

 

 

 

 

 

 

 

21

12

7

Х

+

 

+

 

 

 

 

 

 

 

 

 

22

13

6

П

 

+

+

 

 

 

 

 

 

 

 

 

23

14

5

Х

+

 

 

+

 

 

 

 

 

 

 

 

24

15

7

П

 

+

 

+

 

 

 

 

 

 

 

 

25

10

6

Х

+

 

+

 

 

 

 

 

 

 

 

 

2.2. Промоделювати роботу пристрою на чотирьох прикладах, в яких розглянути:

звичайний хід виконання операції;

виникнення переповнення;

втрату порядку;

ненормалізований дільник.

3.Зміст звіту

Звіт повинен містити структуру пристрою, що моделюється, роздруковану мікропрограму заданого способу ділення чисел із плаваючою комою мовою ЯОЛС, результати моделювання на ПЕОМ.

4.Контрольні запитання та завдання

1.Що таке характеристика (зсунутий порядок)?

2.Чим визначається розрядність порядку та мантиси?

3.Чи може виникнути переповнення під час ділення мантис?

4.Чому дільник повинен бути нормалізованим?

5.В якій ситуації відбувається переповнення?

6.Що є ознакою переповнення?

7.В якій ситуації виникає втрата порядку?

8.Як визначається знак результату?

9.Чому дорівнює час ділення?

23

ДОДАТОК

МОВА ОПИСУ ЛОГІЧНИХ СХЕМ (ЯОЛС)

Для створення програм мовою ЯОЛС розроблено декілька інтегрованих середовищ розробки, одне з яких – Turbo JAOLS – дозволяє виконувати:

опис структури елементів пристрою, що моделюється;

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

виконання програми;

покрокове відлагодження програм;

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

Програма на ЯОЛС є скінченим числом рядків по одному оператору в кожному рядку. Ядро мови ЯОЛС включає наступні оператори:

ВВЕСТИ

ОПЕРАЦИЯ

ПЕЧАТЬ

ИДТИ К

ЕСЛИ

КОНЕЦ

КОМЕНТАРИИ

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

1. Оператор ВВЕСТИ

Оператор ВВЕСТИ призначений для зміни в ході виконання мікропрограми вмісту якого-небудь регістра або елементу пам'яті. У цих умовах на спеціальне вікно вводу надходить поточний вміст вказаного регістра або елементу пам'яті в двійковому коді. Виконання мікропрограми припиняється для вводу нового значення або зміни старого. Після введення виконання програми продовжується.

{ mmm } ВВЕСТИ [ операнд1 ],

де { mmm } – позначка (1...999);

операнд1 – будь-який з перерахованих нижче варіантів

рXX – регістр із номером XX (0…39);

пXXХ – комірка пам’яті з адресою ХХХ (0…254);

р(рXX) – регістр з адресою, що зберігається в регістрі ХХ;

п(пXXX) – комірка пам’яті з адресою, що зберігається в комірці з адресою ХХХ;

р(пXXX) – регістр, адреса якого зберігається в комірці пам’яті;

п(рXX) – комірка пам’яті, адреса якої зберігається в регістрі.

24

2. Оператор ОПЕРАЦИЯ

Оператор ОПЕРАЦИЯ призначений для виконання різних дій над регістрами, елементами пам'яті і константами, таких як: додавання, віднімання, логічне «І», логічне «АБО», присвоєння, додавання по модулю «2», циклічний зсув, логічний зсув, додавання з циклічним перенесенням, логічне «НІ».

За допомогою спеціального знаку (~) в операції братиме участь інверсне значення цього операнда, а сам він у цих умовах не зміниться. В операціях може брати участь безпосередньо регістр або елемент пам'яті, окремий біт або група розрядів, константи в двійковій, десятковій або шістнадцятковій системі числення, а також регістри або елементи пам'яті, що адресовано за непрямою адресою (рос. мов. – «косвенно»).

{ mmm } ОПЕРАЦИЯ [ операнд1] [ функція ] [ операнд2 ] {~}

де { mmm } : позначка (1…999);

операнд1 : будь-який з перерахованих нижче варіантів

pXX;

pXX(NN);

pXX(NN:nn);

пXXX;

пXXX(NN);

пXX(NN:nn);

p(pXX);

p(пXXX);

п(пXXX);

п(pXX);

XX – номер регістра (0…39);

ХХХ – номер елементу пам'яті (0…254); NN – номер старшого біта (включно); nn – номер молодшого біта (включно).

операнд2 : може приймати ті ж значення, що і операнд1, а також будь-яке

знаведених нижче:

dddd – десяткова константа (–231…231);

$hhh – шістнадцяткова константа (0…FFFFFFFFh);

#bbb – (0…1111 1111 1111 1111 1111 1111 1111 1111).

Вказівка номерів розрядів дозволяє передавати вміст регістра або елементи пам'яті з перекосом на декілька розрядів вліво або вправо. Наприклад, у необхідності передати вміст регістра 1 у регістр 2, зсуньте на 2 розряди вліво, щоб виконалась дія:

Операція Р2(30:02) = Р1(28:0)

Вміст регістра 2 при цьому містить число з регістра 1, що зсунуте на 2 розряди вліво. У регістрі 1 число не зсувалося.

функція – будь-яка з перерахованих нижче дій над операндами: = присвоєння; + додавання;

25

– віднімання; / логічне додавання «АБО»;

& логічне множення «И»; @ додавання по модулю; >> зсув вправо логічний; << зсув вліво логічний; >] зсув вправо циклічний [< зсув вліво циклічний;

++додавання з циклічним переносом (тільки для версій 2.10 і старше);

~ознака інверсії другого операнда.

3.Оператор ПЕЧАТЬ

Оператор ПЕЧАТЬ дає можливість виводу значень регістрів, комірок па- м'яті, а також текстових повідомлень у ході виконання мікропрограми.

а) {mmm} ПЕЧАТЬ [операнд1]..[операнд7],

де {mmm} – позначка (1..999);

операнд1 … операнд7 – будь-який з перерахованих нижче варіантів: рХХ;

пXXX; p(pXX); p(пXXX); п(пXXX); п(pXX);

XX – номери регістрів (0…39);

ХХХ – номер елементу пам'яті (0…254).

б) {mmm} ПЕЧАТЬ «будь-який текст»,

де {mmm} – позначка (1…999).

4. Оператор ИДТИ_К

Оператор ИДТИ_К призначений для безумовної передачі управління оператору з позначкою. При цьому програма продовжує виконуватись з рядка з позначкою, що вказана. Позначка повинна знаходитись у діапазоні значень 1…999. В операторі ИДТИ_К може бути вказано безпосередньо значення позначки регістра або елемент пам'яті, що адресовано побічно.

{mmm} ИДТИ_К [ вираз ],

де {mmm} – позначка (1…999);

вираз – будь-який з перерахованих нижче варіантів:

ddd – позначка для переходу (1…999);

рХХ;

пXXX;

p(pXX);

p(пXXX);

п(пXXX);

п(pXX);

ХХ – номер регістра (0…39);

ХХХ – номер елементу пам'яті (0…254).

26

5. Оператор ЕСЛИ

Оператор ЕСЛИ виконує операції відношення над операндами, такі як: =, <>, <=, >=. Якщо відношення істинне, то наступною виконується команда, вказана в цьому ж рядку за оператором ЕСЛИ, інакше буде виконуватись наступний рядок.

{mmm} ЕСЛИ [опер1] [відношення] [опер2] [оператор],

де {mmm} – (1..999);

операнд1 – будь-який з перерахованих нижче варіантів:

pXX;

pXX(NN);

pXX(NN:nn);

пXXX;

пXXX(NN);

пXX(NN:nn);

p(pXX);

p(пXXX);

п(пXXX);

п(pXX);

XX – номер регістра (0…39);

ХХХ – номер елементу пам'яті (0…254); NN – номер старшого біта (включно);

nn – номер молодшого біта (включно). Увага !!! NN => nn.

операнд2 – може приймати ті ж значення, що і операнд1, а також будьяке з приведених нижче:

dddd – десяткова константа (–1*2^31...2*2^31);

$hhh – шістнадцяткова константа (0…FFFFFFFFh);

#bbb – двійкова константа (0 .. 1111 1111 1111 1111 1111 1111 1111 1111);

відношення – будь-які з відносин, що перераховані нижче операндами: = дорівнює; < менше; > більше;

<= менше або дорівнює; >= більше або дорівнює; < > нерівний;

оператор – будь-який з перерахованих операторів:

ОПЕРАЦИЯ;

ИДТИ_К;

ВВЕСТИ;

ПЕЧАТЬ;

КОНЕЦ;

КОМЕНТАРИИ.

УВАГА!!! Оператор ЕСЛИ не дозволено використовувати як оператор.

27

6. Оператор КОНЕЦ

Оператор КОНЕЦ припиняє виконання мікропрограми.

{mmm} Конец

7. Коментар

Оператор РЕМАРКИ (одинарна лапка `) призначений для вказівок у тексті мікропрограми коментарів, що різко підвищує наочність мікропрограми. Під час виконання програми ігнорується.

БІБЛІОГРАФІЧНИЙ СПИСОК

1.Жмакин, А. П. Архитектура ЭВМ [Текст] / А. П. Жмакин. – СПб. : БХВ-Петербург, 2010. – 352 с.

2.Каган, Б. М. Электронные вычислительные машины и системы [Текст] / Б. М. Каган. – М. : Энергоатомиздат, 1991. – 592 с.

3. Майоров, С. А. Принципы организации цифровых машин [Текст] / С. А. Майоров, Г. И. Новиков. – Л. : Машиностроение, 1974. – 432 с.

4.Майоров, С. А. Структура электронных вычислительных машин [Текст] / С. А. Майоров, Г. И. Новиков. – Л. : Машиностроение, 1979. – 384 с.

5.Орлов, С. А. Организация ЭВМ и систем [Текст] / С. А. Орлов, Б. Я. Цилькер.

– СПб. : Питер, 2007. – 672 с.

6.Паккард, Д. Архитектура компьютера [Текст] / Паккард Д., Хэннеси Дж. –

М.; СПб. : Питер, 2000. – 778 с.

7.Столлингс, У. Структурная организация и архитектура компьютерных систем [Текст] / У. Столлингс. – СПб. : Вильямс, 2002. – 896 с.

28

ЗМІСТ

 

ЛАБОРАТОРНА РОБОТА № 1 .......................................................................................

3

Ознайомлення з мовою опису логічних схем ЯОЛС. Виконання операцій

 

мовою ЯОЛС............................................................................................................

3

ЛАБОРАТОРНА РОБОТА № 2 .......................................................................................

6

Вивчення алгоритмів виконання операції алгебраїчного додавання

 

над десятковими числами.......................................................................................

6

ЛАБОРАТОРНА РОБОТА № 3 .......................................................................................

9

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

9

ЛАБОРАТОРНА РОБОТА № 4 .....................................................................................

12

Дослідження логічних методів прискореного множення (множення

 

з аналізом декількох розрядів) .............................................................................

12

ЛАБОРАТОРНА РОБОТА № 5 .....................................................................................

14

Вивчення способів ділення чисел із фіксованою комою .........................................

14

ЛАБОРАТОРНА РОБОТА № 6 .....................................................................................

17

Вивчення операції додавання двійкових чисел із плаваючою комою....................

17

ЛАБОРАТОРНА РОБОТА № 7 .....................................................................................

19

Вивчення операції множення чисел із плаваючою комою ......................................

19

ЛАБОРАТОРНА РОБОТА № 8 .....................................................................................

21

Вивчення операції ділення чисел із плаваючою комою...........................................

21

ДОДАТОК........................................................................................................................

24

БІБЛІОГРАФІЧНИЙ СПИСОК.....................................................................................

28

29

Навчальне видання

Самков Олександр Миколайович Мудрик Олександр Богданович Єгоров Олег Йосипович

АРХІТЕКТУРА КОМП’ЮТЕРІВ

Розділ: «Арифметико-логічні пристрої»

Методичні вказівки до виконання лабораторних робіт

Редактор Ю. Г. Дішкант

Комп’ютерна верстка Ю. М. Волошин

Формат 60х84 1/16. Ум. друк. арк. 1,69. Обл.-вид. арк. 1,88.

Тираж 50 пр. Зам. № _____.

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

Свідоцтво суб'єкта видавничої справи ДК № 1315 від 31.03.2003 Адреси видавництва та дільниці оперативної поліграфії:

вул. Лазаряна, 2; Дніпропетровськ, 49010

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