Читал в Интернете о проблемах с long long. В какой версии они исправлены (и исправлены ли вообще), как это обойти? У меня 4.10А. Умножает правильно, деление не верное.
Вчера потратил пару часов на изучение листинга и map файла. Выяснил вот что: все заработало, если выставить галку в настройках компилятора "Place string literals and constant in initialized RAM". При этом константа, на которую я умножаю (1000 в моем случае) хранится в сегменте RAM NEAR_I, при старте инициализируется из FLASH NEAR_ID. Если эту галку убрать - константа хранится в RAM в сегменте NEAR_C. Хотя в симуляторе она есть в RAM и там и там. Да и вообще, если убрать последующее деление - умножение работает. В общем до конца так и не понял. Для примера кладу выдержки из листинга и map файла для обеих случаев.
Чегой-то файлы не добавились?! Как это сделать то?