Как МП Motorola 6800, так и МП Intel 8080 имеют 1- и 2-байтные команды ЗАГРУЗИТЬ и ЗАПОМНИТЬ для обмена данными между регистрами и памятью. Эти команды приведены в табл. 3.13.
Команды передачи данных, выполняемые МП Motorola 6800, узконаправ-лепные. Команды ЗАГРУЗИТЬ и ЗАПОМНИТЬ передают 8-битные числа меж-д> памятью и одним из двух аккумуляторов. Двухбайтные команды ЗАГРУЗИТЬ и ЗАПОМНИТЬ передают 16-битные числа между памятью и индексным регистром — указателем стека. Эти команды могут использовать любой метод адресации, имеющийся в МП Motorola 6800. Так, можно загрузить регистры по команде ЗАГРУЗИТЬ, используя непосредственную адресацию, адресацию нулевой страницы, индексную или прямую адресацию.
В МП Intel 8080 команды передачи данных в память более сложные. Здесь 8-битное число можно пересылать через любой регистр и регистровую пару, используя команды косвенной регистровой адресации (коды операций MOV REG, М; MOV М, REG- LDAX и STAX), команды с непосредственной адресацией (MVI) или команды с прямой адресацией (STA, LDA). Программист обычно использует метод косвенной регистровой адресации с регистровой парой Н и L для обработки массивов или таблиц, команды LDAX и STAX, чтобы обрабатывать два массива одновременно, MVI, чтобы загружать счетчики и другие установочные данные и STA и LDA, чтобы иметь доступ к рассредоточенным данным
• Передача 16-битных данных в МП Intel 8080 возможна различными способами. Обычно используют команды с непосредственной адресацией (LXI) для загрузки адресных регистров фиксированными величинами, и команды с прямой адресацией (LHLD, SHLD), чтобы обеспечить возможность косвенной адресации и сгрузить адресные регистры переменными величинами.
Ниже показаны типичные команды передачи данных в память, выполняемые МП Motorola 6800-
1 LDAA # 35
(А) = 35
2. STX 1515
(1515) = (1ХН)
(1516) = (IXL)
.jpg)
Здесь IXН и IXL — соответственно старшие и млчлшие значащие разряда индексного регистра.
Типичные команды передачи данных в память, выполняемые МП Intel 8080:
1. MOV с, м
(С) = «Н я L))
Центральный процзссор загружает регистр С числом из ячейки памяти, адресуемой содержимым регистровой'пары Н и L
2. LXI Н 160
(Н и L) = 160
Число 160 помещается в регистровую пару Н и h.
Оба процессора осуществляют обмен о памятью данными, имеющими двойной формат, по 1 байту за цикл обращения к памяти. Преимущество обмена двойными словами над обменом по одному слову состоит в том, что процессору нужно извлечь из памяти только одну команду, чтобы выполнить пересылку двойного слова, а не две
Основное отличие команд пересылки данных, выполняемых МП Intel 8080 я Motorola 6800, состоит в том, что у первого они не влияют на значения признаков состояния, в то время как у второго—воздействуют на них В МП Intel 8080 команды пересылки данных могут заслать нуль в регистр без изменения разряда признака НУЛЬ (ZERO); любое число, помещенное в регистр МП Motorola 6800, воздействует на признаки.
Микропроцессор Motorola 6800 имеет также команду ОЧИСТИТЬ (CLEAR) для каждого из двух аккумуляторов, а также для разрядов ПЕРЕНОС (CARRY) и ПЕРЕПОЛНЕНИЕ (OVERFLOW). Микрогроцессор Intel 8080 имеет только команду УСТАНОВИТЬ (SET) для разряда ПЕРЕНОС. Ячейки памяти и регистры должны очищаться с помощью логических и арифметических операций, или операций пересылок, как это описывалось ранее.
7
|
6
|
5*
|
4
|
3
|
2
|
I
|
0
|
5
Признак знака
|
Z
Признак нуля
|
0
Постоянный
0
|
АС Вспомогательный перенос
|
0
Постоянный 0
|
Р
Четкость
|
I
Постоянная
|
п
Перенос
|
Рис. 3.18. Слово состояния МП Intel 8080