|
|
|
|
Wiza Иногда главнее - качество. - Качество -- понятие мутное. Абсурдно называть прошивку "некачественной" из-за чуть большего объема и чуть меньшего быстродействия, если она удовлетворяет ТЗ. Другое дело -- количество ошибок, ну так в большой ассемблерной программе накосячить легче. в сравнении WinAPI с ЯВУ для компа - Э... как можно сравнивать API (любой) с языками программирования. AlexAlcoa А причем здесь программист - Плохой программист напишет жутко неэффективную, кривую и глючную программу на любом ЯВУ. "getchart и sendstring" они и займут вагон памяти - Странные какие-то представления об эффективности компиляторов. С какой радости они займут вагон памяти, можете объяснить или доказать ассемблерным листингом? Ко всему прочему, в случае необходимости можно написать любую функцию на ассемблере и вызывать её из основной программы на Си.
|
|
|
Господа, опять вы за старое Пишите, на чем умеете! Количество ошибок в программе зависит только от того, кто пишет программу - и ни от чего больше. Да, на чем-то ошибаться легче, а на чем-то труднее, но это - не закон, а вероятность! Сошлюсь также на покойного Дейкстру - "выбором языка программирования и режимов оптимизации можно сократить объем программы в 2..3 раза, правильно реализованным алгоритмом - на 2..3 порядка". |
|
|
chav1961 - Товарищь chav1961 упрощает : - ) Количество ошибок в программе зависит только от того, кто пишет программу - и ни от чего больше. От выбранного инструмента (языка) количество ошибок зависит сильно, что Вы и подтверждаете: на чем-то ошибаться легче, а на чем-то труднее Но потом противоречите сами себе: но это - не закон, а вероятность! Статистическая вероятность ошибки -- вполне себе закон, есть же соответствующие исследования касательно программного обеспечения.
|
|
|
caddr, упорный Вы товарисчь! Если устроить исследование с участием меня (Ассемблер) и любого лоха (язык С), окажется, что на Ассемблере писать быстрее, проще и правильнее. Безо всякой ложной скромности Поэтому повторюсь: единственный источник ошибок в программе - сам программист. Более того, разговоры о правильном выборе на чем писать (это мои личные наблюдения за студентами) создают у многих людей иррациональную уверенность в том, что выбор, к примеру, языка С автоматически гарантирует написание абсолютно правильных, молниеносных, компактных программ, понятных любому идиоту . Выбор "правильного" языка уже давно - вопрос веры. Выбирайте то, что легче пойдет. У меня, например, критерий выбора вообще эмпирический - если память программ в микроконтроллере менее 4К, для него надо писать на Ассемблере, если более - на С. Не на С forever, на на С для данного случая! |
|
|
chav1961 Если устроить исследование с участием меня (Ассемблер) и любого лоха (язык С) - Заведомо некорректный эксперимент. Исследование надо строить участием Вас (Ассемблер) и Вас же (язык Си). Более-менее сложную программу на Си Вы напишите быстрее и с меньшим количеством ошибок, обнаруженных уже в процессе эксплуатации устройства. Источник ошибок всегда программист. Но будь он трижды гением, остается банальная человеческая невнимательность. У меня, например, критерий выбора вообще эмпирический - если память программ в микроконтроллере менее 4К - Достаточно спорный критерий, если не использовать гигантские библиотечные функции а-ля printf, принципиальной разницы по объему прошивки не наблюдается. Прочем, не суть важно. Вы как раз подтверждаете высказанную мной ранее мысль -- при адекватном восприятии окружающей действительности использование ассемблера всегда вынужденная мера : - ) Не на С forever - В данной теме прослеживалась как раз обратная мысль "настоящие джедаи пишут только на асме, патамушто это круто".
|
|
|
Про 4К - дело, собственно, не в объеме прошивки. Просто микроконтроллер с 4К и более уже "вырастает" из ассемблера - в нем и ресурсов побольше, и система команд побогаче (речь - не про PIC), и более-менее сложные техники программирования на нем можно применять, не трясясь над каждым битом. Языки высокого уровня - это не блажь программеров, а необходимость. А джедаи пусть пишут на асме. Запереть их в камеру, дать им Мегу256, и пока последний байтик кодом не заполнят - не выпускать Ассемблер я люблю, но до таких жертв моя любовь не доходит. |
|
|
djelektronik: при нынешних ценах на авр это не имеет значения не влазит в тини2313? купим мегу8 разница в цене 30 центов басурмане и борются за эти центы при изготовлении аппаратуры. посмотрите на печатные платы самых разных устройств: сколько там незапаянных деталей. Причем, часто, не опционных для разных версий, а просто "сэкономленных" |
|
|
chav1961: Сошлюсь также на покойного Дейкстру - "выбором языка программирования и режимов оптимизации можно сократить объем программы в 2..3 раза, правильно реализованным алгоритмом - на 2..3 порядка". Полностью согласен. Правда часто уменьшение объёма влечет замедление программы. (я про программирование на ассемблере) |
|
|
Кстати, учитывая "любовь" Дейкстры к GOTO, он наверняка ненавидел ассемблеры : - ) (достоверно можно сказать, что недолюбливал BASIC, FORTRAN, PL/I, COBOL и чего-то ещё).
|
|
|
2 SAN Довольно таки непонятно Ваше последнее утверждение. Выходит, что чем больше программа по обьему - тем быстрее работает ? |
|
|
|
|