|
|
 |
Ответов
|
Jan 28 2010, 16:47
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
Цитата(Charoit @ Jan 28 2010, 17:10)  Как на сях в WinAVR можно прочитать содержимое регистра, например R0? Хотел там мяукнуть, но обленился. Тут спрошу - а зачем? Не подколки ради, просто чтение регистра из С ведь не самоцель. Опишите задачу. Тогда будет понятно, что советовать.
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Jan 28 2010, 17:45
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(ReAl @ Jan 28 2010, 19:47)  Хотел там мяукнуть, но обленился. Тут спрошу - а зачем? Действительно, зачем !? Ради праздного любопытства ? Для отладки ?
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Jan 28 2010, 20:48
|

Местный
  
Группа: Участник
Сообщений: 403
Регистрация: 14-05-07
Из: Россия, г.Пенза
Пользователь №: 27 719

|
Цитата(ReAl @ Jan 28 2010, 23:24)  Особенно учитывая то, что именно R0 - это временый регистр __temp_reg__ компилятора, он же используется в команде mul и его и зарезервировать нельзя, вся работа компилятора обломается. Кстати, WinAVR оперирует буквально 4-6 РОН и PUSH-ит их постоянно, остальные РОН пустуют. У меня несколько раз было, что "борода" стека рушила данные в SRAM... Я лично, всегда проверяю откомпиленный WinAVR код. Бывает придраться не к чему, а бывает наворочает мама не горюй. Заметил, что более ранние версии давали более компактный код. На эту тему здесь уже был разговор. Сошлись, на том, что большой код - высокая производительность, маленький код - низкая производительность...
--------------------
" Многие вещи нам непонятны не потому, что наши понятия слабы; но потому, что сии вещи не входят в круг наших понятий." (с) К.Прутков.
|
|
|
|
|
Jan 29 2010, 08:32
|

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

|
Цитата(Aesthete Animus @ Jan 29 2010, 09:42)  А Вы не могли бы привести пример такой игры? В ветке, посвященной WinAVR20100110 и в соседней. Просто комментирую один ключ, компилирую, смотрю результат. Если код уменьшился - так и оставляю, если увеличился - возвращаю назад. И так пару итераций. "Играюсь" так, когда почти вся программа написана, таким образом удается найти оптимальное сочитание имеенно под конкретную программу, ее стиль.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
Charoit Как прочитать РОН в WinAVR? Jan 28 2010, 15:10 manul78 Цитата(Charoit @ Jan 28 2010, 18:10) Поис... Jan 28 2010, 15:22 Charoit Цитата(manul78 @ Jan 28 2010, 18:22) Можн... Jan 28 2010, 15:26  manul78 Цитата(Charoit @ Jan 28 2010, 18:26) Мне ... Jan 28 2010, 16:07 Charoit Цитата(ReAl @ Jan 28 2010, 19:47) Хотел т... Jan 29 2010, 09:31  _Pasha Цитата(Charoit @ Jan 29 2010, 12:31) что ... Jan 29 2010, 10:13   Charoit Цитата(_Pasha @ Jan 29 2010, 13:13) Дык..... Jan 29 2010, 11:18 ReAl Цитата(Charoit @ Jan 29 2010, 11:31) pgm_... Jan 29 2010, 13:35 Charoit Кстати, в файле pgmspace.h есть макроопределения д... Feb 1 2010, 13:23 Палыч Цитата(Charoit @ Feb 1 2010, 16:23) А как... Feb 1 2010, 13:57  Charoit Цитата(Палыч @ Feb 1 2010, 16:57) Наверно... Feb 1 2010, 14:30 Charoit Не получается писать в память программ Для начала ... Feb 10 2010, 14:30 Палыч Цитата(Charoit @ Feb 10 2010, 17:30) Не п... Feb 11 2010, 07:26
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|