Программач, мне давно не даёт покоя один вопрос - как люди вообще пишут софт на низкоуровневых языках?Предположим я запилю свой текстовый редактор с блекджеком и шлюхами на плюсах. И, разумеется, он будет уметь работать с вкладками. И тут возникает вопрос - а какого размера массив выделять под вкладки? 10? Мало. 100? Да, должно быть достаточно. А что если кто-то ебанется, и откроет 101 вкладку? То всё распидорасит. Да, я знаю про векторы. Но в чем смысл пердолиться с низкоуровневыми языками, если для любой хуйни используются тяжелые(в разы, относительно обычного массива) структуры. А без них программа превращается в минное поле. В чем тогда суть этого плюсодрочерства?
Без задней мысли лимит на кол-во вкладок
>>160876310 (OP)Процы для блоков управления машин, квадрокоптеров, беспилотников, стиралок, холодильников чаще всего даже компиляторов ни на что кроме крестов и си не имеют. Обычной памяти таких процов в метр-два просто не хватит даже чтобы хранить всю утф8. Запуск там чего-то сложнее простенькой ртос просто невозможен. Твой пример вообще простой, такие вещи всегда оговорены и предусмотрена защита от ошибок.
>>160876650самофикс "юникод", на утф8 хватит, но обычно юзают аски, это классика и часто есть в статичной таблице дисплея.
>>160876310 (OP)блять, ну ты и пидор.Динамические массивы есть почти по всех языках.Например в плюс можно воспользоваться std::vector.Который растет на корень двойки раз, если следующий элемент не убирается в этот.Или деки, которые выделяются не одним куском памяти. Короче, червь, или учи программирование или съебывай.
>>160876775Пост не читай @ сразу отвечай.>Да, я знаю про векторы. Но в чем смысл пердолиться с низкоуровневыми языками, если для любой хуйни используются тяжелые(в разы, относительно обычного массива) структуры
>>160876310 (OP)>как люди вообще пишут софт на низкоуровневых языкахС очевидными сложностями и ёблей.>В чем тогда суть этого плюсодрочерстваВ возможности обрабатывать это аппаратурой, собраной их найденных на улице кремниемых булыжников и пары лампочек, вывернутых в подъезде.
>>160876310 (OP)Работай с памятью кто тебе мешает открыть n вкладок Tab tabs = malloc(sizeof(Tab) n);
>>160877029Если у тебя оперативки на проце 128кб, можно в определенный момент жидко обосраться используя динамическое выделение памяти.
>>160876310 (OP)на языке ассемблера пишут компиляторы С и С++драйверы и всякие высокопроизводительные тулзы, текстовые редакторы на нем не пишут
>>160877078Узнай сколько у тебя оперативы и посчитай сколько он сможет тянуть вкладок в худшем случае и огранич их количество. А вообще используй патерны типа proxy и вообще неиспользуемую часть выгружай в ROM.
>>160876310 (OP)Есди бы не не низкоуровые чщыки, то не было бы таблетомов к твоим любимвм прогам и игорям. Мимо пишу код для ардуино на асме. Писал код на военке - на асме. Ревершу чужой код и преобразую чужие баттхерты на работе в кофе, тому шо коые преобразуется через меня в код не на асме
>>160877293Блядь, ебанное кофе. Из-за него руки уже потряхивает. Из-за этого коверкаю
>>160876310 (OP)Указатели. Или ты хочешь писать софт на низкоуровневых языках без ебли с памятью? Хуйцов тебе.
>>160877203Почему? Есть процы со встроенным модулем усб, часто с поддержкой стоковой клавиатуры. Включаешь модуль, даешь ему тактировку, пишешь куда выдавать, явно на си\крестах и вот тебе текстовый редактор, правда задача не очень часто встречается. Чаще всего больше чем ввод пары тройки чисел ничего не нужно.
>>160877351модуль есть конечно, но общаться с ним нужно на машинном языке (то есть банальными обращениями к регистрам, положить в регистр такой то байт такой то что бы из usb вывести пакет данных такой то...) и для этого опять таки нужен язык ассемблера или компилятор си-шного кода написанный на языке ассемблера
>>160877622Ну так и есть, в одной руке даташит, в другой примеры которые написал производитель, в третьей калюкулятор для адреса регистров, в четвертой клавиатура, в пятой проц, в шестой осциллограф. Шива-программист.
>>160877766>>Ну так и есть, в одной руке даташит, в другой примеры которые написал производитель, в третьей калюкулятор для адреса регистров, в четвертой клавиатура, в пятой проц, в шестой осциллограф. Шива-программистдвоичную и 16-ричную арифметику надо в уме считать, хотя бы частично. Осциллограф вряд-ли (редко), скорее логический анализатор.Аппноуты надо почитать конечно ну и даташит естессно...
>>160877978У меня нет логического анализатора, есть осциллограф, мультиметр и генератор сигналов, обхожусь тем что есть.
>>160878219с какими микроконтроллерами работаешь?
>>160878310нек в850(уже ренесас), ренесас рх850, техас тм4ц129, нхп с32к(бывшая моторола). Много с какими, это основные. Было что-то писал на атмел такой как в ардуино дуо или как-то так, на кортекс сам3х ядре.
>>160876844убейся червь.Вектор нихуя не тяжелый. Уж точно не в разы.Скорость работы такая же как у массива.Объем равен объему массива + 8 байт (ну или 16, если ты извращенец)
Если нужна скорость. то у тебя не остается выбора, на чем писать код.
>>160878451>>нек в850(уже ренесас), ренесас рх850, техас тм4ц129, нхп с32к(бывшая моторола). Много с какими, это основные. Было что-то писал на атмел такой как в ардуино дуо или как-то так, на кортекс сам3х ядре.и где все это "счастье" ставится? наверняка автомобильная электроника?Я занимался только PIC STM32 AVR на уровне хобби и единичных проектов типа балансировки колес, регуляторов оборотов и частотников, УЗЧ с цифровым управлением и всякой чепухи
>>160878651Ты абсолютно прав, автомобили, мотоциклы, лодки, легкая авиация, строительная и сельхоз техника.
>>160879457почему туда ставят эту редкую платформу? почему не AVR или что то типа такого
>>160878560Вектор как минимум раза в два медленней массива.
>>160879797иди на хуй.вектор по скорости такой же как массив.
>>160879576Автопроизводители очень медленно реагируют на новые технологии и возможности, ренесас самый крупный поставщик всего для автомобильной электроники, чаще всего не заказывая сотни тысяч экземпляров и не подписав нда - тебе не дадут документации, следовательно тем кто захочет что-то хакнуть в машине - будет тяжело. В чипах на ключах часто стоят инфенионы такие как в кредитках, там уровень безопасности тоже высок. В итоге получается что производители покупают это потому что мало дыр, много платформ поддержки их внутренних для отказоустойчивости, по сравнению с которыми стандарты мисра - лажа дырявая. Они не хотят чтобы кто-то выудил прошивку. Часто еще стандарты связи и нужные модули, не так легко найти такой развитый и крутой как кан модуль встроенный в ренесас рх850, а вот свистелки вроде контроллера лцд для автомобильных блоков нужны не так часто как кан. У япошек, например есть универы для прогеров на автомобильную электронику и они привыкли к своим некам(ренесасам), на них уже и наработок много и опыта. Мерседес вообще много куда ПЛИСы ставит альтеровские, жесткая хрень. В итоге они варятся в своем закрытом мирке с нужными им модулями и интерфейсами с малым количеством дырок.
>>160879991>>Автопроизводители очень медленно реагируют на новые технологии и возможности, ренесас самый крупный поставщик всего для автомобильной электроники, чаще всего не заказывая сотни тысяч экземпляров и не подписав нда - тебе не дадут документации, следовательно тем кто захочет что-то хакнуть в машине - будет тяжело. В чипах на ключах часто стоят инфенионы такие как в кредитках, там уровень безопасности тоже высок. В итоге получается что производители покупают это потому что мало дыр, много платформ поддержки их внутренних для отказоустойчивости, по сравнению с которыми стандарты мисра - лажа дырявая. Они не хотят чтобы кто-то выудил прошивку. Часто еще стандарты связи и нужные модули, не так легко найти такой развитый и крутой как кан модуль встроенный в ренесас рх850, а вот свистелки вроде контроллера лцд для автомобильных блоков нужны не так часто как кан. У япошек, например есть универы для прогеров на автомобильную электронику и они привыкли к своим некам(ренесасам), на них уже и наработок много и опыта. Мерседес вообще много куда ПЛИСы ставит альтеровские, жесткая хрень. В итоге они варятся в своем закрытом мирке с нужными им модулями и интерфейсами с малым количеством дыроктем не менее кодграбберы и всякие разлочки для бортовых пк регулярно появляются на рынке
>>160880192Исходя из их цены, понятно что на их разработку потрачено достаточно много времени и специалистов которым пришлось неплохо заплатить, иначе уже было бы как с обманками на принтерные картриджи, которые стоят копейки и клепаются любым дядюшкой ляо из китая.
>>160876310 (OP)Под конкретную задачу практически всегда можно написать свои структуры, которые будет легче и быстрее.Если тебе не нужен весь функционал вектора, то можно запилить свой, без лишних шлюх, с тем же realloc'ом. На какой-нибудь высокоуровневой джаве и близко ничего такого не сделать, там вообще хуй знает как что выделяется и освобождается.
>>160877293>>160877340чувак, как ты прогаешь если у тебя мисскликов хуева гора даже в обычной переписке
>>160884755Его от кофе колбасит, у меня тоже такое пару раз было, кроме того что руки трясутся еще в груди немного щемит и ощущение опасности и тоски долбит.