|
|
![]() |
| Главная > Обзоры по типам > Микроконтроллеры > ARM > Система команд | |||||||||
|
|
|
||||||||||||||
Переход (B) и Переход со ссылкой (BL)Эта команда будет выполнена, если условие истинно. Все различные условия перечислены в табл. 6. Машинные коды обеих команд приведены на рис.12.
Команда перехода содержит знаковое 24-битное смещение, дополненное до 2-х. По-сути происходит умножение смещения на 4 и добавление к регистру PC с учетом знака. Таким образом, возможен переход в диапазоне +32 Мбайта. Переходы за пределы +32 Мбайта должны использовать смещение или абсолютный адрес, который был предварительно загружен в регистр. В этом случае необходимо PC сохранить вручную в регистре R14 (если используется команда "переход со ссылкой"). Бит ссылки (link bit) Переход со ссылкой (BL) сохраняет прежнее значение регистра PC в регистре ссылки (R14) текущего банка. Значение регистра PC, сохраненное в R14 (оно корректируется таким образом, чтобы осуществить предвыборку), и содержит адрес команды, следующей за командой перехода со ссылкой (BL). При этом CPSR не сохраняется вместе с PC, поэтому биты R14[1:0] всегда равны нулю. Возврат из подпрограммы, вызываемой командой "переход со ссылкой", использует команду MOV PC,R14 (если содержимое R14 неискаженно) или команду LDM Rn!,{..PC} (R14 сохранен в стеке, указанном через регистр Rn). Число машинных тактов выполнения Обе команды перехода и перехода со ссылкой выполняется за 2S+1N машинных такта, где S и N зависят от типа тактов. Синтаксис в ассемблере Элемент {} может отсутствовать, но элемент <> - обязателен. B{L}{cond} <выражение>
Пример
<---- Вернуться к Системе команд ---> Главная - Микросхемы - DOC - ЖКИ - Источники питания - Электромеханика - Интерфейсы - Программы - Применения - Статьи |
|||||||||||||||
ПОИСК ПО СЕРВЕРУ |
Навигация |
СПИСКИ РАССЫЛКИ |
||||||||||||||
|
||||||||||||||||
|
Впервые? | Реклама на сайте | О проекте | Карта портала тел: +7 (495) 514 4110. e-mail:admin@eust.ru © ООО Рынок Микроэлектроники |
||