ваша информация, как в том бородатом анекдоте: абсолютно точная и совершенно бесполезная. вам достаточно в подписи написать "лучше всех знаю стандарт С" и больше ничего не писать - эффект будет ровно тот же
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
причем тут препирание? я так и не понял сути, которую вы оставили мне искать самостоятельно. если бы я мог справиться самостоятельно с проблемой, я б молчал.
Добавлено after 1 minute 7 seconds: мне нечего принимать к сведению, кроме того, что вы знаете стандарт Си лучше. но пользы для меня в этом нет
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Читаем 6.3.1.1 и обнаруживаем, что может быть как int, так и unsigned int.
Во-вторых, ссылка на стандарт с конкретным пунктом. В-третьих, ссылка на код, демонстрирующий это.
Удивительно, вы дважды привели в качестве аргумента integer promotions и не удосужились прочитать в стандарте что же это такое. Давайте, я сделаю это за вас.
Цитата:
If an int can represent all values of the original type (as restricted by the width, for a bit-field), the value is converted to an int; otherwise, it is converted to an unsigned int. These are called the integer promotions.
ладно, будем считать, что я по-английски бегло читаю.
итак, если значение влезает в int, то... вопрос: разве разность двух int8 может не влезть в int (для AVR он 16-битный)?
Добавлено after 2 minutes 9 seconds: каждое int8, как я понимаю, превращается в int перед вычислением разности, но по модулю оба числа в 256 раз меньше MaxInt. следовательно, может ли разность оказаться uint-ом?
Добавлено after 6 minutes 38 seconds: и, если может, то при каких условиях?
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Человек разумный скажет спасибо и примет к сведению, а не будет препинаться до усрачки.
Нет, мы будем препинаться! Ибо мы не привыкли отступать. "Это что ж это меня лохом должны считать! Нет. Ни в коем случае!" Сравните с нашими руководителями, похоже?(( Ужос! И ППЦ!
Откуда оптимизатор может знать? Ведь для хранения переменной, которая может принимать всего два значения, к примеру 0 и 1, я могу задать тип переменной unsigned long int.
во-первых, для переменных long и правило другое, речь-то шла о переменных "короче" int - так вот, они приводятся к "полноразмерному" int (хотя некоторые утверждают, что может и к uint) - и потом в вычислениях оптимизатор выбрасывает работу с "лишним" байтом
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Вы меня не поняли. Хорошо, пусть будет int или uint, и я буду пихать в эту переменную из вне какие нибудь данные, откуда компилятор будет знать что я буду запихивать, "короче" int или "длиннее"? Так будет asm-код или нет? В stm32 я не силен в asm, но тут то я могу asm потрясти.
Добавлено after 5 minutes 19 seconds: VladislavS, PINB он r8, но этот файлик доступен, его не сложно превратить в r16. Не пойдет. Интересует, на каком этапе int превращается в uint.
Сейчас этот форум просматривают: Google [Bot] и гости: 30
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения