0 Пользователей и 1 Гость просматривают эту тему.
Бухлоналиватор - это который по стопкам, выставленных в ряд по очереди наливает?
Байт, извини, могу только пошутить на счет ника.))Поигрался только с гуглом. Вот:https://radioprog.ru/post/285Вдруг поможет.
...Можно попробовать вот так поставить (byte)(1<<m) для приведения типа промежуточного результата.
Two_byte, люди пишут такие проекты на ардуине вообще не парясь о памяти. https://alexgyver.ru/gyverdrink/
Да просто доковыряться уже не до чего.
Да просто доковыряться уже не до чего. Прога то работает. А мне стало интересно - почему такая бяка творится.
Цитата: Two_byte от 31/05/2020 10:06:28Да просто доковыряться уже не до чего.Со встройко на Си не работал, но по стандарту имеются "жёсткие" типы данных. записываются вроде как __int8 Опять же по стандарту размер char зависит от аппаратной платформы - может быть и 5 бит и 53 бита, как и int может быть 16 бит, 32 и даже 64 бита. Потому и ввели эти "жёсткие типы"
полностью на ассемблере написаны!
Я уже себе всю башку
Шта на C Builder, шта на keil, шта на AVR Studio unsigned char=2^8 ни разу не подвёл.
#include <stdio.h>#include <limits.h>int main(void){ printf("Size of char: %d",CHAR_BIT); return 0;}
z = 1 << m;
Ну вот почему-то, в том коде if ((!(x & (1<<m))) && (!(nShot & (1<<m)))) ,он просто не устанавливает m бит а сдвигает пару регистров R18R19.Я к тому, что изучать поведения компилятора нужно на простых выражениях.И предложил два случая в одном фигурирует константа, в других только переменные.Может для константы нужно тоже явно формат объявлять типа (1U<<m), фиг его знает.
Поэтому - если нечего сказать по настройке - лучше молчать
есть альфа и омега в программироввание....
Валя, мой номер тел. тот же. звякни. Если не сможешь - ватсап.
AVR после обновы винды (7) вообще не работает, только Atmel studio 7.0
Цитата: Silver от 08/06/2020 14:14:41AVR после обновы винды (7) вообще не работает, только Atmel studio 7.0А я на ХР сижу и не жужжу. И на 7-ку не собираюсь, во всяком случае на своем рабочем ноуте.
Цитата: Two_byte от 08/06/2020 20:25:09Цитата: Silver от 08/06/2020 14:14:41AVR после обновы винды (7) вообще не работает, только Atmel studio 7.0А я на ХР сижу и не жужжу. И на 7-ку не собираюсь, во всяком случае на своем рабочем ноуте.У мну именно поэтому два ноута,с хрюшей и 10.На хрюше avr.
Цитата: Two_byte от 01/06/2020 20:50:45Поэтому - если нечего сказать по настройке - лучше молчатьПри таком подходе боюсь тему нужно закрывать.Конкретно вам тут никто ничего не скажет, по опыту могу сказать, что очень многое зависит от версии компилятора. Чем более свежая версия компилятора тем, как правило, более компактный код он делает.На ARM это очень заметно, прошивка, которая год назад не влезала в контролер, на новой версии бац влезает.Для GCC компилятора, я также предложил поиграться с опциями оптимизации#pragma GCC optimize "1", #pragma GCC optimize "2" или в MakeFile CFLAGS += -O$(OPT)Опции-O1, -O2, -O3 и -Os