- •Міністерство освіти і науки україни
- •2. Архітектура мікро-еом
- •Лабораторна робота №2
- •Теоретична частина двійкові числа
- •Шістнадцяткові числа
- •Лабораторна робота №3
- •Теоретична частина вісімкові числа
- •Лабораторна робота №4
- •Теоретична частина двйково-десяткові числа
- •Двійкова арифметика
- •Додатковий код
- •Лабораторна робота №5
- •Теоретична частина
- •Лабораторна робота №6
- •Теоретична частина угрупування біт
- •Буквено-цифровий код
- •Лабораторна робота №7
- •Теоретична частина
- •Лабораторна робота №8
- •Лабораторна робота №9
- •Теоретична частина
- •Лабораторна робота №10 Тема: шифратори, дешифратори й семисегментні індикатори.
- •Теоретична частина
- •Лабораторна робота №11
- •Теоретична частина
- •Лабораторна робота №12
- •Теоретична частина
- •Напівпровідникова пам'ять
- •Лабораторна робота №13
- •Теоретична частина
- •Лабораторна робота №14
- •Теоретична частина основи математичного забезпечення
- •Чого не "розуміє" мікро-еом
- •Мікро-еом як логічний пристрій
- •Мови програмування
- •Приклади програмування
- •Непряма адресація
- •Хід роботи завдання 1. Виконай вправи.
- •Завдання №2. Вивчити.
- •Завдання №3. Складіть програми мовою асемблера й машинною мовою мп кр580 і перевірте в мікролабораторії. Програми розміщайте у адреси 8000н.
- •Питання для самопідготовки
- •Лабораторна робота №15
- •Хід роботи.
- •Іі. Розробити програму.
- •Лабораторна робота №16
- •Теоретична частина
- •Хід роботи
- •Література
- •Питання для самоперевірки
- •Лабораторна робота №17.
- •Теоретична частина основи математичного забезпечення
- •Чого не "розуміє" мікро-еом
- •Мікро-еом як логічний пристрій
- •Процес розробки програмного забезпечення
- •Програма затримки
- •Іншим фактором, що повинен бути розглянутий при читанні із клавіатури, є виключення "дзвону".
- •Індикація
- •Хід роботи
- •Питання для самопідготовки:
- •Лабораторна робота №18
- •Теоретична частина програма монітора "мікролаб"
- •Програма рахунку
- •Організація програм
- •Переривання
- •Підпрограми й стек
- •Програма затримки
- •Хід роботи.
- •2. Розробити:
Лабораторна робота №5
Тема: ЧИСЛА, КОДУВАННЯ Й АРИФМЕТИЧНА ІНФОРМАЦІЯ
Ціль роботи: Вивчення способів організації й дослідження програм виконання арифметичних операцій, програмування мовою Асемблера й машинній мові.
Теоретична частина
АРИФМЕТИКА В ДОДАТКОВОМУ КОДІ
Мікропроцесор може використовувати числа у формі додаткового коду, тому що він у стані виконувати операції доповнення (інверсії), інкрементування (додавання 1 до числа) і додавання двійкових чисел. Мікропроцесор не пристосований для прямого вирахування. Він використовує суматори й для виконання вирахування оперує над додатковим кодом.
Складемо десяткові числа +5 і +3. Розглянемо процедуру дій у випадку одночасного додавання чисел у десятковому й у додатковому кодах:
1-е число (+5) 0000 0101
+ +
2-е число (+3) 0000 0011
(+8) 0000 1000
Згідно табл. 2. в лабораторній роботі №4 +5 = 0000 0101 у додатковому коді аналогічно +3 = 0000 0011. Тоді числа в додатковому коді 0000 0101 і 0000 0011 складаються, як звичайні двійкові числа, даючи суму 0000 1000 у додатковому коді, тобто 0000 1000 = +810.
Нехай треба скласти десяткові числа +7 і —3. Згідно табл. 2.10 +7 = 0000 0111 і —3 = 1111 1101 відповідно в додатковому коді. Вони потім складаються, як звичайні двійкові числа, і результат 1 0000 0100 виходить у додатковому коді:
1-е число (+7) 0000 0111
+ +
2-е число (—3) 1111 1101
(+4) 1 0000 0100
Зневажити переповненням.
Старший біт є переповненням 8-розрядного регістра, і їм можна зневажити. Одержуємо суму 0000 0100 або +410.
Складемо десяткові числа +3 і —8. Згідно все тої ж табл. 2.10 +3 = 0000 0011 і —8 = 1111 1000. Їхні додаткові коди 0000 0011 і 1111 1000 складаються, як звичайні двійкові числа, що дає 1111 1011 = —510:
1-е число (+3) 0000 0011
+ +
2-е число (—8) 1111 1000
(-5) 1111 1011
Складемо десяткові числа —2 і —5. У додатковому коді згідно табл. 2. в лабораторній роботі №4 —2 = 1111 1110 і —5 = 1111 1011. Два числа 1111 1110 і 1111 1011 складаються, як звичайні десяткові числа, що дає 1 1111 1001:
1-е число (-2) 1111 1110
+ +
2-е число (—5) 1111 1011
(-7) 1 1111 1001
Зневажити переповненням.
Старший біт результату є переповненням 8-розрядного регістра, і їм зневажаємо. Таким чином, сумою двох чисел 1111 1110 і 1111 1011 у додатковому коді буде 1111 1001. Згідно табл. 2. в лабораторній роботі №4 сума 1111 1001 = — 710.
Віднімемо тепер десяткове число +5 з десяткового числа +8. Перше число +8 = 0000 1000, друге +5 = 0000 0101. У додатковий код (інвертувати й додати 1) повинне бути перетворене число 0000 0101, що дає 1111 1011. Потім перше число 0000 1000 складається з додатковим кодом другого 1111 1011, як зі звичайним двійковим числом, що дає 1 0000 0011:
1-е число (+8) 0000 1000
– Додатковий код
2-е число(+5) = 0000 0101 11111011
(+3) 100000011
Зневажити переповненням.
Старший біт є переповненням регістра, їм зневажаємо, що дає результат 0000 0011 = +310. Помітимо, що друге число було представлено в додатковому коді, потім складемо з першим. Використовуючи додатковий код і суматор, мікропроцесор виконує вирахування.
Віднімемо тепер більше десяткове число +6 з десяткового числа +2:
1-е число (+2) 0000 0010
– Додатковий код +
2-е число(+6) = 0000 0110 11111010
(-4) 11111100
Додатковий код першого числа +2 = 0000 0010, друге число +6 = 0000 0110, його додатковий код (інверсія й додавання 1) —1111 1010. Обидва ці коди складені потім, як звичайні двійкові числа, що дає 1111 1100, а згідно табл. 2.10 1111 1100 = —410.
Вправи
1. Скласти наступні десяткові числа зі знаком, використовуючи метод додаткового коду:
а) (+7) б) (+31)
+ +
(+1) (+26).
2. Скласти наступні десяткові числа зі знаком, використовуючи метод додаткового коду:
а) (+8) б) (+89)
+ +
(-5) (-46).
3. Скласти наступні десяткові числа зі знаком, використовуючи метод додаткового коду:
а) (+1) б) (+20)
+ +
(-6) (-60).
4. Скласти наступні десяткові числа зі знаком, використовуючи метод додаткового коду:
а) (-3) б) (-13)
+ +
(-4) (-41).
5. Відняти наступні десяткові числа зі знаком, використовуючи метод додаткового коду:
а) (+7) б) (+113)
- -
(+2) (+50).
6. Відняти наступні десяткові числа зі знаком, використовуючи метод додаткового коду: а) (+3) б) (+12)
- -
(+8) (+63).
ЛІТЕРАТУРА.
1. Описание «Микролаб». (с. 21-22, с. 47-49, с. 97-100).
2. Токхайм Р. Микропроцессоры. Курс и упражнения. (с. 161-168).
3. Гилмор Ч. Введение в микропроцессорную технику М., Мир, 1987, (с. 109-137).