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

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Компоненты > Микроконтроллеры > MSP430 > Архитектура MSP430x1xx

реклама

 




Мероприятия:




3.3 Режимы адресации

Семь режимов адресации для операнда источника и четыре режима адресации для операнда назначения могут адресовать полное адресное пространство без исключений. В таблице 3.3 приводится конфигурация битов для режимов As (источник) и Ad (назначение).

Таблица 3.3 Режимы адресации операндов источника/получателя

As/Ad Режим адресации Синтаксис Описание
00 / 0 Регистровый режим Rn Содержимое регистра является операндом
01 / 1 Индексный режим X(Rn) Значение (Rn+X) указывает на операнд. X сохранен в следующем слове
01 / 1 Символьный режим ADDR Значение (PC+X) указывает на операнд. X сохранен в следующем слове. Использован индексный режим X(PC)
01 / 1 Абсолютный (безусловный) режим &ADDR Слово, следующее за командой, содержит абсолютный адрес. X сохранен в следующем слове. Использован индексный режим X(SR)
10 / - Косвенный регистровый режим @Rn Содержимое Rn использовано как указатель на операнд
11 / - Косвенный автоинкремент @Rn+ Содержимое Rn использовано как указатель на операнд. Содержимое Rn впоследствии увеличивается на 1 для байтовых команд и на 2 для команд-слов.
11 / - Прямой (непосредственный) режим #N Слово, следующее за командой, содержит непосредственную константу N. Использован косвенный автоинкрементный режим @PC+

Семь упомянутых способов адресации подробно рассматриваются в следующих разделах. В большинстве примеров показаны схожие режимы адресации для источника и получателя, но в команде возможны любые правильные комбинации способов адресации источника и получателя.

Примечание: использование меток EDE и TONI
Везде в документации по семейству MSP430 используются универсальные метки EDE и TONI. Они являются только метками, не имеющими никакого специального назначения.

3.3.1 Регистровый режим

Таблица 3.4. Описание регистрового режима

Код ассемблера Содержимое ПЗУ
MOV R10,R11 MOV R10, R11
Длина: Одно или два слова
Операция: Пересылка содержимого R10 в R11. Содержимое R10 не изменяется.
Комментарий: Действительно для источника и получателя.
Пример: MOV R10,R11
До После
R10
0A023h
R10
0A023h
R11
0FA15h
R11
0A023h
PC
PCold
PC
PCold+2

Примечание: данные в регистрах
Данные в регистре могут быть доступны с помощью байтовых команд или команд-слов. Если используются байтовые команды, старший байт всегда будет содержать в результате «0». Биты статуса обрабатываются согласно результату байтовой команды.

3.3.2 Индексный режим

Таблица 3.5. Описание индексного режима

Код ассемблера Содержимое ПЗУ
MOV 2(R5),6(R6) MOV X(R5),Y(R6)
X=2
Y=6
Длина: Два или три слова
Операция: Пересылка содержимого с исходного адреса (равного сумме содержимого R5 + 2) по адресу назначения (содержимое R6 + 6). Регистры источника и получателя (R5 и R6) не изменяются. В индексном режиме программный счетчик автоматически инкрементируется таким образом, что выполнение программы продолжается со следующей команды.
Комментарий: Действительно для источника и получателя
Пример: MOV 2(R5),6(R6):

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

3.3.3 Символьный режим

Таблица 3.6. Описание символьного режима.

Код ассемблера Содержимое ПЗУ
MOV EDE,TONI MOV X(PC),Y(PC)
X=EDE-PC
Y=TONI-PC
Длина: Два или три слова
Операция: Пересылка содержимого с исходного адреса EDE (равного сумме содержимого PC + X) по адресу назначения TONI (содержимое PC + Y). Слова после команды содержат разницу между PC и адресами источника или получателя соответственно. Ассемблер автоматически вычисляет и вставляет смещения X и Y. В символьном режиме программный счетчик автоматически инкрементируется так, что выполнение программы продолжается со следующей команды.
Комментарий: действительно для источника и получателя
Пример: MOV EDE,TONI ;Адрес источника EDE=0F016h
;Адрес получателя TONI=01114h

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

3.3.4 Абсолютный режим

Таблица 3.7. Описание абсолютного режима

Код ассемблера Содержимое ПЗУ
MOV &EDE,&TONI MOV X(0),Y(0)
X=EDE
Y=TONI
Длина: Два или три слова
Операция: Пересылка содержимого с исходного адреса EDE по адресу назначения TONI. Слова после команды содержат абсолютные адреса источника и получателя. В абсолютном режиме программный счетчик автоматически инкрементируется так, что выполнение программы продолжается со следующей команды.
Комментарий: Действительно для источника и получателя
Пример: MOV &EDE,&TONI ;Адрес источника EDE=0F016h
;Адрес получателя TONI=01114h

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

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

3.3.5 Косвенный регистровый режим

Таблица 3.8. Описание косвенного регистровый режима

Код ассемблера Содержимое ПЗУ
MOV @R10,0(R11) MOV @R10,0(R11)
Длина: Одно или два слова
Операция: Пересылка содержимого с исходного адреса (содержится в R10) по адресу назначения (содержится в R11). Регистры не изменяются.
Комментарий: Действительно только для операнда источника. В качестве операнда получателя подставляется 0(Rd)
Пример: MOV.B @R10,0(R11)

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

3.3.6 Косвенный автоинкрементный режим

Таблица 3.9. Описание косвенного автоинкрементного режима

Код ассемблера Содержимое ПЗУ
MOV @R10+,0(R11) MOV @R10+,0(R11)
Длина: Одно или два слова
Операция: Пересылка содержимого с исходного адреса (содержится в R10) по адресу назначения (содержится в R11). Регистр R10 инкрементируется после выборки на 1 для байтовых операций или на 2 для команд-слов, таким образом указывается следующий адрес без дополнительных действий. Это полезно для обработки таблиц.
Комментарий: Действительно только для операнда источника. В качестве операнда получателя подставляется 0(Rd) плюс вторая команда INCD Rd.
Пример: MOV.B @R10+,0(R11)

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

Автоинкремент содержимого регистра происходит после выборки операнда. Этот процесс показан на рис.3.8.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

3.3.7 Прямой режим

Таблица 3.10. Описание прямого (непосредственный) режима

Код ассемблера Содержимое ПЗУ
MOV #45h,TONI MOV @PC+,X(PC)
45
X=TONI-PC
Длина: Два или три слова.
На одно слово меньше, если может использоваться константа генераторов CG1 или CG2.
Операция: Пересылка непосредственной константы 45h, находящейся в слове, следующем за командой, по адресу назначения TONI. Когда происходит выборка источника, программный счетчик указывает на слово, следующее за командой, и выполняется пересылка содержимого по назначению.
Комментарий: Действительно только для операнда источника
Пример: MOV #45h,TONI

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments



<-- Предыдущая страница Оглавление Следующая страница -->


Для туристов - www.advokat-eu.com" class="sale">Чехия недвижимость - бизнесменам и инвесторам
    Получить консультации и преобрести компоненты вы сможете у официальных поставщиков фирмы Texas Instruments,

поставщики электронных компонентов






 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники