Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

Поясните инструкцию ADR в асемблере

Непрочитано 26.04.2010, 14:42  
toxxinus
Временная регистрация
 
Регистрация: 12.02.2008
Сообщений: 77
Сказал спасибо: 84
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
toxxinus на пути к лучшему
По умолчанию Поясните инструкцию ADR в асемблере

Доброго времени суток!
Не очень понятна инструкция ADR в таком исполнении(да и в другом тоже):

ADR r0,text

В связи с плохим знанием английского вариантов несколько:
  • в r0 записывается разность между адресом текущей инструкцией и адресом метки text.
  • в r0 записывается адрес метки text


Архитектура ARMv7.

P.S. В честном случае метка text находиться по адресу 0x00000000.
Реклама:
toxxinus вне форума  
Непрочитано 26.04.2010, 15:19  
AJScorp
Почётный гражданин KAZUS.RUN
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,550
Сказал спасибо: 384
Сказали Спасибо 735 раз(а) в 416 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

В системе команд ARM7TDMI команды ADR нет, это что-то типа макроса для компилятора, который переводится в инструкции процессора ADD или SUB.
Физический смысл, например, команды "ADR r0, text" - положить в r0 адрес text
AJScorp вне форума  
Непрочитано 26.04.2010, 17:39  
toxxinus
Временная регистрация
 
Регистрация: 12.02.2008
Сообщений: 77
Сказал спасибо: 84
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
toxxinus на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Сообщение от AJScorp Посмотреть сообщение
В системе команд ARM7TDMI команды ADR нет
Процессор Cortex-A8
toxxinus вне форума  
Непрочитано 26.04.2010, 17:43  
roxfan
Временная регистрация
 
Регистрация: 25.11.2009
Сообщений: 61
Сказал спасибо: 1
Сказали Спасибо 17 раз(а) в 17 сообщении(ях)
roxfan на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

ADR Rx, label это псевдоинструкция, на самом деле генерируется ADD Rx, PC, #delta.
delta вычисляется ассемблером так, чтобы в Rx оказался адрес метки label.
roxfan вне форума  
Сказали "Спасибо" roxfan
toxxinus (26.04.2010)
Непрочитано 26.04.2010, 18:47  
toxxinus
Временная регистрация
 
Регистрация: 12.02.2008
Сообщений: 77
Сказал спасибо: 84
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
toxxinus на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Сообщение от roxfan Посмотреть сообщение
ADD Rx, PC, #delta
А если без #delta, то в Rx пишется адрес метки??
toxxinus вне форума  
Непрочитано 26.04.2010, 19:49  
picavr
Почётный гражданин KAZUS.RUN
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,815
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Сообщение от roxfan Посмотреть сообщение
ADR Rx, label это псевдоинструкция, на самом деле генерируется ADD Rx, PC, #delta.
delta вычисляется ассемблером так, чтобы в Rx оказался адрес метки label.
Сообщение от toxxinus Посмотреть сообщение
А если без #delta, то в Rx пишется адрес метки??
Судя по синтаксису команды, в Rx добавится сожержимое указателя PC, т.е. добавится адрес текущей команды, т.е. команды ADD Rx, PC
А не тяжко для ARM на асме?... там же памяти программ немеряно... хотя когда то сам писал для ADSP21XX на асме )))))))))
__________________
"picavr(ГАВ)мыло.ру" USB_Analyzer, Digital_Storage_Oscilloscope "picavr.kr1.ru" заказы в Китай компонентов/изготовление: плат/ЖКИ/мембраных клавиатур/имп трансформаторов

Последний раз редактировалось picavr; 27.04.2010 в 01:02.
picavr вне форума  
Сказали "Спасибо" picavr
toxxinus (26.04.2010)
Непрочитано 26.04.2010, 20:06  
toxxinus
Временная регистрация
 
Регистрация: 12.02.2008
Сообщений: 77
Сказал спасибо: 84
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
toxxinus на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Ну инструкция вида "adr Rx, text" пишет в Rx адрес инструкции text ??
toxxinus вне форума  
Непрочитано 27.04.2010, 01:06  
picavr
Почётный гражданин KAZUS.RUN
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,815
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Сообщение от toxxinus Посмотреть сообщение
Ну инструкция вида "adr Rx, text" пишет в Rx адрес инструкции text ??
Мне кажется проще написать команду и откомпилировать, посмотреть результат. На это потратите 10-15 минут, а на фруме можете и не дождатся )))))))))))))))))))) зато то что выяснили сами, уже никогда не забудется ))))
__________________
"picavr(ГАВ)мыло.ру" USB_Analyzer, Digital_Storage_Oscilloscope "picavr.kr1.ru" заказы в Китай компонентов/изготовление: плат/ЖКИ/мембраных клавиатур/имп трансформаторов
picavr вне форума  
Сказали "Спасибо" picavr
toxxinus (27.04.2010)
Непрочитано 27.04.2010, 05:55  
toxxinus
Временная регистрация
 
Регистрация: 12.02.2008
Сообщений: 77
Сказал спасибо: 84
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
toxxinus на пути к лучшему
По умолчанию Re: Поясните инструкцию ADR в асемблере

Сообщение от picavr Посмотреть сообщение
Мне кажется проще написать команду и откомпилировать, посмотреть результат. На это потратите 10-15 минут, а на фруме можете и не дождатся )))))))))))))))))))) зато то что выяснили сами, уже никогда не забудется ))))
ИСТИНА!!!!
toxxinus вне форума  
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 10:20.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.