Kesha 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Добрый день. Подскажите пожалуйста литературу по асемблеру для LPC-ек. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kesha 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Добрый день. Возник такой вопрос: какую команду можно разместит в ячейке оперативной памяти с адресом 0x40000018, чтобы она загружала содержимое ячейки 0xffffff00 в PC? Команда ldr pc,[pc,#0xffffff00-.-8] не прокатывает. Пишет, что смещение недопустимое. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба ARM Architecture Reference Manual Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Добрый день. Возник такой вопрос: какую команду можно разместит в ячейке оперативной памяти с адресом 0x40000018, чтобы она загружала содержимое ячейки 0xffffff00 в PC? Команда ldr pc,[pc,#0xffffff00-.-8] не прокатывает. Пишет, что смещение недопустимое. Спасибо. Это у вас вектор IRQ в RAM и вам нужен доступ к контроллеру прерываний? так IRQ работать не будет, нужно отмапить RAM на 0 адрес. И тогда проблем с командой не будет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба какую команду можно... Одну? Одну никакую, ибо смещения в 32bit теле команды не хватит. Посему только загрузка непосредственного значения - а это два слова Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Присоединяюсь к KRS: надо ремапить RAM. В указанной инструкции диапазон смещения +/- 4095 байт. Только зачем так хитро? Для этого есть инструкция B (branch). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Присоединяюсь к KRS: надо ремапить RAM. В указанной инструкции диапазон смещения +/- 4095 байт. Только зачем так хитро? Для этого есть инструкция B (branch). насколько я понял имеется ввиду сразу jump на обработчик, который подсовывает контроллер прерываний. так что простым B тут не отделаешься. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kesha 0 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Одну? Одну никакую, ибо смещения в 32bit теле команды не хватит. Посему только загрузка непосредственного значения - а это два слова Если не секрет, то какие? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 63 2 марта, 2009 Опубликовано 2 марта, 2009 · Жалоба Возник такой вопрос: какую команду можно разместит в ячейке оперативной памяти с адресом 0x40000018, чтобы она загружала содержимое ячейки 0xffffff00 в PC? Зачем Вам эта команда по адресу 0x40000018? Вектор прерывания всегда на 0x18. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться