- •Тема 2.5 Основы программирования процессора
- •1 Оперативная память, регистры, представление данных
- •1.Программная модель микропроцессорной системы на основе мп кр580вм80
- •2.Формат данных и структура команд языка ассемблер
- •3 Формат команд
- •4 Методы адресации
- •5 Система команд
- •6 Команды передачи данных и ввода-вывода
- •6.1 Команды передачи данных
- •6.2 Команды ввода-вывода
- •6.3 Команды работы со стеком
- •7 Команды обработки данных
- •Арифметические команды
- •Логические команды
- •8 Команды управления
- •1.Команды условного и безусловного переходов
- •2.Команды вызова подпрограмм и возврата из них, программное прерывание
- •9 Составление программ
1.Программная модель микропроцессорной системы на основе мп кр580вм80
Программная модель МПС в соответствии с рисунком 1
МП Порты Память
B |
C |
|
05H |
|
0000
07FF |
Управляющая программа (монитор) |
ПЗУ |
||||||
D |
E |
06H |
|||||||||||
H |
L |
07H |
Демонстрационные программы |
||||||||||
А |
FL |
|
|
|
0800
0AFF |
Область адресов для записи исследуемых программ |
ОЗУ |
||||||
SP |
|||||||||||||
PC |
|
|
|
0B00
0BB0 |
Для записи данных исследуемых программ Cтек |
||||||||
S |
Z |
0 |
AC |
0 |
P |
1 |
C |
Рисунок 1
С точки зрения программиста МП КР580ВМ80 имеет следующие программно-доступные регистры.
А – 8-битовый регистр аккумулятор. Является главным регистром МП. Любая операция, выполняемая в АЛУ, предполагает размещение одного из операндов, подлежащих обработке, в аккумуляторе. Результат операции в АЛУ тоже обычно хранится в А.
B, C, D, E, H, L – 8-битовые регистры общего назначения (РОН). Внутренняя память МП. Предназначены для хранения обрабатываемой информации, а также результатов операции. При обработке 16-разрядных слов из регистров образуют пары BC, DE, HL, причем сдвоенный регистр называется первой буквой – B, D, H. В регистровой паре старшим является первый регистр. Особым свойством обладают регистры H, L, используемые как для хранения данных, так и для хранения 16-разрядных адресов ячеек ОЗУ.
FL – регистр флагов (регистр признаков) 8-битовый регистр, в котором сохраняются пять признаков результата выполнения арифметических и логических операций в МП. Формат FL в соответствии с рисунком
Разряд С ( CY - carry) - перенос, устанавливается в 1, если был перенос из старшего разряда байта при выполнении арифметических операций.
Разряд Р (parity) – четность, устанавливается в 1, если число единиц в разрядах результата четно.
Разряд АС – дополнительный перенос, предназначен для хранения значения переноса из младшей тетрады результата.
Разряд Z (нуль) – устанавливается в 1, если результат операции равен 0.
Разряд S (знак) – устанавливается в 1, если результат отрицательный, и в 0, если результат положительный.
SP –- указатель стека, 16-разрядный регистр, предназначен для хранения адреса ячейки памяти, куда был записан последний введенный в стек байт.
РС – программный счетчик (счетчик команд), 16-разрядный регистр, предназначен для хранения адреса следующей выполняемой команды. Содержимое счетчика команд автоматически увеличивается на 1 сразу же после выборки очередного байта команды.
В начальной области памяти адреса 0000Н – 07FF располагается управляющая программа и демонстрационные программы. Это область ПЗУ.
0800 – 0АFF - область адресов для записи исследуемых программ. (ОЗУ).
0В00 – 0ВВ0 - область адресов для записи данных. (ОЗУ).
0ВВ0 – начальный адрес стека. (ОЗУ).
Стек – специально организованная область ОЗУ, предназначенная для временного хранения данных или адресов. Число, записанное в стек последним, извлекается из него первым. Указатель стека хранит адрес последней ячейки стека, в которой записана информация. При вызове подпрограммы в стеке автоматически сохраняется адрес возврата в основную программу. Как правило, в начале каждой подпрограммы сохраняются в стеке содержимое всех задействованных при ее выполнении регистров, а в конце подпрограммы восстанавливают их из стека.
