
- •А.Ю.Бальзамов о.В.Шишов
- •Введение
- •1. Представление информации в цифровых вычислительных машинах и микропроцессорных системах
- •1.1. Системы счисления
- •1.2. Перевод чисел из одной системы счисления в другую
- •1.3. Формыпредставлениячисел
- •Итак, диапазон представимых чисел в нормальной форме равен
- •1.4. Кодирование символов и знаков
- •1.5. Выполнение арифметических операций над числами с фиксированной запятой
- •1.6. Выполнение арифметических операций над числами с плавающей запятой
- •2. Система команд микропроцессора кр580вм80а
- •2.1. Программная модель микропроцессора
- •2.2. Форматы команд и способы адресации
- •2.3. Условные обозначения в системе команд
- •2.4. Команды передачи данных
- •2.4.1. Команды пересылки данных регистр - регистр или регистр - ячейка памяти с косвенной адресацией
- •Xchg (Exchange h and l with d and e)
- •2.4.2. Команды загрузки непосредственных данных
- •2.4.3. Команды обращения к памяти с прямой адресацией
- •2.4.4. Команды обращения к стеку
- •Xthl (Exchange stack top with h and l)
- •Inr r (Increment)
- •2.5.2. Арифметические команды с данными двойной длины
- •Inx rp (Increment register pair)
- •2.5.3. Арифметические команды с непосредственными данными
- •2.5.4. Логические команды
- •2.5.7. Вспомогательные команды
- •2.6. Команды управления
- •2.6.1. Команды безусловной передачи управления
- •2.6.2. Команды условной передачи управления
- •2.6.3. Специальные команды управления
- •2.7. Машинные коды команд
- •3. Средства отладки программного обеспечения
- •3.1. Учебно-отладочное устройство "Электроника-580"
- •3.1.1. Общие сведения
- •3.1.2. Устройство и работа уоу
- •3.1.3. Клавиатура пульта управления
- •3.1.4. Индикатор адреса и данных
- •3.1.5. Просмотр и изменение содержимого памяти и регистров
- •3.1.6. Работа с контрольными точками
- •3.1.7. Выполнение программ пользователя
- •3.2. Кросс-средства отладки программного обеспечения
- •3.2.1. Составление исходной программы
- •3.2.2. Программа ассемблирования avmac
- •3.2.3. Программа редактора связей avlink
- •3.2.4. Программа отладчика-симулятора avsim
- •4. Задания и практические рекомендации по выполнению лабораторных работ
- •4.1. Лабораторная работа №1. Простые вычисления
- •4.2. Лабораторная работа №2. Управление индикацией
- •4.3. Лабораторная работа №3. Объединение программ
- •4.4. Лабораторная работа №4. Сложные вычисления
- •4.5. Пример программы к лабораторной работе №1
- •4.6. Пример программы к лабораторной работе №2
- •4.7. Рекомендации по построению программы к лабораторной работе № 3
- •4.8. Пример программы к лабораторной работе №4
- •5. Задания для контрольных работ
- •5.1. Контрольная работа №1. Системы счисления и коды
- •5.2. Контрольная работа №2. Микропроцессорные системы
- •Вариант 9
- •Библиографический список
- •Содержание
- •Программирование и отладка программ на ассемблере Практикум по основам микропроцессорной техники
- •430000, Г. Саранск, ул. Советская, 24
2.4.4. Команды обращения к стеку
PUSH RP'' (Push)
<RP''> M(<SP>-1)M(<SP>-2); <SP>-2SP
Запись в стек. Содержимое старшего регистра регистровой пары RP'' перемещается в ячейку памяти, адрес которой на единицу меньше исходного содержимого регистра SP. Содержимое младшего регистра регистровой пары RP'' помещается в ячейку памяти, адрес которой меньше исходного содержимого регистра SP на 2. Содержимое самого регистра SP уменьшается на 2.
Циклов: 3
Тактов: 11
Признаки: отсутствуют
POP RP'' (Pop)
< M(<SP>)M(<SP>+1)> RP''; <SP>+2SP
Чтение из стека. Содержимое ячейки памяти, адрес которой определяется содержимым регистра SP, засылается в младший регистр регистровой пары RP''. Содержимое ячейки памяти, адрес которой на единицу больше исходного содержимого регистра SP, засылается в старший регистр регистровой пары RP''. Содержимое самого регистра SP увеличивается на 2.
Циклов: 3
Тактов: 10
Признаки: устанавливаются только при выполнении команды POP PSW
Xthl (Exchange stack top with h and l)
<H> <M(<SP>+1)>; <L><M(<SP>)>
Обмен содержимым регистровой пары H с вершиной стека. Регистр L обменивается содержимым с ячейкой памяти, адрес которой определяется содержимым регистра SP. Регистр Н обменивается содержимым с ячейкой памяти, адрес которой на единицу больше содержимого регистра SP.
Циклов: 5
Тактов: 18
Признаки: отсутствуют
2.4.5. Команды ввода-вывода
IN N (Input)
<N> A
Данные, выданные адресуемым портом, передаются в аккумулятор.
Циклов: 3
Тактов: 10
Признаки: отсутствуют
OUT N (Output)
<A> N
Содержимое аккумулятора выдается в адресуемый порт.
Циклов: 3
Тактов: 10
Признаки: отсутствуют
2.5. Команды обработки данных
Данная группа команд выполняет арифметические, логические и сдвиговые операции с данными, находящимися в регистрах и памяти. Все команды этой группы (за некоторым исключением) изменяют признаки состояния Z, S, P, CY, AC. Операции вычитания выполняются путем сложения с дополнением к вычитаемому, при этом признак ПЕРЕНОС выполняет функции признака ЗАЕМ.
2.5.1. Арифметические команды
ADD R (Add)
<A> + <R> A
Содержимое регистра R сложить с содержимым аккумулятора, результат операции разместить в аккумуляторе.
Циклов: 1 / 2
Тактов: 4 / 7
Признаки: Z, S, P, CY, АС
ADC R (Add with carry)
<A> + <R> + <CY> A
Содержимое регистра и признака переноса сложить с содержимым аккумулятора, результат операции разместить в аккумуляторе.
Циклов: 1 / 2
Тактов: 4 / 7
Признаки: Z, S, P, CY, AC
SUB R (Subtract)
<A> - <R> A
Содержимое регистра R вычесть из содержимого аккумулятора, результат операции разместить в аккумуляторе.
Циклов: 1 / 2
Тактов: 4 / 7
Признаки: Z, S, Р, CY, АС
SBB R (Subtract with borrow)
<A> - <R> - <CY> A
Содержимое регистра R и значение займа из разряда CY регистра признаков вычесть из содержимого аккумулятора, результат поместить в аккумулятор.
Циклов: 1 / 2
Тактов: 4 / 7
Признаки: Z, S, Р, CY, АС
Inr r (Increment)
<R> + 1 R
Инкремент - содержимое регистра R увеличивается на 1. Устанавливаются все признаки, кроме признака переноса CY.
Циклов: 1 / 3
Тактов: 5 / 10
Признаки: Z, S, Р, АС
DCR R (Decrement)
<R> - 1 R
Декремент - содержимое регистра R уменьшается на 1. Устанавливаются все признаки, кроме признака переноса CY.
Циклов: 1 / 3
Тактов: 5 / 10
Признаки: Z, S, Р, АС