Тот пример что я привел, при компиляции дает разницу в 2 байта, вроде, и чем больше обращений к структуре в функции используется, тем больше разница. Куда конкретнее то?
WinAvr в вопросах и ответах
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
Тот пример что я привел, при компиляции дает разницу в 2 байта, вроде, и чем больше обращений к структуре в функции используется, тем больше разница. Куда конкретнее то?
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
вот ведь некоторые умеют достать! ну что ж, извольте. вы сомневались в результатах? они-таки на самом деле подозрительные!!! цитирую ваш код, чтобы не было сомнений:BerZerK-ku писал(а)::))) Вы уверены что код и озвученные результаты совпадают? Проверьте. Тот пример что я привел, при компиляции дает разницу в 2 байта
BerZerK-ku писал(а): НУ раз так, вот пример попроще:Код: Выделить всё
char b, c ,d;
struct var
{
char b;
char c;
char d;
} str;
void fs(char v)
{
var *st = &str;
//st->b = 3;
st->c += v;
st->d -= v;
}
void f(char v)
{
//b = 4;
c += v;
d -= v;
}
__C_task void main(void)
{
while(1)
{
//fs(3);
f(3);
}
}
беру AVR Studio 4.18, WinAVR 20100110, создаю проект для atmega88 Simulator 2. ввожу этот код в окно редактора, компилирую:
это свидетельствует о том, что сам автор гневных постов в мой адрес НЕ КОМПИЛИРОВАЛ СВОЙ ПРИМЕР! он абсоютно нерабочий, в отличие от моего, который работает, но не так, как кому-то хотелось бы.
ладно, раз я сам не без греха, делаю скидку на опечатки, исправляю явное:
Код: Выделить всё
typedef struct {
char b;
char c;
char d;
} var;
var str;Код: Выделить всё
__C_task компилирую после исправления ошибок. что имеем? вот что:
причем это и для варианта
Код: Выделить всё
int main(void)
{
while(1)
{
fs(3);
//f(3);
}
}
Код: Выделить всё
int main(void)
{
while(1)
{
//fs(3);
f(3);
}
}
собственно говоря, мне кажется, вопрос исчерпан полностью... возможно теперь болтун соблаговолит сделать столь же убийственный разбор моих кодов
да, вот еще решил добавить
как говорится, найдите отличия
- Вложения
-
- Snippy0006.jpg
- (53.1 КБ) 472 скачивания
-
- Snippy0005.jpg
- (19.67 КБ) 616 скачиваний
-
- Snippy0004.jpg
- (21.37 КБ) 642 скачивания
-
- Snippy0003.jpg
- (60.24 КБ) 679 скачиваний
битва с дураками проиграна, победители торжествуют. слава победителям!
- Avarges
- Вымогатель припоя
- Сообщения: 512
- Зарегистрирован: Вт дек 22, 2009 02:24:50
- Контактная информация:
Re: WinAvr в вопросах и ответах
Я же говорил, что структуры это только ради понтов и что видим в итоге: как раз 2 страницы одних понтов 
Новички, избегайте структур однозначно, а то зациклит
лучше разминайте шею: 
Новички, избегайте структур однозначно, а то зациклит
лучше разминайте шею: 
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
вам лучше не вмешиваться, а то можно ненароком под раздачу попастьAvarges писал(а):Я же говорил, что структуры это только ради понтов и что видим в итоге: как раз 2 страницы одних понтов
Новички, избегайте структур однозначно, а то зациклитлучше разминайте шею:
понты в теме есть, чего там скрывать... но не в структурах.
структуры - очень полезная вещь, и избегать их не стоит, а наоборот: нужно четко понимать, для чего они нужны и когда дают преимущество (и в чем именно преимущество). тогда все будет в шоколаде.
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BerZerK-ku писал(а)::)) странно, а у меня все работает. Может я что-то не так делаю?
разумеется - вы болтаете языком
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
опыт то его не пропьешь, при не имении оного 
- Вложения
-
- example.rar
- (4.75 КБ) 177 скачиваний
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BerZerK-ku писал(а):опыт то его не пропьешь, при не имении оного
это вы верно подметили, вам пропивать нечего... вы снова дали ту же хрень, что и раньше, да еще и файлы у вас c расширением cpp - если вы вдруг решили, что WinAVR все равно - ошибаетесь, он по-разному реагирует на разные расширения файлов. ваш пример в Сишном режиме не компилируется - я уже писал. потрудитесь соответствовать тому, что говорите: компилируйте в Си-режиме. и ваш архив не содержит makefile. короче, очередное подтверждение квалификации...
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
Т.е. вы хотите сказать, что этот пример не запускается? Вроде всего хватает 

-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BerZerK-ku писал(а)::shock: т.е. вы хотите сказать, что этот пример не запускается?
я хочу сказать, что это ВООБЩЕ НЕ ПРИМЕР, который можно "запустить". и по поводу того, что находится ВНУТРИ АРХИВА читайте этот пост viewtopic.php?p=1085118#p1085118
запускается либо проект AVR Studio, либо makefile - что еще можно запускать, я не в курсе.
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
Дак и откройте проект в AVR Studio, чего вас остановило то? Не доверяете его отладчику?
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
вместо того, чтобы пытаться впарить ваш исходник, потрудились бы прокомментировать УЖЕ ПОЛУЧЕННЫЕ РЕЗУЛЬТАТЫ ЕГО КОМПИЛЯЦИИ - вроде бы я достаточно красочно все расписал, даже листинг привел... для повторения МОЕГО эксперимента остается только добавить, что я компилировал при оптимизации -Os, хотя и без оной -O0 результат НЕ ДОКАЗЫВАЕТ разницу в размере кода при использовании структур.
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BerZerK-ku писал(а)::)) а полученный код (см. предыдущие примеры) подтверждает написанное в AVR035.
вы не просто болтун, вы чемпион по этому виду спорта...
ответьте конкретно, четко на следующие вопросы:
1. какая версия вашего компилятора?
2. почему ваши файлы имеют расширение не .c , а .cpp?
3. при помощи какого makefile получены ваши результаты?
4. почему нет листинга и скриншота (или хотя бы текстовой копии) результатов компиляции каждого варианта?
5. почему нет комментариев результатов, которые я привел в своем посте, в том числе листинг обоих функций, код которых совпадает байт в байт?
6. что скажете про то, что в main ни одна из функций не вызывается вообще?
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BerZerK-ku писал(а)::)) т.е. ваш эксперимент и картинки, выглядят более убедительно, чем выложенные мной проекты симуляции? В котором можно самому все пощупать и потрогать.
все понятно. вместо ответов на конкретные вопросы снова треп. болтун в квадратекубе. я бы даже сказал в сфере, как конь в вакууме. зря я повелся
битва с дураками проиграна, победители торжествуют. слава победителям!
-
BerZerK-ku
- Мучитель микросхем
- Сообщения: 492
- Зарегистрирован: Вт июл 22, 2008 08:10:54
Re: WinAvr в вопросах и ответах
Во, придумал, во вложении проект. Все настроено, попробуйте использовать в проекте последовательно каждую из функций и привести размер прошивки. Меняется?
AVR Studio 4.13 + WinAVR-20100110
- Вложения
-
- example.rar
- (8.13 КБ) 178 скачиваний
- BCluster
- Собутыльник Кота
- Сообщения: 2512
- Зарегистрирован: Пн апр 06, 2009 19:33:29
- Откуда: Молдова, Кишинев
- Контактная информация:
Re: WinAvr в вопросах и ответах
Порция лулзов. Случайно на работе нашел на компе авр студию. Ну запустил...
Неа
Совсем
По крайней мере с вашими настройками - 166 байт (O1). Во всех трех случаях.
Вы же утверждаете, что структуры экономят память программ.
Включаем Os
Второй вариант, со указателем на структурку как раз, занимает 196 байт. Остальные - 166 байт.
У вас другие результаты? Дайте скринов
BerZerK-ku писал(а):Меняется?
Неа
Вы же утверждаете, что структуры экономят память программ.
Включаем Os
Второй вариант, со указателем на структурку как раз, занимает 196 байт. Остальные - 166 байт.
У вас другие результаты? Дайте скринов
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
BCluster писал(а):BerZerK-ku писал(а):Меняется?
НеаСовсем
По крайней мере с вашими настройками - 166 байт (O1). Во всех трех случаях.
Вы же утверждаете, что структуры экономят память программ.
Включаем Os
Второй вариант, со указателем на структурку как раз, занимает 196 байт. Остальные - 166 байт.
У вас другие результаты? Дайте скринов
абсолютно аналогичные результаты!
просто любопытно, что будет сказано болтуном теперь? независимый тестер появился

битва с дураками проиграна, победители торжествуют. слава победителям!
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: WinAvr в вопросах и ответах
по вашим "примерам" я уже дал не один раз комментарии, правда, слово БРЕД не очень конструктивное, но ведь правильное же...BerZerK-ku писал(а)::)) ну вы же тоже игнорируете мои вопросы, и не приводите ни каких конструктивных комментариев по моим примерам.
битва с дураками проиграна, победители торжествуют. слава победителям!