Перейти к содержанию
    

0+1 != 1

unsigned long x=0;

x++;

Как Вы думаете чему равен х ???

 

CrossWorks AVR среда (для AVR) новая о чем и говорит номер версии.

В отличии от CrossWorks ARM (где они используют компилятор gcc) здесь похоже запускается их компилятор

>> CrossWorks AVR C Compiler Release 1.0

>> Copyright © 1997-2003 Rowley Associates Ltd.

 

хотя для бага всетаки круто...

посему, если есть, приведите доп. инф.

- тип контроллера, настройки оптимизации, ассемблерный код, etc.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1.Тип контроллера - чудеса с любой мегой.

2. Проблема не в оптимизации (моё мнение). т.к. выключил всё что можно. В debug и release одно и тоже.

3. Проявляется только с типами: long и unsigned long.

4. Код:

aaa++; :)

008C E0E0 LDI R30, _aaa & 0xff

008E F1E0 LDI R31, _aaa >> 8

0090 8081 LD R24, Z

0092 9181 LDD R25, Z+1

0094 A281 LDD R26, Z+2

0096 B381 LDD R27, Z+3

0098 0196 ADIW R24, 1

009A AF4F SBCI R26, 255

009C BF4F SBCI R27, 255

009E 80930001 STS _aaa, R24

00A2 90930101 STS _aaa + 1, R25

00A6 A0930201 STS _aaa + 2, R26

00AA B0930301 STS _aaa + 3, R27

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...