4.2.2 Команда mul r8
Команда MUL выполняет умножение беззнаковых двоичных чисел. MUL воспринимает старший бит в качестве бита данных, а не бита знака. Операция подразумевает, что множимое располагается в регистре AL. Результаты помещаются в AX.
Влияет на состояние флагов CF и OF следующим образом(флаги AF, PF, SF и ZF не определены): если старшая половина результата (AH) содержит только нули, т. е. результат целиком помещается в младшей половине, то флаги CF и OF устанавливаются в нуль, иначе – в единицу.
Код операции: |11110110|mod 100 reg|,гре mod – два бита режима адресации, reg – три бита регистра.
Размер команды: 16 бит.
В данном ПП данная команда реализована в виде MUL BL, ее машинный код – F6E3.
Алгоритм выполнения команды:
извлечь из AL значение;
извлечь значение из BL;
установить n = 8;
выполнить операцию умножения для n-го разряда;
установить n : =n – 1;
если n равно 0, то закончить выполнение, иначе перейти к пункту 4;
поместить результат в АХ;
установить значение флагов.
4.2.3 Команда DEC AL
Команда DEC уменьшает значение операнда на единицу, не влияет на флаги. В роли операнда может выступать память/регистр размерностью один или два байта. В данном ПП используются такие параметры:
Код операции:FE C8
Размер команды: 16 бит.
Алгоритм выполнения команды:
1) уменьшить AL на единицу.
4.2.4 Команда MOV r/m8,r8
MOV – пересылает регистр в регистр/память размерностью 8 бит.
Код операции: 88 XX
где R – код регистра, XX – код заданного регистра (8 бит).
Размер команды: 16 бит.
Алгоритм выполнения:
1) извлечь регистр;
2) пересылка данных в регистр/память.
4.2.5 Команда JMP (относительная адресация)
Команда JMP выполняет переход к заданной метке.
Формат команды: EB SS,
где S – смещение.
Размер команды: 16 бит.
Алгоритм выполнения:
к содержимому регистра IP прибавляется смещение метки.
4.2.6 Команда JА (относительная адресация)
Команда JА выполняет переход к заданной метке при условии, что флаги СF и ZF равны нулю.
Формат команды: 77 SS,
где S – смещение.
Размер команды: 16 бит.
Алгоритм выполнения:
1) к содержимому регистра IP прибавляется смещение метки.
5 РАЗРАБОТКА СТРУКТУРЫ ЦЕНТРАЛЬНОЙ ЧАСТИ МИКРОЭВМ НА БАЗЕ ГИПОТЕТИЧЕСКОГО МИКРОПРОЦЕССОРА
5.1 Разработка структуры микроЭВМ
На базе спроектированного микропроцессора можно построить микро-ЭВМ, структурная схема которой, как и схема самого микропроцессора, в значительной мере отражает функциональные возможности системы команд микропроцессора. Так для данного ограниченного набора команд нецелесообразно использовать сложную операционную систему, поэтому можно ограничиться ПЗУ, которое содержало бы базовый набор команд ввода-вывода, и позволяло загружать несколько программ в оперативную память, следовательно, нам необходимо ОЗУ и периферийное устройство. Шинный интерфейс будет выглядеть так: шина данных – 20 бит, шина адреса – 32 бита, шина управления – 4 бит. Структурная схема микро-ЭВМ приведена на рисунке 5.1.
Рисунок 5.1 – Структурная схема микро-ЭВМ
Состав схемы на рисунке 4.1:
1) МП- разработанный гипотетический микропроцессор (координирует работу устройств микро-ЭВМ);
2) ОЗУ- оперативное запоминающее устройство (хранит программы выполнения);
3) ПЗУ- постоянное запоминающее устройство;
4) ПУ – периферийные устройства (служат для обмена информации с внешним миром).
- Введение
- 1 Анализ структуры микропроцессора прототипа и алгоритмов выполнения заданного подмножества команд
- 1.1 Структура микропроцессора-прототипа
- 1.2 Адресация основной памяти
- 1.3 Анализ способов адресации операндов и алгоритмов выполнения заданного подмножества команд
- 2 Постановка задач проекта
- 2.1 Требования к структуре и интерфейсу гипотетического микропроцессора
- 2.2 Требования к структуре и интерфейсу алу микропроцессора
- 2.3 Требования к структуре микро эвм
- 3 Разработка алу микропроцессора
- 3.1 Разработка оа для отдельных операций алу
- 3.1.1 Разработка оа для операции сложения add
- 3.1.2 Разработка оа для операции умножения по алгоритму с младших разрядов множителя со сдвигом частичных сумм вправо mul(a)
- 3.1.3 Разработка оа для операции декремента dec
- 3.2 Разработка общего оа алу
- 3.3 Разработка микропрограмм выполнения операций в алу
- 3.3.1 Арифметическая операция сложения add
- 3.3.2 Арифметическая операция беззнакового умножения mul по алгоритму с младших разрядов множителя со сдвигом частичных сумм вправо
- 4.2 Система команд микропроцессора
- 4.2.1 Команда add al,imm8
- 4.2.2 Команда mul r8
- 5.2 Организация шин микро-эвм
- 5.3 Организация озу
- 5.4 Микропрограмма работы микро-эвм
- 6 Разработка программы эмуляции работы микро-эвм
- 6.1 Постановка задачи
- 6.2 Алгоритм работы программы эмуляции
- 6.3 Список процедур и функций
- 6.4 Анализ результатов тестирования программы
- Перечень ссылок
- Приложение а техническое задание на разработку микроэвм
- Приложение б техническое задание на программу-эмулятор
- Приложение в руководство пользователя