ofk 1

Міністерство освіти і науки України
Національний університет „Львівська політехніка”
Кафедра СКС












Звіт
з лабораторної роботи №1
з дисципліни: “Організація та функціонування комп’ютерів”
на тему:
“Ознайомлення з організацією навчального комп’ютера - симулятора DeComp”











Виконав: ст. гр. КІ-16
Фреїшин С.І.
Прийняв: ст. викл.
Кудрявцев О.Т.




Львів -2012

Лабораторна робота № 1

Тема: “Ознайомлення з організацією навчального комп’ютера - симулятора DeComp”

Мета:
Вивчити організацію навчального комп’ютера – симулятора DeComp, призначення окремих блоків і можливості їх використання;
Засвоїти порядок уведення інформації в регістри та пам’ять симулятора навчального комп’ютера, навчитися вводити і запускати найпростішу програму.
Вивчити теоретичні основи побудови систем числення, які використовуються у комп’ютерах;
Засвоїти порядок використання двійкової системи числення.

Теоретичні відомості:
Загальні поняття про системи числення
Система числення - це сукупність прийомів та правил для зображення чисел за допомогою цифрових символів (цифр), що мають визначені кількісні значення (числовий еквівалент).
У загальному випадку, в довільній системі числення, запис числа називається кодом і у скороченому вигляді може бути відображений таким чином:
A= anan-1...a2a1a0
Окрему позицію запису числа називають розрядом, а номер позиції n – номером розряду. Кількість розрядів запису числа називається розрядністю числа.
Позиційна система числення - це така система, в якій значення символу (числовий еквівалент) залежить від його положення в записі числа. Будь-яка позиційна система числення характеризується основою.
Основа (або базис) d натуральної позиційної системи числення - це впорядкована послідовність кінцевого набору знаків або символів, які використовуються для зображення числа у данній систем, у якій значення кожного символу залежить від його позиції (розряду) у зображенні числа.
Однорідна позиційна система числення - це така позиційна система числення, в якій є одна основа d, а вага i-го розряду дорівнює p i.
Вага розряду p i числа у позиційній системі числення – це відношення
P i = d i / d 0 = d i
де i - номер розряду справа наліво, а d 0 це перший розряд ліворуч від коми і його номер дорівнює 0, а значення дорівнює 1.
Кожне число у позиційній системі числення з основою d може бути записане у вигляді дискретної суми степенів основи системи з відповідними коефіцієнтами. Таку форму ще називають розгорнутою або повною:
13 EMBED Microsoft Equation 3.0 141513 EMBED Microsoft Equation 3.0 1415 (1)

де: Ad – довільне число у системі числення з основою d;
13 EMBED Microsoft Equation 3.0 1415 – коефіцієнти ряду або цифри системи числення;
i = (n, n-1, n-2, , 1, 0, -1, , -m+1, -m) – номер розряду цілої (n) або дробової (-m) частини числа.
У сучасних комп’ютерних системах найбільше застосовуються позиційні системи числення. В універсальних цифрових комп’ютерах використовуються тільки позиційні системи числення, а у спеціалізованих комп’ютерах використовуються такі системи числення (в тому числі і не позиційні), які дозволяють значно спростити апаратуру процесора, зображення чисел і операції над ними для обчислення вузького класу задач.
Позиційні системи числення, які застосовуться у комп’ютерах

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

Вісімкова система числення
Вісімкова система числення має основу d = 8 i можливі значення розрядів
·i = 0, 1, 2, 3, 4, 5, 6, 7. Число вісім, яке дорівнює основі системи числення, записується двома цифрами у вигляді 10. Запис команд і даних програми у вісімковій системі числення у три рази коротше, ніж у двійковій.

Шістнадцяткова система числення
Шістнадцяткова система числення має основу d = 16 і
·i = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Для запису чисел у системі числення з основою, більше ніж 10, арабських цифр виявляється недостатньо і доводиться додатково вводити символи, що однозначно подають цифри від 10 до 15. У даній системі числення застосовують великі латинські символи для позначення цифр від 10 до 15.

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

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

Особливості переведення вісімкових і шістнадцяткових чисел до двійкової системи числення і навпаки
Будь-яке однорозрядне вісімкове число можна записати у вигляді трьохрозрядного двійкового;
Будь-яке трьохрозрядне двійкове число можна записати у вигляді однорозрядного вісімкового.
Такий самий висновок можна зробити і для шістнадцяткових чисел від 016 до 1516, але у двійкових числах треба розглядати чотири розряди. Група з трьох двійкових розрядів називається тріада, а з чотирьох двійкових розрядів – тетрада. На підставі цих положень можна стверджувати, що:
Для переведення вісімкових чисел до двійкової системи числення необхідно кожну вісімкову цифру замінити еквівалентною їй двійковою тріадою (для шістнадцяткових чисел – тетрадою).
Для переведення двійкових чисел до вісімкової системи числення необхідно двійкове число розбити на тріади праворуч і ліворуч від коми (для шістнадцяткових чисел – на тетради). Якщо останні ліворуч і праворуч тріади (тетради) будуть неповні, їх потрібно доповнити нулями. Потім кожну двійкову тріаду (тетраду) замінити одною еквівалентною їй вісімковою (шістнадцятковою) цифрою.

Переведення чисел з будь-якої позиційної системи числення до десяткової системи
При необхідності переведення чисел до десяткової системи з інших систем числення, у загальному випадку використовується формула повного запису числа (1). При використанні цього способу всі арифметичні дії виконуються у тій системі числення, до якої дане число переводиться. Число записується у розгорнутій (повній) формі у своїй системі числення, але значення розрядів записуються у десятковій формі. Виконавши всі операції за правилами десяткової арифметики ми отримаємо результат у десятковій формі.
Порядок виконання лабораторної роботи № 1:
Вивчити теоретичні відомості до лабораторної роботи № 1.
Дайте відповіді на такі контрольні питання:
8)Які системи числення застосовуються у сучасних комп’ютерах?
Систем числення – це сукупність прийомів і правил для зображення чисел за допомогою цифрових символів, що мають визначені кількісні значення(числовий еквівалент).У сучасних комп’ютерних системах найбільше застосовуються позиційні системи числення. В універсальних цифрових комп’ютерах використовуються тільки позиційні системи числення, а у спеціалізованих комп’ютерах використовуються такі системи числення(в тому числі і не позиційні), які дозволяють значно спростити апаратуру процесора, зображення чисел і операції над ними для обчислення вузького класу задач.
Запустити програму “Симулятор навчальної ЕОМ DeComp” (файл DeComp.exe) і включити живлення на панелі навчального комп’ютера.
За допомогою набірного поля і кнопок “Занесення з набірного поля”, записати до регістрів процесора такі значення двійкових кодів:
до РА
0101 0101 0101

до РД
0011 0011 0011 0011

до А
0000 1111 0000 1111

до РІ
0000 0000 1111 1111

до ЛАІ
1010 1010 1010

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

Порядок виконання:
На панелі управління увімкнув живлення;
З допомогою відповідних перемикачів у набірне поле ввів число 0101 0101 0101;
Кнопкою «РА» в панелі “Занесення з набірного поля” заніс в регістр адреси пам’яті число 0101 0101 01012;
У набірне поле ввів число 0011 0011 0011 00112;
Кнопкою «РД» заніс його в регістр даних пам’яті;
У набірне поле ввів число 0000 1111 0000 11112;
Кнопкою «А» заніс його в акумулятор;
У набірне поле ввів число 0000 0000 1111 11112;
Кнопкою «РІ» ввів його в регістр інструкції пристою управління;
У набірне поле ввів число 1010 1010 10102;
Кнопкою «ЛАІ» заніс його в лічильник адреси інструкції.

За допомогою набірного поля і кнопок “Операція з пам’яттю” записати до 5-ти сусідніх комірок пам’яті з адресами 20, 21, 22, 23 та 24 числа 16, 17, 18, 19 та 20. Попередньо всі десяткові числа перевести до двійкової системи числення і результати записати у робочий зошит для подання у звіті. Вміння виконувати вказані дії продемонструвати викладачу.





Частка
Остача

Частка
Остача

Частка
Остача

Частка
Остача

16ч2=8
0

17ч2=8
1

18ч2=8
0

19ч2=8
1

8ч2=4
0

8ч2=4
0

9ч2=4
1

9ч2=4
1

4ч2=2
0

4ч2=2
0

4ч2=2
0

4ч2=2
0

2ч2=1
0

2ч2=1
0

2ч2=1
0

2ч2=1
0

1ч2=0
1

1ч2=0
1

1ч2=0
1

1ч2=0
1

1610=100002

1710=100012

1810=100102

1910=100112


Частка
Остача

Частка
Остача

Частка
Остача

Частка
Остача

20ч2=10
0

21ч2=10
1

22ч2=11
0

23ч2=11
1

10ч2=5
0

10ч2=5
0

11ч2=5
1

11ч2=5
1

5ч2=2
1

5ч2=2
1

5ч2=2
1

5ч2=2
1

2ч2=1
0

2ч2=1
0

2ч2=1
0

2ч2=1
0

1ч2=0
1

1ч2=0
1

1ч2=0
1

1ч2=0
1

2010=101002

2110=101012

2210=101102

2310=101112


Частка
Остача

24ч2=12
0

12ч2=6
0

6ч2=3
0

3ч2=1
1

1ч2=0
1

2410=110002



Частка Остача

25ч2=12 1
12ч2=6 0
6ч2=3 0
3ч2=1 1
1ч2=0 1
2510=10011
Частка Остача
30ч2=15 0
15ч2=7 1
7ч2=3 1
3ч2=1 1
1ч2=0 1
3010=011112









Порядок виконання:
Скинувши значення набірного поля, заніс нульові значення в регістр адреси пам’яті, в регістр даних пам’яті, в акумулятор арифметико-логічного пристрою, в регістр інструкції пристрою управління і в лічильник адреси інструкції.
В набірне поле ввів число 101002 (2010) і заніс його в регістр адреси пам’яті.
В набірне поле ввів число 100002(1610) і заніс його в регістр даних пам’яті.
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
В набірне поле ввів число 100012 (1710) і заніс його в регістр пам’яті.
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
В набірне поле ввів число 100102 (1810) і заніс його в регістр пам’яті.
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
В набірне поле ввів число 101112 (1910) і заніс його в регістр пам’яті.
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
В набірне поле ввів число 101002 (2010) і заніс його в регістр пам’яті.
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;

Записати у пам’ять описану нижче програму, яка додаватиме числа, що знаходяться у 10-й та 11-й комірках пам’яті, а результат запише до 12-ї комірки. Програму розмістити у оперативній пам’яті, починаючи з комірки за адресою 0 (нуль). Попередньо у 10-ту та 11-ту комірки занести числа відповідно до свого варіанту:


№ за списком
Число 1
Число 2

19
25
30













Відповідна програма у мнемонічних кодах буде мати такий вигляд:

Мнемонічний
код інструкції
Дія, яку виконує інструкція

LOAD 10
завантажити (прочитати) значення числа з 10-ї комірки пам’яті до
акумулятора;

ADD 11
додати до числа в акумуляторі значення числа з 11-ї комірки пам’яті і
результат зберегти в акумуляторі;

STORE 12
зберегти (записати) значення числа з акумулятора до 12-ї комірки пам’яті;

HALT
зупинити роботу процесора.






У двійковому поданні дана програма матиме наступний вигляд:

0000 0000 0000 1010 – двійковий код 1-ої інструкції
0010 0000 0000 1011 - - “ - 2-ої інструкції
0001 0000 0000 1100 - - “ - 3-ої інструкції
0111 1100 0000 0000 - - “ - 4-ої інструкції


Порядок виконання:
В набірне поле ввів число 10102(1010);
Заніс його в регістр адреси пам’яті;
В набірне поле ввів число 100112(2510);
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
В набірне поле ввів число 011112(3010);
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
Ввів у набірне поле число 0000 0000 0000 (02);
Записав його в регістр адреси пам’яті;
У набірне поле записав двійковий код 1-ї інструкції 0000 0000 0000 1010;
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
У набірне поле записав двійковий код 2-ї інструкції 0010 0000 0000 1011;
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
У набірне поле записав двійковий код 3-ї інструкції 0001 0000 0000 1100;
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
На пульті управління збільшив значення адреси пам’яті на одиницю (кнопкою «+1»)
У набірне поле записав двійковий код 4-ї інструкції 0111 1100 0000 0000;
Заніс його в регістр даних пам’яті;
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
Ввів у набірне поле 0000 0000 0000 (02);
Кнопкою «ЛАІ» заніс дані з набірного поля в лічильник адреси інструкції;



Виконати програму у автоматичному режимі і перевірити результат у 12-й комірці, прочитавши значення 12-ї комірки пам’яті.

Порядок виконання:
На пульті управління встановив автоматичний режим роботи;
Натиснув на кнопку «Пуск»;
Отримав наступні значення регістрів:
Регістр адреси пам’яті: 0000 0000 0011
Регістр даних пам’яті: 0111 1100 0000 0000
Акумулятор: 0000 0000 0010 1010
Регістр інструкцій: 0111 1100 0000 0000
Лічильник адреси інструкції: 0000 0000 0011
В набірне поле адресу 12-ої комірки пам’яті (11002);






Частка
Остача

55ч2=27 1
27ч2=13 1
13ч2=6 1
6ч2=3 0
3ч2=1 1
1ч2=0 1
5510=111011



Вніс дані в регістр адреси пам’яті;
Прочитав дані 12-ої комірки пам’яті (кнопкою «Читання» на пульті управління);
Отримав наступне значення регістру даних пам’яті: 0000 0000 0011 1011
0000 0000 0011 10112=5510

Значення акумулятора, 12-ої комірки пам’яті та необхідних обчислень збігаються, значить обчислення проведені вірно.

Онулити 12-ту комірку, знову встановити у ЛАІ адресу першої інструкції – адресу 0 і дослідити цю програму, виконавши її у покроковому режимі. Після виконання кожної інструкції записати у таблицю вміст усіх регістрів процесора.

Порядок виконання:
Скинув значення набірного поля;
Вніс дані в регістр даних 12-ої комірки пам’яті (РА: 0000 0000 1100);
Кнопкою «Запис» записав число з регістру даних пам’яті за відповідною адресою;
Вніс дані в лічильник адреси інструкції;
На пульті управління встановив покроковий режим роботи;
Розпочав виконання інструкцій і отримав наступні значення регістрів процесора:






крок
РА
РД
А
РІ
ЛАІ
РО

1
0000 0000 1100
0000 0000 0010 0011
0000 0000 0010 1010
0000 0000 0000 1010
0000 0000 0011
0000 0000 0000 0000

2
0000 0000 1011
0000 0000 0001 1100
0000 0000 0011 1111
0010 0000 0000 1011
0000 0000 0010
0000 0000 0000 0000

3
0000 0000 1100
0000 0000 0011 1111
0000 0000 0011 1111
0001 0000 0000 1100
0000 0000 0011
0000 0000 0010 1010

4
0000 0000 0011
0111 1100 0000 0000
0000 0000 0011 1111
0111 1100 0000 0000
0000 0000 0011
0000 0000 0010 1010


Зміни у регістрах процесора:
На першому кроці ЕОМ виконує інструкцію LOAD 10 (0000 0000 0000 1010):
звертається до 10-ої комірки пам’яті (РА: 0000 0000 1010);
зчитує її вмістиме (число 25; РД: 0000 0000 0001 0011);
записує його в акумулятор (А: 0000 0000 0001 0011);
На другому кроці ЕОМ виконує інструкцію ADD 11 (0010 0000 0000 1011):
зветрається до 11-ої комірки пам’яті (0000 0000 1011);
зчитує її вмістиме (число 30; РД: 0000 0000 0000 1111);
додає до акумулятора число з 11-ої комірки пам’яті і зберігає результат в акумуляторі (число 52; А: 0000 0000 0011 1011);
На третьому кроці ЕОМ виконує інструкцію STORE 12:
звертається до 12-ої комірки пам’яті (РА: 0000 0000 1100);
записує в неї дані з акумулятора (число 52; РД: 0000 0000 00114л 1011);
На четвертому кроці ЕОМ:
звертається до 3-ої комірки пам’яті (РА: 0000 0000 0011);
зчитує її вмістиме (інструкція HALT; РД: 0111 1100 0000 0000);
записує її до регістру інструкцій;
зупиняє роботу процесора.
Висновок:
На лабораторній роботі №1 я вивчив організацію стимулятора DeComp, його блоків (пульта управління, пам’яті, АЛП, пристроєм управління) і можливостей їх використання (введення даних в регістри процесора і читання даних з пам’яті);
Засвоїв порядок введення інформації в регістри та пам’ять симулятора (з допомогою набірного поля) навчального комп’ютера, навчився вводити і запускати найпростішу программу.
Вивчив теоретичні основи побудови систем числення, які використовуються у комп’ютерах;
Засвоїв порядок використання двійкової системи числення.















·Root EntryEquation Native

Приложенные файлы

  • doc 19143717
    Размер файла: 172 kB Загрузок: 1

Добавить комментарий