Курс лекций - Микропроцессоры


Способы адресации операндов - часть 2


В этом случае с помощью регистров- указателей R0 и R1 (рабочего банка рабочих регистров) выбирается ячейка из блока 256 байт внешней памяти данных. Номер блока предварительно задается содержимым порта Р2. Например:

E2 MOVX A,@R0 ;В первом операнде использована неявная адресация, а во втором - косвенно-регистровая F3 MOVX @R1,A ;В первом операнде использована косвенно-регистровая адресация, а во втором - неявная

Если в качестве регистра - указателя используется 16 - разрядный указатель данных (DPTR), то можно выбрать любую ячейку внешней памяти данных объемом до 64 Кбайт. (В некоторых моделях микроконтроллеров семейства MSC-51 таким образом можно обращаться к внутренней памяти данных объемом более 256 байт).

E0 MOVX A,DPTR;В первом операнде использована неявная адресация, а во втором - косвенно-регистровая F0 MOVX DPTR,A;В первом операнде использована косвенно-регистровая адресация, а во втором - неявная

Косвенно-регистровая адресация по сумме базового и индексного регистра (содержимое аккумулятора А) упрощает просмотр таблиц, записанных в памяти программ. Любой байт из таблицы может быть выбран по адресу, определяемому суммой содержимого DPTR или РС и содержимого А, например:

83 MOV A, @A+PC ;В первом операнде использована неявная адресация, а во втором - косвенно-регистровая 93 MOV A, @A+DPTR ;В первом операнде использована неявная адресация, а во втором - косвенно-регистровая.

Непосредственная адресация позволяет выбрать из адресного пространства памяти программ константы, явно указанные в команде, например:

7414 MOV A, #14h ;В первом операнде использована неявная адресация, а во втором - непосредственная 902048 MOV DPTR, #2048h ;В первом операнде использована неявная адресация, а во втором - непосредственная

[ ]




- Начало -  - Назад -  - Вперед -