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

 
 
> iar v4.11 - disassembly непонятно работает
Юдин Алексей
сообщение Feb 26 2009, 10:57
Сообщение #1





Группа: Участник
Сообщений: 8
Регистрация: 16-10-06
Пользователь №: 21 358



Доброго времени суток. Проблема в следующем. Дизассемблер по-разному дизассемблирует один и тот же код в программе. Вот пример:

случай первый:
CODE

WDTCTL = WDTPW+WDTHOLD; // Stop watchdog timer
__low_level_init:
00C3C8 40B2 5A80 0120 mov.w #0x5A80,&WDTCTL

тут все понятно - все верно

случай второй:
CODE

WDTCTL = WDTPW + WDTHOLD;
Flash_ww:
00AB76 403E 5A80 mov.w #0x5A80,R14
00AB7A 4E4F mov.b R14,R15
00AB7C 108E swpb R14
00AB7E F03E 00FF and.w #0xFF,R14
00AB82 4FC2 0120 mov.b R15,&WDTCTL
00AB86 4EC2 0121 mov.b R14,&0x121

а вот здесь не понятно почему так, а не как в 1ом случае. Соответственно здесь меня ресетит (согласно коду в дизассемблере так и должно происходить).

В чем проблема, подскажите?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zhevak
сообщение Feb 26 2009, 11:33
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065



Цитата(Юдин Алексей @ Feb 26 2009, 15:57) *
Дизассемблер по-разному дизассемблирует один и тот же код в программе.

Попробую угадать.
1. Вероятно Вы имеете ввиду ассемблер, а не дизассемблер?
2. Ваш исходный текст написан на С или С++.
3. Вы использовали компилятор IAR.

На этом потенциал моих телепатических возможностей иссякает.

Какие опции для компиляции Вы использовали?
Какие уровени оптимизации Вы задавали для каждого случая?
Не пробовали просто, неконкретно по Вашему вопросу, почитать какие-нибудь книжки или
походить по форумам, где обсуждаются как микроконтроллер вообще, так и языки группы С/С++?

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


--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 26th July 2025 - 00:58
Рейтинг@Mail.ru


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