В HTML      В PDF
микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная > Обзоры по типам > Микроконтроллеры > ARM > Система команд

реклама

 
радиационно стойкие ПЗУ Миландр

Продажа силового и бронированного кабеля и провода в Москве

текст еще



Переход и переключение режима ядра (BX)

Эта команда будет выполнена, если условие истинно. Все различные условия выполнения перечислены в табл. 6. Машинный код команды приведен на рис.11.

Команда выполняет переход, копируя содержимое регистра общего назначения Rn в программный счетчик PC. Во время перехода происходит очистка конвейера команд и передача управления по адресу, определенному регистром Rn. Бит 0 регистра Rn определяет режим работы ядра после выполнения перехода: ARM или THUMB.

Команда перехода и переключения режима ядра
Рис 11. Команда перехода и переключения режима ядра

Число машинных тактов выполнения

Команда BX выполняется за 2S+1N машинных тактов, где S и N зависят от типа тактов.

Синтаксис в ассемблере

BX - переход и переключение режима ядра.

	BX{cond} Rn

{cond}: двухсимвольная мнемоника условия (см. табл. 6).

Rn: выражение, вычисляющее номер регистра

Использование R15 в качестве операнда

Если R15 используется в качестве операнда, поведение команды неопределенно.

Пример

     ADR   R0, Into_THUMB + 1   ; Сформировать адрес перехода 
                                ; и установить в "1" бит 0, т.е. указать 
                                ; на необходимость переключения в режим THUMB
     BX    R0                   ; Перейти и сразу переключить ядро в режим THUMB
     CODE16                     ; Последующие команды должны 
Into_THUMB                      ; декодироваться в режиме THUMB
.
.
.
     ADR  R5, Back_to_ARM       ; Сформировать адрес перехода 
                                ; и очистить бит 0, т.е. указать 
                                ; на необходимость возврата в режим ARM
     BX   R5                    ; Перейти и сразу переключить ядро в режим ARM
.
.
.

    ALIGN                       ; Выравнивание по слову
    CODE32                      ; Последующие команды должны 
Back_to_ARM                     ; декодироваться в режиме ARM

.
.
.


<---- Вернуться к Системе команд --->






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