Порядок проведения лабораторного практикума
5.1 Преобразовать заданную последовательность (см. таблицу 5.1):
- десятичных цифр в двоичный код, двоичных цифр в десятичный код,
- восьмеричных цифр в двоичный код, двоичных – в восьмеричный,
- шестнадцатеричных цифр в двоичный код, двоичных – в шестнадцатеричный.
5.2 Выполнить арифметические операции над заданными числами в двоичной, восьмеричной и шестнадцатеричной форме:
В1+В2;
Q1+Q2;
Н1+Н2;
Таблица 5.1 – Варианты задания.
№ варианта | Числа в десятичной форме D1 D2 | Числа в двоичной форме В1 В2 | Числа в восьмеричной форме Q1 Q2 | Числа в шестнадцатеричной форме Н1 Н2 |
126; 51 | 00101101; 01100100 | 1222; 1757 | 1АВ2; А23С | |
72; 48 | 01011001; 10111001 | 7650; 6531 | FA31; 35EF | |
39; 91 | 10001111; 01010101 | 4657; 1747 | 7DF1; 65FF | |
88; 66 | 00111101; 11001010 | 1534; 5431 | ABCD; CDEF | |
67; 44 | 11100011; 00011011 | 1573; 5551 | ACBD; AD7E | |
29; 54 | 00110011; 10110011 | 2345; 7726 | 6AB1; A5C7 | |
41; 55 | 01010101; 01010111 | 1122; 6666 | 6CFE; BCEF | |
62; 19 | 10010011; 01001111 | 1776; 4343 | 30AC; 6E3C | |
59; 54 | 00011111; 01111001 | 2161; 3167 | E71F; FEEF | |
70; 33 | 11001100; 00101101 | 2764; 3367 | 312C; 4516 | |
50; 30 | 01111011; 01010001 | 2456; 7105 | 3892; 2CC7 | |
32; 122 | 10111101; 00101011 | 1606; 6022 | 13С8; 7C5D | |
70; 111 | 00011111; 10100111 | 1530; 4776 | 3AB2; 2BC3 | |
49; 47 | 00101011; 10011101 | 3331; 2777 | 45AB; 36EF | |
98; 51 | 10001111; 01101010 | 3633; 2627 | 3A6E; 2781 | |
81; 55 | 01110110; 01010010 | 1065; 5321 | 9210; 4AA4 | |
101; 33 | 11001101; 00101011 | 2110; 3631 | 817C; DF41 | |
78; 94 | 00111110; 01001111 | 4162; 4630 | 87AE; CA52 | |
79; 70 | 10001111; 01011111 | 1712; 2632 | 7B5A; 54E3 | |
122; 64 | 01110111; 00011101 | 2671; 5173 | BC6E; A58C | |
25; 176 | 10001101; 00111111 | 2277; 4325 | 31AD; F765 | |
81; 91 | 00011101; 01010101 | 5124; 3275 | 7FB4; 563A | |
111; 77 | 10011110; 00110111 | 1745; 4027 | 96EC; D6D7 | |
142; 43 | 00110100; 10011011 | 1457; 3675 | 8FC4; 59A7 | |
128; 44 | 10101011; 00100111 | 3257; 4356 | 1BEF; 4A7E |
5.3 По заданной таблице истинности (таблица 5.2) разработать логическое выражение функции в СДНФ;
Таблица 5.2 - Варианты задания функций
Х1 | Х2 | Х3 | У1 | У2 | У3 | У4 | У5 | У6 | У7 | У8 | У9 | У10 |
Произвести минимизацию логического выражения, используя теоремы алгебры логики;
По полученному выражению разработать схему соединения ЛЭ;
Проверить правильность преобразований путем анализа комбинаций аргументов в получении заданной функции с применением компьютера для разработанной схемы соединений ЛЭ:
- запустить программу kmаp445.exe;
- произвести выбор варианта карты Карно для заданного количества аргументов путем инициализации соответствующего значка панели, отображающего сетку карты Карно;
- задать варианты функций на панели программы следующим образом:
в таблице окна с перечнем наборов произвести выбор заданных
наборов аргументов согласно заданию для всех необходимых
вариантов функций, отметив манипулятором в соответствующих
окнах программы или установить в соответствующие клетки карты
Карно манипулятором значки в соответствии со значениями
вариантов функций;
- сверить результат вычислений, выполненный согласно программе kmаp445.exe с полученным ранее;
- разработать логическое выражение функции в КНФ.
5.3 Запустить программу Sim8080, в появившемся окне отражается модель микропроцессорной системы с составе программной модели микропроцессора, оперативной памяти М, стека, регистров портов ввода-вывода. В левой части окна размещена зона для программирования (введения команд); в правой части аккумулятор, регистры РОН, регистр флагов, портов, указателя стека; в нижней части отображена оперативная память М микропроцессора и ячейки стека. Данные в регистрах A, B, C, D, E, H, L, указателе стека, регистрах портов отображаются в двоичной системе счисления – индекс b, шестнадцатеричной – индекс h, десятеричной – индекс d. Данные в оперативной памяти и стеке отражаются в шестнадцатеричной системе.
Выполнить операции, задаваемые соответствующим набором команд (набор на клавиатуре большими буквами) согласно приложению А:
· передача 8-разрядных данных в регистры A, B, C, D, E, H, L;
· передача 16-разрядных данных в регистровые пары BC, DE, HL;
· обмен данными между регистровыми парами HL и DE;
· передача данных из регистра B в регистр А;
· изучение методов адресации: непосредственной, косвенной;
· последовательный ввод содержимого регистров BC, DE, HL в стек;
· выдача данных из стека в регистры BC, DE, HL;
· сложение содержимого регистров B или C или D или E или H или L с содержимым регистра А;
· сложение содержимого ячейки памяти и содержимого аккумулятора с выдачей результата в аккумуляторе;
· сложение числа (байта) с содержимым аккумулятора с выдачей результата в аккумуляторе;
· вычитание содержимого регистра Н из аккумулятора с выдачей результата в аккумуляторе;
· вычитание содержимого ячейки памяти из содержимого аккумулятора с записью результата в аккумуляторе;
· поразрядное логическое умножение содержимого регистра (В) и аккумулятора, ячейки оперативной памяти и аккумулятора, содержимого аккумулятора и байта;
· поразрядное логическое сложение содержимого аккумулятора и байта;
· реализация логической функции «сложение по модулю 2»
Проверять правильность выполнения команд по данным в приложении А.
Выполнить вычисления с применением команд микропроцессора.
6 СОДЕРЖАНИЕ ОТЧЕТА
1 Преобразования последовательностей цифр и арифметические операции в
двоичной, восьмеричной и шестнадцатеричной системе счисления.
2 Материалы по минимизации заданной логической функции согласно
варианту задания в таблице 5.2. Синтезированная схема соединений ЛЭ.
Выводы, логическое выражение функции в ДНФ и КНФ
3 Результаты вычислений, программу вычислений с применением команд
микропроцессора.
7 КОНТРОЛЬНЫЕ ВОПРОСЫ ДЛЯ САМОСТОЯТЕЛЬНОЙ ПРОВЕРКИ И КОНТРОЛЯ ПОДГОТОВКИ СТУДЕНТОВ К РАБОТЕ
1. Сформулируйте определение позиционной системы счисления.
2. Представьте число в виде геометрической прогрессии, определите разряды числа и веса каждого разряда.
3. Представьте определение основания системы счисления.
4. Поясните правила перевода чисел из двоичной системы счисления в 8-ричную, в 16-ричную.
5. Поясните правила перевода чисел из десятичной системы счисления в 2-ичную и выполнение обратного перевода.
6. Представьте таблицу двоичного сложения, умножения.
7. Какая цель применения обратного и дополнительных кодов при выполнении арифметических операций.
8. Поясните сущность основных функций алгебры логики для одного и двух аргументов.
9. Перечислите системы булевых функций, обладающих функциональной полнотой.
10. Каковы способы задания булевых функций?
11. В чем заключается задача минимизации булевых функций?
12. Поясните сущность ДНФ и СДНФ, КНФ и СКНФ.
13. Укажите способы выражения произвольной функции для элементов КЦУ.
14. Представьте карту Карно для 2, 3, 4 аргументов.
15. Поясните принципы представления функций и способ минимизации с применением карты Карно.
16.Перечислите программно доступные элементы микропроцессора, их назначение и применение.
17.Принцип построения команды, ее характеристики.
18.Принципы функционального разделения команд по группам.
19. Как работает стековая память?
20. Какая информация передается через шины МП?
21. Какие способы адресации используются в командах?
22. Что означает разрядность микропроцессора?
23. Назовите основные элементы структурной схемы МП.
ЛИТЕРАТУРА:
1 Цифровая и вычислительная техника. Учебник. Под ред. Э. В. Евреинова.
- М., Радио и связь, 1991. – 464 с.
2 Вычислительные системы, сети и телекоммуникации. Под ред.
А. П. Пятибратова. Учебник, - М., Финансы и статистика, 2005. – 560 с.
3 Автоматизированные системы управления. Под ред. В. Н. Четверикова. Лабораторный практикум по техническим средствам. Уч. пособие. - М., Высшая школа, 1986. –279 с.
4 Микропроцессоры. Под ред. Преснухина. В 3 книгах, - М., Высшая школа,
1986.
5 Гилмор Ч. Введение в микропроцессорную технику. - М., Мир, 1984.
– 334 с.
6 Б. М. Каган, В. В. Сташин. Микропроцессоры в цифровых системах. - М.,
Энергия, 1979.
ПРИЛОЖЕНИЕ А
Команды микропроцессора
Таблица А.1 - Передача 8-разрядных данных в регистры A, B, C, D, E, H, L
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Передача байта (число 16) в регистр А | |
MVI | B | Передача байта (число 40) в регистр В | |
MVI | C | Передача байта (число 45) в регистр С | |
MVI | D | Передача байта (число 70) в регистр D | |
MVI | E | Передача байта (число 160) в регистр Е | |
MVI | H | Передача байта (число 200) в регистр Н | |
MVI | L | Передача байта (число 255) в регистр L |
Таблица А.2 - Передача 16-разрядных данных в регистры BC, DE, HL
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | BC | Передача 16-разрядных данних (число 500)в регистр ВС | |
LXI | DE | Передача 16-разрядных данных (число 1600)в регистр DE | |
LXI | HL | Передача 16-разрядных данных (число 65535)в регистр HL |
Таблица А.3 – Обмен данными между парами регистров HL і DE
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
XCHG | Обмен данными между парами регистров HL і DE. До выполнения команды в регистрах: в DE – число 1600, в HL – число 65535, после выполнения команды в регистрах: в DE - число 65535, в HL – число 1600. Начальные цифры были введены в ппредыдущей операции (таблица А.2) |
Таблица А.4 – Передача данных с регистра В в регистр А
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MOV | A | B | Передача данных одного из регистров : В или С или D или E или H или L в регистр А. Обозначение соответствующего регистра выполняется в графе „Операнд 2” |
Таблица А.5 – Методы адресации (непосредственная адресация)
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
STA | Передача данных с регистра А в память с адресом ячейки -1 | ||
SHLD | Передача данных з регистров HL в память с адресом ячейки -7 |
Таблица А.6 – Методы адресации (регистровая непрямая адресация). Передача данных из регистра А в память М по адресу, указанному в регистрах HL или DE или BC
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | HL | Занесение в регистры HL номера ячейки памяті (в данном случае – №6) | |
MOV | M | A | Передача данных из регистра А в память М (в данном случае ячейка №6), что указана в регистрах HL |
LXI | DE | Занесение в регистры DE номера ячейки памяти (в данном случае – №3) | |
STAX | DE | Передача данных из регистра А в память М ячейка №3, что указана в регистрах DE | |
LXI | BC | Занесение в регистры BC номера ячейки памяті (в данном случае – №4) | |
STAX | BC | Передача данных из регистра А в память М (в данном случае ячейка №4), что указана в регистрах BC |
Таблица А.7 - Методы адресации (непосредственная адресация). Передача данных из памяти М в регистр A и HL
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LDA | Загрузка регистра А данными из памяти М (в данном случае ячейка №8) | ||
LHLD | Загрузка регистров HL данными из памяти М (в данном случае ячейка №1) |
Таблица А.8 - Методы адресации (непрямая адресация). Передача данных из памяти М в регистр А (вариант 1)
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | HL | Занесение в регистры HL номера ячейки памяти (в данном случае №7), из которой загружаются данные | |
MOV | A | M | Загрузка регистра А данными из памяти М (в данном случае ячейка №7) |
Таблица А.9 - Методы адресации (непрямая адресация). Передача данных из памяти М в регистр А (вариант 2)
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | DE | Занесение в регистры DE номера ячейки памяти (в данном случае №8), из которой загружаются данные | |
LDAX | DE | Загрузка регистра А данными из памяти М (в данном случае ячейка №8) |
Таблица А.10 - Методы адресации (непряма адресація). Передача даних з памяти М в регистр А (вариант 3)
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | BC | Занесення в регістри BC номера ячейки пам’яті (в даному випадку №7), из которой загружаются данные | |
LDAX | BC | Загрузка регистра А данными из памяти М (в данном случае ячейка №7) |
Таблица А.11 –Последовательное введение данных регистров BC, DE, HL в стек
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
LXI | BC | Загрузка числа 160 в регистры BC | |
LXI | DE | Загрузка числа 1600 в регистры DE | |
LXI | HL | Загрузка числа 65535 в регистры HL | |
PUSH | BC | Занесение данных из регистров BC в стек | |
PUSH | DE | Занесение данных из регистров DE в стек | |
PUSH | HL | Занесение данных из регистров HL в стек |
Таблица А.12 –Выведение данных из стека в регистры
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
POP | BC | Видача данных в регистр ВС | |
POP | DE | Видача данных в регистр DE | |
POP | HL | Видача данных в регистр HL |
Таблица А.13 – Сложение числа, что находится в регистре B или C или D или E или H или L с числом, что находится в аккумуляторе A.
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка регистра А (число 40) | |
MVI | H | Загрузка регистра Н (число 10) | |
ADD | H | Виполнение сложения данных регистров с выдачей результата в аккумуляторе (в данном случае число 50). Изменяя численное значение операндов 1 и 2 анализировать изменения в регистре признаков (флагов). |
Таблица А.14 – Сложение числа, что находится в ячейке памяти М с числом, что находится в аккумуляторе A.
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | H | Занесение в регистры Н номера ячейки памяті (в данном случае №5) | |
MVI | M | Загрузка данных в память (в данном случае в ячейки №5 числа 72) | |
MVI | A | Загрузка акумулятора (в даному случае число 88) | |
ADD | M | Выполнение сложения данных ячейки №5 и аккумулятора с выдачей результата в аккумуляторе (в данном случае результат - 160) |
Таблица А.15 – Сложение байта и числа, что находится в аккумуляторе
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
ADI | Виполнение сложения байта (число 40) и аккумулятора (160 – результат предыдущей операции) с выдачей результата в аккумуляторе (в данном случае результат - 200) |
Таблица А.16 – Поразрядное логичное умножение (логичный элемент «И») содержимого регистра В и аккумулятора
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка регистра А (число 1) | |
MVI | B | Загрузка регистра В (число 1) | |
ANA | B | Порозрядное логичное умножение (А•В) с выдачей результата в аккумуляторе. Изменить один из операндов на „0” и проверить правильность результата: 1х1=1; 1х0=0; 0х1=0;0х0=0. |
Таблица А.17 – Поразрядное логичное умножение (логичный элемент «И») содержания ячейки памяти и аккумулятора
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка регистра А (число 1) | |
MVI | H | Загрузка в регистр Н номера ячейки памяти (в данном случае ячейка №3) | |
MOV | M | A | Передача данных из регистра А в память М (в данном случае ячейка №3), |
MVI | A | Загрузка регистра А (число 1) | |
ANA | M | Порозрядное логичное умножение (А•М) с выдачей результата в аккумуляторе. Изменить один из операндов на „0” и проверить правильность результата: 1х1=1; 1х0=0; 0х1=0;0х0=0. |
Таблица А.18 – Поразрядное логичное умножение (функция «И») содержимого байта и аккумулятора
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка числа в аккумулятор (число1) | |
ANI | Порозрядное логичное умножение с выдачей результата в аккумуляторе. Изменить один из операндов на „0” и проверить правильность результата: 1х1=1; 1х0=0; 0х1=0;0х0=0. |
Таблица А.19 – Поразрядное логичное сложение (функция «ИЛИ») содержимого аккумулятора и байта
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка числа в аккумулятор (число 1) | |
ORI | Порозрядное логичное сложение с видачей результата в аккумуляторе. Изменить один из операндов на „0” и проверить правильность результата: 1х1=1; 1х0=0; 0х1=0;0х0=0. |
Таблица А.20 - Поразрядное исключающее „ИЛИ” относительно содержимого байта и аккумулятора
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка числа в аккумулятор (число 0) | |
XRI | Порозрядное логичное исключающее „ИЛИ” с выдачей результата в аккумуляторе. Изменить один из операндов на 0 или 1 и проверить правильность результата: 1х1=0; 1х0=1; 0х1=1;0х0=0. |
Таблица А.21 – Вычитание чисел
Мнемоника | Операнд 1 | Операнд 2 | Комментарий |
MVI | A | Загрузка числа в аккумулятор (число 50) | |
MVI | H | Загрузка числа в регистр Н (число 20) | |
SUB | H | Вычитание числа, что находится в регистре Н от числа в аккумуляторе с видачей результата в аккумуляторе (в данном случае число 30). |