Способы адресации данных в микроконтроллерах AVR

March 18, 2011 by admin Комментировать »

Ключевым моментом к пониманию функций, выполняемых каждой командой, помимо кода операции являются используемые командой способы адресации данных (операндов).

Микроконтроллеры AVR применяют разнообразные способы адресации данных. По количеству и способам адресации они превосходят возможности микроконтроллеров MCS-51. При том или ином способе адресации можно осуществить доступ к любой области памяти данных (регистрам общего назначения, регистрам ввода;вывода, памяти SRAM), а также Flash-памяти программ и энергонезависимой памяти данных EEPROM. При этом часто к одному и тому же объекту можно обратиться разными способами, используя для этого соответствующий вид адресации. Рассмотрим каждый из них подробнее.

Прямая регистровая адресация с одним регистром Rd, При этом способе адресации данные находятся в регистре d(Rd), адрес которого содержится непосредственно в команде (рис. 1.4, а). Примером команд, использующих этот метод адресации, являются команды для

Рис. 1.4. Прямая регистровая адресация одного {а) и двух (б) регистров

общего назначения

работы со стеком (PUSH, POP), обмена тетрадами в регистре (SWAP), ряд команд арифметических и логических операций.

Прямая регистровая адресация с двумя регистрами Rd и Rr. Данный способ адресации применяется в командах, которые используют два регистра общего назначения: d(Rd) и r(Rr) (рис. 1.4, б). Этот вид адресации используют команды пересылки данных из регистра в регистр и большинство команд арифметических операций, ряд команд логических операций. При этих операциях результат операции сохраняется в регистре d (Rd).

Прямая адресация регистра ввода;вывода. Данный вид адресации используют для выполнения обмена между регистром ввода;вывода, расположенным в адресном пространстве ввода;вывода, и одним из регистров общего назначения по командам ESf и OUT (рис. 1.5).

Рис. 1.13. Относительная адресация памяти программ

Битовая адресация. Этот вид адресации позволяет указать один из восьми битов любого из 32 регистров общего назначения или первой половины регистров ввода;вывода с номерами 0-31, а также регистра SREG. Для этого нужно указать имя регистра общего назначения Ri (i = 0…31) либо имя регистра ввода;вывода Pi (i = 0.. .31), либо имя SREG и номер бита b (Ь = 0.. .7). Командами SBI и CBI осуществляется установка в 1 и сброс в О указанного бита регистра ввода;вывода, командами BLD, EST – обмен значениями бита Т из регистра SREG и адресованного бита из регистра общего назначения. Помимо этого есть группа команд битовых операций, обеспечивающая установку и сброс битов регистра состояния SREG. При записи мнемоники команд допускается использование символических (штатных) имен регистров ввода;вывода и имен битов. Существует группа команд условного перехода, где в качестве условия используется либо значение бита в регистре общего назначения (SBRC, SBRS), либо значение бита в регистре ввода;вывода (SBIC, SBIS).

Оставить комментарий

микросхемы мощности Устройство импульсов питания пример приемника провода витков генератора выходе напряжение напряжения нагрузки радоэлектроника работы сигнал сигнала сигналов управления сопротивление усилитель усилителя усиления устройства схема теория транзистора транзисторов частоты