Прямого отношения - не имеет. А косвенно влияет очень сильно. См. описание. Пересказывать не буду. Просто если переменная должна быть доступна из кучи разных мест, то запихивать ее в стек - не получится - накладно. Упрощенно как-то так.
_________________ Человек - это звучит гордо, а обезьяна - объективно...
Прямого отношения - не имеет. А косвенно влияет очень сильно. См. описание. Пересказывать не буду. Просто если переменная должна быть доступна из кучи разных мест, то запихивать ее в стек - не получится - накладно. Упрощенно как-то так.
Совершенно не так. В качестве коллбека рекомендую
Цитата:
См. описание.
_________________ С уважением, Виктор.
Последний раз редактировалось ut1wpr Чт май 09, 2013 20:19:15, всего редактировалось 1 раз.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Даже не хотят вспомнить два простых словосочетания - стек данных и стек возврата. Свалили все в кучу. Компилятор умнее их оказался, и пользуется двумя стеками. Практически все грамотные компилеры позволяют регулировать их соотношения и размеры.
Да боже ж мой. На картинке еще есть и закладка HEAP Configuration. И шо? Все грамотные компилеры тоже это имеют, а неграмотные не имеют? Так? Только вот "маленькая" неувязочка. В книжке от производителя почему-то никакого data stack register нетути, а есть main stack, process stack и stack pointer. "Маленькая" разница. Вспомним до кучи Link Register, чтобы еще больше дело со стеками запутать. Кучу данных тоже можно организовывать как левой ноге захочется. Соответственно этот "грамотный" компилер - просто предлагает СВОЙ способ, и только. CV AVR тоже имеет визардов, которые кучу всякого могут сделать одним способом из многих. Но из этого не следует, что он умный, а прочие компилеры тупые. Как-то так, ИМХО. А иначе получим: кто-то (да даже я ради понтов, например ) нацарапает компилер, который исходно будет иметь закладки для просто стека, для стека данных, для кучи, для динамического массива (а можно и для нескольких ), для буферов USART, USB, EtherNet ... И пусть код будет мягко говоря неоптимизирован, зато закладок-то сколько! ГРАМОТНОСТЬ так и прет. УРРЯ, товарищи!
_________________ Человек - это звучит гордо, а обезьяна - объективно...
А таки шо не так? С мифическим data stack вроде разобрались - что его производителем не предусмотрено, а закидоны отдельно взятых компиляторов не в счет. Будем с volatile тоже разбираться? Дык я "за"!
_________________ Человек - это звучит гордо, а обезьяна - объективно...
Даже не хотят вспомнить два простых словосочетания - стек данных и стек возврата. Свалили все в кучу. Компилятор умнее их оказался, и пользуется двумя стеками. Практически все грамотные компилеры позволяют регулировать их соотношения и размеры.
Да боже ж мой. На картинке еще есть и закладка HEAP Configuration. И шо? Все грамотные компилеры тоже это имеют, а неграмотные не имеют? Так? Только вот "маленькая" неувязочка. В книжке от производителя почему-то никакого data stack register нетути, а есть main stack, process stack и stack pointer. "Маленькая" разница. Вспомним до кучи Link Register, чтобы еще больше дело со стеками запутать. Кучу данных тоже можно организовывать как левой ноге захочется. Соответственно этот "грамотный" компилер - просто предлагает СВОЙ способ, и только. CV AVR тоже имеет визардов, которые кучу всякого могут сделать одним способом из многих. Но из этого не следует, что он умный, а прочие компилеры тупые. Как-то так, ИМХО. А иначе получим: кто-то (да даже я ради понтов, например ) нацарапает компилер, который исходно будет иметь закладки для просто стека, для стека данных, для кучи, для динамического массива (а можно и для нескольких ), для буферов USART, USB, EtherNet ... И пусть код будет мягко говоря неоптимизирован, зато закладок-то сколько! ГРАМОТНОСТЬ так и прет. УРРЯ, товарищи!
Сколько импрессии! Я в восторге. Вашу бы энергию, да в мирных целях. Никак не пойму, что вас так "приподняло" со стула? И о каком производителе и его книжечке идет речь? Я вообще-то говорил о компиляторах от IAR. Без привязки к аппаратным особенностям МК разных мастей. Потому как стеки, о которых я упомянул находятся "этажом выше" вами упомянутых. Это особенности компилятора и механизмов его работы с функциями и переменными. Вы, похоже, имели ввиду, уровень машинного представления. А это разные вещи. Пожалуйста, не нервничайте. Это не способствует взаимопониманию.
А таки шо не так? С мифическим data stack вроде разобрались - что его производителем не предусмотрено, а закидоны отдельно взятых компиляторов не в счет. Будем с volatile тоже разбираться? Дык я "за"!
В чем мифичность стандартного механизма распределения памяти компиляторов я так и не понял. Если вам надо с квалификатором volatile разбираться - пожалуйста, кто ж вам запретит. Мне не надо, я много лет тому с ним разобрался. Еще до эры авропиков.
Я вообще-то говорил о компиляторах от IAR. Без привязки к аппаратным особенностям МК разных мастей.
О. Я компиляторы перепутал. Ну и фиг с ними. Я GCC пользую. И мой тезис остается прежний: если нет никаких аппаратных средств поддержки, то всякие Data Stack, Heap, ... всего-навсего "умничанье" отдельно взятого компилера. Баг это или фича - зависит от симпатий конкретого индивидуума. Но вот никаким стандартным решением не является. И аргументом типа "а вот оно так делается" тоже быть не может. Более прямолинейно: Data Stack может быть, а может и НЕ БЫТЬ. С соответствующими последствиями. Вот ежели бы был такой специальный Data Stack Register и еще к нему Data Stack Memory - тогда Data Stack однозначно ДОЛЖЕН бы был быть. Да вот нетути такого. Ну и исключительно вредности для: пример МК с Data Stack Register озвучьте. Чтобы понятно было, на какой планете IAR живет. Раз у него "клеш с бомбошками".
_________________ Человек - это звучит гордо, а обезьяна - объективно...
В чем мифичность стандартного механизма распределения памяти компиляторов я так и не понял.
В том, что нет такого стандарта - Data Stack. А есть баг/фича от IAR. И только. Да, целиком мои посты цитировать не обязательно.
Потрясающее самомнение. Вы считаете, что вас будут цитировать? Давайте договоримся, вы смените штанишки, которые пока вам еще впору, тогда и поговорим. Когда вы почувствуете, что они вам жмут. А пока изучайте инструментарий. Тоже иногда полезно.
Потрясающее самомнение. Вы считаете, что вас будут цитировать?
А я тут ни при чем - меня цитировать не надо. Отдельно взятые индивидуум или компания стандарты не устанавливают. И это подтверждается "быстрым отходом на заранее подготовленные позиции", как только нужны аргументы весомее, чем скриншот.
_________________ Человек - это звучит гордо, а обезьяна - объективно...
А что цитировать то, какие аргументы??? Это всё бред не о чём...
Дык и я об этом. Нету Data Stack Register - вот и нету такого стандарта - Data Stack. В отличие от просто стека. А иначе куда бы он делся, был бы. Чтобы железку применить. В любом компиляторе. "Нет человека - нет проблемы" .
_________________ Человек - это звучит гордо, а обезьяна - объективно...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения