Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:4
Поисковых ботовПоисковых ботов:3
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:8
Форум » starterkit.ru » ARM
Отладка Bootstrap - непонятные задержки
Pasa
Добавлено 01.07.2009 18:30 Редактировалось 01.07.2009 18:36
0
Сообщение: 1
Pasa
0

Регистрация: 27.05.2009
Добавил в Bootstrap (с полученного диска v1.11) отладочные сообщения и программную задержку. Столкнулся с проблемой - при попытке подобрать задержку для вывода на экран, получаю то мгновенный вывод, то очень большую задержку.
При этом добавляется/убирается всего одна операция j++.
Из-за чего может быть такое?


void Pause(void)
{
int i,j;
for(i=0; i<2; i++)
{
j=i;
j++;

j++; // добавление этой строки меняет задержку в сотни раз
}
}


P.S. при добавлении код увеличивается с 3692 до 3804 байт
Спуститься к концу Подняться к началу
Персональная информация
Strijar
Добавлено 01.07.2009 23:43 Сообщение: 2
Strijar
Ранг
5

Группа: Клиенты
Пункты: 1618
Регистрация: 21.04.2009
Пол: Мужчина
Скорей всего игры оптимизатора. Объявите счетчики как volatile
Спуститься к концу Подняться к началу
Персональная информация
Pasa
Добавлено 02.07.2009 12:46 Сообщение: 3
Pasa
0

Регистрация: 27.05.2009
Цитата
Скорей всего игры оптимизатора. Объявите счетчики как volatile

Да ....действительно....оптимизатор хулиганил
Как-то вылетело из головы volatile...

Спасибо за подсказку...
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 05.07.2009 23:19 Сообщение: 4
Jury093
4.5

Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Я (когда не лень) в непонятных местах скармливаю готовый бинарник (Atmega, Motorola, ARM, PXA) хорошему дизасму IDA и смотрю что там наколбасил компилер - иногда такие крендебобели в коде встречаются :))

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
sasa
Добавлено 06.07.2009 16:41 Сообщение: 5
sasa
5

Регистрация: 20.05.2009
Цитата
скармливаю готовый бинарник (Atmega, Motorola, ARM, PXA) хорошему дизасму IDA


ida конечно хорош, но в случае когда есть исходники имхо удобней пользоваться средствами компилятора - флаг -S для gcc или еще лучше objdump -S для получения листинга бинарников (предварительно собранных с отладочной информацией) - там будет расписана каждая строчка сишного кода во что она сгенерировалась компилятором что намного удобней.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 07.07.2009 21:41 Сообщение: 6
Jury093
4.5

Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
В целом возразить нечего, но иногда лень заедает, этож доку читай, ключи прописывай..
А тут, скормил и в живую посмотрел. Да, еще Ида граф-схемы прикольные рисует :)

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » ARM