реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Странное дизассемблирование
Redaer
сообщение Sep 21 2007, 09:02
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 19
Регистрация: 12-07-06
Пользователь №: 18 762



Добрый день

Вопрос у меня в следующем.

Пишу программулинку на IAR 4.40 под ARM, собсно пытаюсь продебажить, и вот увидел в дизассемблере этой самой программки вот такую строчку:
Код
[u]WriteTest();[/u]
000005A0  EAFFFFFE  B  0x000005A0


Я так понимаю, команда В - это прыжок по какому-либо адресу, так почему он прыгает на тот же... Если идти в дебагере по шагам, то с этой строчки он сдвинутся не может.

Собсно попробовал добавить вызовы других процедур до WriteTest() - ситауция изменилась лишь адресом, но действие то же - прыжок на вызов самой себя.

Подскажите, пожалуйста, в чем косяк help.gif
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 21 2007, 15:29
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Redaer @ Sep 21 2007, 12:02) *
Я так понимаю, команда В - это прыжок по какому-либо адресу, так почему он прыгает на тот же...
Ну да. В вашем примере B 0x000005A0 - прыжок на адрес 0x000005A0, т.е. на адрес этой команды.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Sep 24 2007, 06:55
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(Redaer @ Sep 21 2007, 12:02) *
Подскажите, пожалуйста, в чем косяк help.gif

Поищите строчку: #define WriteTest() for(;;)
biggrin.gif


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
Redaer
сообщение Sep 24 2007, 07:48
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 19
Регистрация: 12-07-06
Пользователь №: 18 762



2Сергей Борщ: понятно, что В - это прыжок. Вопрос в другом, почему IAR так интерпетирует вызов процедуры. Она объявлена в другом файле.

2Dog Pawlowa: смешно smile.gif но все нормально в этом плане. Подобных дефайнов я не делаю.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 04:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01367 секунд с 7
ELECTRONIX ©2004-2016