Команды пересылки данных


В группу команд пересылки данных входит 28 команд, краткое описание которых, а также их количество байт и время выполнения приведено в табл. 1.16.

Таблица 1.16. Команды пересылки данных

Мнемоника команды Код операции Количество байтов в команде Время выполнения команды, циклы Выполняемые действия
MOV A, Rn 11101rrr 1 1 (A) (Rn)
MOV A, ad 11100101 2 1 (A) (ad)
MOV A, @Ri 1110011i 1 1 (A) ((Ri))
MOV A, #d 01110100 2 1 (A) #d
MOV Rn, A 11111rrr 1 1 (Rn) (A)
MOV Rn, ad 10101rrr 2 2 (Rn) (ad)
MOV Rn, #d 01111rrr 2 1 (Rn) #d
MOV ad, A 11110101 2 1 (ad) (A)
MOV ad, Rn 10001rrr 2 2 (ad) (Rn)
MOV add, ads 10000101 3 2 (add) (ads)
MOV ad, @Ri 1000011i 2 2 (ad) ((Ri))
MOV ad, #d 01110101 3 2 (ad) #d
MOV @Ri, A 1111011i 1 1 ((Ri)) (A)
MOV @Ri, ad 0110011i 2 2 ((Ri)) (ad)
MOV @Ri, #d 0111011i 2 1 ((Ri)) #d
MOV DPTR, #d16 10010000 3 2 (DPTR) #d16
MOVC A, @A+DPTR 10010011 1 2 (А) ((A) +(DPTR))
MOVC A, @A+PC 10000011 1 2 (PC) (PC)+1, (A) ((A)+(PC))
MOVX A, @Ri 1110001i 1 2 (A) ((Ri))
MOVX A,@DPTR 11100000 1 2 (A) ((DPTR))
MOVX @Ri, A 1111001i 1 2 ((Ri)) (A)
MOVX @DPTR,A 11110000 1 2 ((DPTR)) (A)
PUSH ad 11000000 2 2 (SP) (SP) + 1, ((SP)) (ad)
POP ad 11010000 2 2 (ad) (SP), (SP) (SP) - 1
XCH A, Rn 11001rrr 1 1 (A) ↔ (Rn)
XCH A, ad 11000101 2 1 (A) ↔ (ad)
XCH A, @Ri 1100011i 1 1 (A) ↔ ((Ri))
XCHD A, @Ri 1101011i 1 1 (A0…3) ↔((Ri)0…3)

По команде MOV выполняется пересылка данных из второго операнда в первый. Эта команда не имеет доступа ни к внешней памяти данных, ни к памяти программ. Для этих целей предназначены команды MOVX и MOVC соответственно. Первая из них обеспечивает чтение/запись байт из внешней памяти данных, вторая – чтение байт из памяти программ.

По команде XCH выполняется обмен байтами между аккумулятором и ячейкой РПД, а по команде XCHD – обмен младшими тетрадами (битами 0…3).

Команды PUSH и РОР предназначены соответственно для записи данных в стек и их чтения из стека. Размер стека ограничен лишь размером резидентной памяти данных. В процессе инициализации микро-ЭВМ после сигнала сброса или при включении питающего напряжения в SP заносится код 07Н. Это означает, что первый элемент стека будет располагаться в ячейке памяти с адресом 08Н.

Группа команд пересылок МК51 имеет следующую особенность – в ней нет специальных команд для работы со специальными регистрами: PSW, таймером, портами ввода-вывода. Доступ к ним, как и к другим регистрам специальных функций, осуществляется заданием соответствующего прямого адреса, т.е. это команды обычных пересылок, в которых вместо адреса можно ставить название соответствующего регистра. Например, чтение данных из порта Р1 в аккумулятор может быть выполнено командой MOV A, P1.

Кроме того, следует отметить, что в МК51 аккумулятор имеет два различных имени в зависимости от способа адресации: А – при неявной адресации (например, MOV A, R0) и АСС – при использовании прямого адреса. Первый способ предпочтительнее, однако, не всегда применим.



Дата добавления: 2016-11-26; просмотров: 2164;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.