PUSH ACC
2.8.3. При косвенной адресации (indirect addressing) в команде указывается регистр, в котором содержится адрес операнда. Этот способ может быть использован для адресации ячеек как внутренней, так и внешней памяти данных.
Для задания 8-битного адреса операнда может быть использован регистр R0 или R1 активного регистрового банка или регистр-указатель стека SP (Stack Pointer), а для задания 16-битного адреса – регистр-указатель данных DPTR (Data Pointer Register).
Для обозначения косвенной адресации используется символ “@”.
Например: INC @R0
2.8.4. При регистровой адресации (register addressing) операнд находится в одном из регистров активного регистрового банка. В мнемокоде команды указывается имя регистра (R0 … R7). Номер активного банка определяется разрядами RS1 и RS0 слова состояния программы.
Например: INC R7
2.8.5. При неявной адресации (register-specific addressing) операнд находится в регистре-аккумуляторе (А), регистре-указателе данных (DPTR) или вспомогательном регистре (В). В этом случае машинный код команды не содержит адресного байта. Информацию об адресе операнда несет сам код операции. Команды операций с регистром-аккумулятором выделены в отдельную группу.
Например: CLR A
2.8.6. При непосредственной адресации (immediate addressing) значение операнда-константы указывается в коде команды вслед за кодом операции, а в мнемокоде перед значением операнда записывается символ “#”. Система счисления, в которой представлено значение операнда в мнемокоде команды, определяется буквой, стоящей после числа. Для обозначения двоичного числа используется буква B, восьмеричного – Q, десятичного – D, шестнадцатеричного – H. Число без буквенного суффикса считается десятичным.
Например: MOV A,#127
2.8.7. Индексная адресация (indexed addressing) используется только для доступа к константам, записанным в программной памяти. При этом способе адресации адрес операнда определяется как сумма содержимого 16-битного базового регистра (DPTR или PC) и содержимого аккумулятора, в который предварительно заносится смещение относительно базового адреса.
Например: MOVC A,@A+DPTR
MOVC A,@A+PC
Дата добавления: 2015-10-09; просмотров: 1025;