|
ASM: приказали долго жить?, Сколько еще продержится |
|
|
|
Jun 19 2006, 23:28
|
Участник

Группа: Новичок
Сообщений: 38
Регистрация: 12-09-05
Пользователь №: 8 464

|
На досуге интересует мнение всех кто занимается программированием МК - коль долго еще возможно будет использовать ASM в разработках. Понимаю что тапочки и нужно спешить осваивать C (аппаратные возможности растут и проще написать A*B, например...). Но как сейчас какие плюсы - пишешь то что надо, не зависишь от уровня тупости разработчиков C компилятора, т.е. все на виду (предпочитаю надежность быстроте разработки). Но бесит реализация арифметики на ASMе. Ваше мнение, господа?
|
|
|
|
|
 |
Ответов
|
Jun 20 2006, 06:56
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 2-05-06
Из: Санкт-Петербург
Пользователь №: 16 707

|
Попробовал asm, ничего, не страшный совсем  Счас играю с видеовыводом на МК. Среди реализаций есть полностью на Си, однако помогает знать что генерит компилятор.
|
|
|
|
|
Jun 21 2006, 03:27
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(defunct @ Jun 21 2006, 02:54)  Цитата(white.wind @ Jun 20 2006, 09:56)  Попробовал asm, ничего, не страшный совсем  Счас играю с видеовыводом на МК. Среди реализаций есть полностью на Си, однако помогает знать что генерит компилятор. Он не просто не страшный совсем, я бы сказал AVR-ASM самый удачный и простой в использовании среди всех других ассемблеров MK. Очень спорный тезис. Меня так после асма 51-го AVR'овский просто ломал. Немного лучше стало, когда слепил кучу макросов, чтобы уменьшить объем писанины. Когда перешел на С (а это оказалось оченно правильным, т.к. С код на AVR ложится очень неплохо), то началась просто другая жизнь. Хотя асм AVR'овский не забывал - частенько инспектировал кодогенерацию по листингам. На сегодня могу сказать, что и асм MSP430 куда как удобнее и приятнее, чем AVR'овский. Цитата(defunct @ Jun 21 2006, 02:54)  Писать программы (без математики с плавающей точкой) на Avr-ASM не сложнее чем на C. Опять не соглашусь - сложнее, дольше и получается громоздкий (по сравненю с С) и запутанный код, в котором через пару месяцев и автору с ходу не разобраться. Из всех асмов, которые приходилось видеть, самым похожим на С является ассемблер для Blackfin'а. AVR'у в этом смысле до Blackfin'а далеко.  Цитата(defunct @ Jun 21 2006, 02:54)  Порой даже проще (вчастности обработку прерываний проще и качественнее делать на asm). Качественнее в смысле быстродействия и размера кода - да. Проще - нет.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Jun 22 2006, 10:56
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(dxp @ Jun 21 2006, 06:27)  Цитата(defunct @ Jun 21 2006, 02:54)  Он не просто не страшный совсем, я бы сказал AVR-ASM самый удачный и простой в использовании среди всех других ассемблеров MK.
Очень спорный тезис. Меня так после асма 51-го AVR'овский просто ломал. Немного лучше стало, когда слепил кучу макросов, чтобы уменьшить объем писанины. Когда перешел на С (а это оказалось оченно правильным, т.к. С код на AVR ложится очень неплохо), то началась просто другая жизнь. Хотя асм AVR'овский не забывал - частенько инспектировал кодогенерацию по листингам. На сегодня могу сказать, что и асм MSP430 куда как удобнее и приятнее, чем AVR'овский. Я тоже мигрировал с 51-го на AVR, первую неделю плевался, а потом разобравшить понял насколько порядков AVR-Asm лучше. Слепил макросы в стиле x86 и стало вообще все просто. чем меньше команд имеется в арсенале программиста, тем сложнее писать программу на ассемблере. У MSP всего 27 мнемоник, если не ошибаюсь, и операнды перевернуты (аргументы идут первыми параметром, рез-тат записывает во второй). Следовательно для программиста MSP-Asm просто не может быть куда удобнее и приятнее AVR-овского у которого 130+ мнемоник. Цитата Цитата(defunct @ Jun 21 2006, 02:54)  Писать программы (без математики с плавающей точкой) на Avr-ASM не сложнее чем на C.
Опять не соглашусь - сложнее, дольше и получается громоздкий (по сравненю с С) и запутанный код, в котором через пару месяцев и автору с ходу не разобраться. Из всех асмов, которые приходилось видеть, самым похожим на С является ассемблер для Blackfin'а. AVR'у в этом смысле до Blackfin'а далеко.  "Технически Вы не король" © Шрек  Высмысле, технически Blackfin не МК. По поводу сложнее и дольше - возможно. По поводу запутанности кода, это смотря как писать, можно на C написать так, что через пару месяцев в коде не разберется даже автор. А можно написать на ассемблере так, что сходу будет все понятно.
|
|
|
|
|
Jun 22 2006, 12:14
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(defunct @ Jun 22 2006, 17:56)  Я тоже мигрировал с 51-го на AVR, первую неделю плевался, а потом разобравшить понял насколько порядков AVR-Asm лучше. Слепил макросы в стиле x86 и стало вообще все просто. чем меньше команд имеется в арсенале программиста, тем сложнее писать программу на ассемблере. У MSP всего 27 мнемоник, если не ошибаюсь, и операнды перевернуты (аргументы идут первыми параметром, рез-тат записывает во второй). Следовательно для программиста MSP-Asm просто не может быть куда удобнее и приятнее AVR-овского у которого 130+ мнемоник. Дело не в количестве мнемоник, а в удобстве системы команд. На 51-м если мне надо проинкрементировать счетчик - inc var, и все, а на AVR - три команды. И при этом вся операция получается неатомарной - если этот счетчик является разделяемым ресурсом, то придется дополнительний защитный код городить. И об этом надо всегда помнить. Макрос, конечно, писанину уменьшит, но зато способствует сокрытию проблемы неатомарности операции. В общем, по любому появляется дополнительний геморрой. И таких примеров можно привести кучу. Что касается MSP430, то разложите его 27 инструкций на способы адресации - там еще больше варинатов выйдет. У MSP430 система команд куда ортогональнее, чем на AVR, и именно это обстоятельство делает работу с его асмом значительно проще и приятнее. Порядок операндов - вообще мелочь и дело привычки. Скажите - Вы писали на асме для MSP430? Цитата(defunct @ Jun 22 2006, 17:56)  "Технически Вы не король" © Шрек  Высмысле, технически Blackfin не МК. Хе. А как называется микросхема, у которой процессорное ядро, несколько таймеров с возможностями Compare/Capture/PWM, UART[s], SPI, многофункциональные последовательные порты (в т.ч. способные работать и как SPI), ноги на ввод/вывод, есть варианты с CAN и другими периферийными устройствами? Сейчас уже анонсированы чипы с набортной флешью. Есть режимы с пониженным энергопотреблением, в т.ч. и 200 МГц при 50 мВт потребления по ядру - по удельному потреблению мелкий МК, который бы мог тут поспорить, еще поискать. Если АРМы считаются МК, в том числе и АРМ9, то уж Blackfin тут ничем не хуже. Это однокристальная микроЭВМ ака микроконтроллер. Конечно, весовая категория у него не та же, что у AVR, MSP430, PIC и другая мелкая братия, но тем не менее. Цитата(defunct @ Jun 22 2006, 17:56)  По поводу запутанности кода, это смотря как писать, можно на C написать так, что через пару месяцев в коде не разберется даже автор. А можно написать на ассемблере так, что сходу будет все понятно. Можно. Все можно. Но на С, в отличие от асма, можно написать практически самодокументирующися код. А на асме для хорошей понимаемости придется комментария наворотить больше самого исходного кода. Разница, как грицца, половая.  Т.ч. каждому свое - основной объем на ЯВУ, критичные по скорости/размеру куски, а также сильно платформеннозависимые - асму. Отвечая на вопрос темы, соглашусь с уже озвученным: асм будет жить до тех пор, пока будут жить процессоры, всегда были, есть и будут оставаться ситуации, когда никакой ЯВУ родного ассемблера не заменит.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Jun 22 2006, 20:52
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(dxp @ Jun 22 2006, 15:14)  Цитата(defunct @ Jun 22 2006, 17:56)  Я тоже мигрировал с 51-го на AVR, первую неделю плевался, а потом разобравшить понял насколько порядков AVR-Asm лучше. Слепил макросы в стиле x86 и стало вообще все просто. чем меньше команд имеется в арсенале программиста, тем сложнее писать программу на ассемблере. У MSP всего 27 мнемоник, если не ошибаюсь, и операнды перевернуты (аргументы идут первыми параметром, рез-тат записывает во второй). Следовательно для программиста MSP-Asm просто не может быть куда удобнее и приятнее AVR-овского у которого 130+ мнемоник.
Дело не в количестве мнемоник, а в удобстве системы команд. На 51-м если мне надо проинкрементировать счетчик - inc var, и все, а на AVR - три команды. И при этом вся операция получается неатомарной - если этот счетчик является разделяемым ресурсом, то придется дополнительний защитный код городить. Ну хорошо с inc'ом допустим 51-й в выигрыше, и то сомнительно, т.к. никто не заставляет Вас хранить особо важный, разделяемый несколькими задачами счетчик в памяти (не на Cи ж пишем). Ему можно жестко назначить любой регистр из нижнего "бестолково-бесполезного" ряда R2-R15. Во-вторых никто не заставляет Вас строить программу так, чтобы появлялась необходимость в дополнительной синхронизации. Как контр аргумент вашему примеру - целый класс задач, интенсивно использующих целочисленную арифметику и логические операции. Здесь 51-й явно будет в проигрыше со своим обязательным регистром Acc для всех арифметико-логических операций. Цитата И об этом надо всегда помнить. Макрос, конечно, писанину уменьшит, но зато способствует сокрытию проблемы неатомарности операции. В общем, по любому появляется дополнительний геморрой. Это понятно, согласен. Просто этот дополнительный геморрой надо единожды учесть, и строить структуру программы таким образом, чтобы никогда не иметь геморроя. Цитата И таких примеров можно привести кучу. Вы возможно согласитесь, что таких примеров будет больше для 51-го. Тому способствует и Acc, и оствутствие команд сравнения, и многоуровневый КП (при необходимости могу привести больше аргументов). Цитата Что касается MSP430, то разложите его 27 инструкций на способы адресации - там еще больше варинатов выйдет. У MSP430 система команд куда ортогональнее, чем на AVR, и именно это обстоятельство делает работу с его асмом значительно проще и приятнее. Порядок операндов - вообще мелочь и дело привычки. Спорить не буду. Цитата Скажите - Вы писали на асме для MSP430? Серьезного ничего не писал. А разве что баловался - простейшие программки типа настройки DCO, инициализации таймера и мигания светодиодом в прерывании. Меня сразу отпугнул непривычный для меня порядок следования операндов. Цитата Цитата(defunct @ Jun 22 2006, 17:56)  "Технически Вы не король" © Шрек  Высмысле, технически Blackfin не МК. Хе. А как называется микросхема, у которой процессорное ядро.... Вы же уже знаете мое мнение относительно bf.. Технически он DSP. и говоря выше о "ассемблерах всех МК", лично я не подразумевал ни один DSP. Цитата Т.ч. каждому свое - основной объем на ЯВУ, критичные по скорости/размеру куски, а также сильно платформеннозависимые - асму.
Отвечая на вопрос темы, соглашусь с уже озвученным: асм будет жить до тех пор, пока будут жить процессоры, всегда были, есть и будут оставаться ситуации, когда никакой ЯВУ родного ассемблера не заменит. Согласен и поддерживаю это высказывание.
|
|
|
|
|
Jun 23 2006, 03:32
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(defunct @ Jun 23 2006, 03:52)  Ну хорошо с inc'ом допустим 51-й в выигрыше, и то сомнительно, т.к. никто не заставляет Вас хранить особо важный, разделяемый несколькими задачами счетчик в памяти (не на Cи ж пишем). Ему можно жестко назначить любой регистр из нижнего "бестолково-бесполезного" ряда R2-R15. Во-вторых никто не заставляет Вас строить программу так, чтобы появлялась необходимость в дополнительной синхронизации.  Во-от! Уже всякие "если" полезли. "Если" уж на то пошлО, то писать на С/С++ основной объем и не парить мозги. Я в свое время вполне успешно писал на С целиком под 2313. Кодогенерацию анализировал, не находил там такого, что бы дало хоть какой-то значимый выигрыш при писании на асме. Но возвращясь к начальной точке - я оспаривал тезис, что AVR'овский ассемблер является самым удобным и легким в использовании. Утверждаю, что это не так, что у 51-го и MSP430 (особенно у последнего) ассемблер значительно проще и приятнее в использовании. Цитата(defunct @ Jun 23 2006, 03:52)  Как контр аргумент вашему примеру - целый класс задач, интенсивно использующих целочисленную арифметику и логические операции. Здесь 51-й явно будет в проигрыше со своим обязательным регистром Acc для всех арифметико-логических операций. Мы здесь, напомню, не архитектуру процов обсуждаем (хотя асм на нее тоже "завязан"), мне 51-й на фоне AVR'а тоже претит, но это очень древняя архитектура, что с нее взять на сегодняшний день. А если отвечать на Ваше вышеотквоченное замечание, то возьмите опять же тот же MSP430 - AVR "нервно курит в уголке".  И по скорости, и по размеру кода. И по удобству кодирования на ассемблере. Мне довелось плотно поработать и с тем, и с другим, поверьте разница по всем параметрам значительная и не в пользу AVR. Цитата(defunct @ Jun 23 2006, 03:52)  Цитата Скажите - Вы писали на асме для MSP430? Меня сразу отпугнул непривычный для меня порядок следования операндов. И зря. Вон мотороллеры, насколько знаю, традиционно имели такой порядок, и ничего. Если вдуматься, то он и более логичен. Но это, повторяю, мелочь - очень быстро осваиваешься и проблем это не доставляет. Даже когда работаешь параллельно с двумя архитектурами - например, AVR и MSP430, приходится то и дело то в том копаться, то в этом - нету проблемы, по самим мнемноникам уже автоматом правильно переключаешься на порядок операндов. Цитата(defunct @ Jun 22 2006, 17:56)  Вы же уже знаете мое мнение относительно bf.. Технически он DSP. и говоря выше о "ассемблерах всех МК", лично я не подразумевал ни один DSP. К сожалению, я не помню Вашего мнения на эту тему. Хотелось бы услышать техническое обоснование, почему, скажем АРМ9 является МК, а Blackfin - нет.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Jun 23 2006, 21:37
|
Знающий
   
Группа: Свой
Сообщений: 550
Регистрация: 16-06-04
Из: Казань
Пользователь №: 32

|
Цитата(dxp @ Jun 23 2006, 07:32)  Мы здесь, напомню, не архитектуру процов обсуждаем (хотя асм на нее тоже "завязан"), мне 51-й на фоне AVR'а тоже претит, но это очень древняя архитектура, что с нее взять на сегодняшний день. А если отвечать на Ваше вышеотквоченное замечание, то возьмите опять же тот же MSP430 - AVR "нервно курит в уголке".  И по скорости, и по размеру кода. И по удобству кодирования на ассемблере. Мне довелось плотно поработать и с тем, и с другим, поверьте разница по всем параметрам значительная и не в пользу AVR. а что, MSP действительно шустрее? у него ведь, кажется, и команды не однотактовые, и частоты пониже, да и бенчмарки на Сахаре говорят в пользу AVR. впрочем, удобства его асма налицо.
--------------------
Главная линия этого опуса ясна мне насквозь!
|
|
|
|
|
Jun 26 2006, 05:55
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(vet @ Jun 24 2006, 04:37)  Цитата(dxp @ Jun 23 2006, 07:32)  Мы здесь, напомню, не архитектуру процов обсуждаем (хотя асм на нее тоже "завязан"), мне 51-й на фоне AVR'а тоже претит, но это очень древняя архитектура, что с нее взять на сегодняшний день. А если отвечать на Ваше вышеотквоченное замечание, то возьмите опять же тот же MSP430 - AVR "нервно курит в уголке".  И по скорости, и по размеру кода. И по удобству кодирования на ассемблере. Мне довелось плотно поработать и с тем, и с другим, поверьте разница по всем параметрам значительная и не в пользу AVR. а что, MSP действительно шустрее? у него ведь, кажется, и команды не однотактовые, и частоты пониже, да и бенчмарки на Сахаре говорят в пользу AVR. впрочем, удобства его асма налицо. Насчет частот, я при равных тактовых сравнивал, чтобы выявить именно плюсы и минусы архитектуры. С самого начала мне казалось, что если данные 8-разрядные, то AVR должен быть быстрее, т.к. он гарвард, в память шустрее лазит - фон неймановский MSP430 за опкодами и данными лазит по тем же шинам, поэтому должен быть медленнее по определению. Его выигрыш состоит в большей разрядности шины данных, поэтому на 16-ти и более разрядных данных он может вполне составить конкуренцию и даже обогнать. Таково было предположение. Далее стал сравнивать. Для сравнения использовал не какие-то непонятные тесты, а прямо свои рабочие проекты. Надо сказать, что код там вполне обычный, контроллерный - проверка флагов, вызов функций (прямо и по адресу (индексу) из массива указателей), работа с одиночными переменными 8-, 16-, 32-бит, работа с агрегатными типами вроде структур и массивов, и, конечно, работа с объектами классов. Компиляторы в обоих случаях были от IAR. Ожидал увидеть одно, а на деле увидел другое. Оказалось, что и на 8-битных данных AVR не блещет, а показывает даже немного худший результат. Анализ причин показал следующее (как раз то, что в голову не приходило, пока не увидел это на сравнении): у AVR неортогональный регистровый файл, очень мало аппаратных указателей. Это первая причина, которая и сводит на нет преимущества гарварда по доступу в память. Вторая причина - это отсутствие нормального указателя стека - это усугубляет предыдущий момент - отъедает одну полноценную регистровую пару (указатель стека - Y). В итоге при реальной работе в программе приходится гонять адреса через Z-указатель, получается своего рода "бутылочное горлышко". Например, зашли в функцию, надо обратиться к объекту по адресу - грузим его адрес в Z (две инструкции), обратились; теперь надо обратиться к другому объекту, а с предыдущим работа еще не закончена - в него в конце будет помещен результат; но как быть с адресом? Либо забить на него и в конце еще раз грузить, либо сохранить куда-то временно - т.е. копирование, накладные расходы в том и другом случае примерно одинаковы. И вся программа буквально изобилует такими примерами, когда надо адреса гонять через Z-pointer. Для сравнения - у MSP430 такой проблемы вообще нет - берем и адресуемся с любого из 12 РОН. Надо один объект - адресуемся с одного регистра, надо другой - с другого, а предыдущий никуда не делся, хранится до момента своего следующего использования. Если бы у AVR был бы еще хоть один указатель типа Y или Z, а еще лучше два - то это была бы совсем другая картина. И разрядность данных тут не много значит - адресная арифметика все равно в подавляющем количестве случаев 16-битная. Из простых тестов могу привести следующее. Вернее, это не тест в самом деле, а просто сравнение эффективности одного и того же куска кода из аналогичных проектов. Там в том и другом было вычисление полинома (от двух переменных) вида: Код float math::Pxy(__flash PxyCOEFFS a, const float x, const float y) { float X_2 = x*x; float Y_2 = y*y;
return a[9]*X_2*x + a[8]*Y_2*y + a[7]*X_2*y + a[6]*x*Y_2 + a[5]*X_2 + a[4]*Y_2 + a[3]*x*y + a[2]*x + a[1]*y + a[0]; } Результат: MSP430F149 : 5197 тактов ATmega163 : 11941 такт Этот пример, конечно, не характеризует картину в целом с достаточной степенью точности - тут плавучка превалирует, а значит, тут больше ядро работает, а не работа с памятью, но зато ярко подчеркивает эффективность ядра. Аппаратные умножители были и в том и в другом случае включены. При выключенном аппаратном умножителе в MSP430 результат делает хуже примерно в полтора раза. В целом MSP430 за счет более прямого ядра оказывается быстрее AVR'а даже несмотря на свою неймановость. Кстати, обращение в память у AVR - 2 такта, - тоже не впечатляет, медленно это. Должен за такт лазить, принципиально этому ничего не мешает. Этот момент я тоже уже озвучивал здесь на форуме, вступал в дискуссию с некоторыми уважаемыми коллегами, просьба к ним не поднимать тут в очередной раз спор не эту тему.  Надеюсь, я ответил на Ваш вопрос удовлетворительно. Чтобы не подумали, что лажаю AVR, скажу, что ядро ядром, но есть и другие факторы - корпус, наличие флеши и ЕЕПРОМ, диапазон напряжений питания, цена и многое другое - по совокупности характеристик AVR выплядит очень даже неплохо! И хотя по многим (большинству) параметров он уступает тому же MSP430, есть несколько позиций, где MSP430 не предлагает адекватную замену. Прежде всего это диапазон питаний - MSP430 имеют диапазон 1.8-3.6 В, если надо 5-вольтовость, то AVR рулит. Второе - наличие поддержки аппаратной внешней шины в некоторых чипах (мега8515, мега128), у MSP430 этого нет вообще. Третье - наличие байтовоадресуемой, стираемой и записываемой энергонезависимой памяти - EEPROM. В MSP430 такого нет, там только флешь, стереть можно только блоком. Правда, при такой организации есть свои преимущества - блоков много и можно произвольно их стирать/записывать прямо на рантайме. Ну, и у AVR есть чипы с большим объемом флеши (ТИ, правда, тоже обещал в MSP430 нового поколения расширения адресного пространства и многих других фич, но это пока обещания). Вот если какие-то из этих моментов актуальны, то AVR вполне рулит. В общем, нету ничего белого или черного - все серое.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
Сообщений в этой теме
OlegIvanov ASM: приказали долго жить? Jun 19 2006, 23:28 prottoss Цитата(OlegIvanov @ Jun 20 2006, 07:28) Н... Jun 19 2006, 23:58 haker_fox Цитата(OlegIvanov @ Jun 20 2006, 08:28) Н... Jun 20 2006, 00:11 arttab Даже программируя на асме не всегда можно получить... Jun 20 2006, 02:54 defunct Цитата(arttab @ Jun 20 2006, 05:54) Даже ... Jun 20 2006, 05:55 Harbour Сильно на C разгонишься когда памяти 512 байт. Jun 20 2006, 04:25 dxp Цитата(Harbour @ Jun 20 2006, 11:25) Силь... Jun 20 2006, 05:49 viael Цитата(Harbour @ Jun 20 2006, 08:25) Силь... Jun 29 2006, 06:28 vanner ЦитатаДаже программируя на асме не всегда можно по... Jun 20 2006, 05:03 Сергей Борщ Цитата(vanner @ Jun 20 2006, 08:03) Цитат... Jun 20 2006, 06:56  IgorKossak Цитата(Сергей Борщ @ Jun 20 2006, 09:56) ... Jun 20 2006, 07:49   Сергей Борщ Цитата(IgorKossak @ Jun 20 2006, 10:49) Ц... Jun 20 2006, 08:37    OlegIvanov Цитата(Сергей Борщ @ Jun 20 2006, 11:37) ... Jun 20 2006, 15:29     Сергей Борщ Цитата(OlegIvanov @ Jun 20 2006, 18:29) В... Jun 20 2006, 16:00    SasaVitebsk Цитата(Сергей Борщ @ Jun 20 2006, 11:37) ... Jun 20 2006, 21:09     CDT ЦитатаПростите, может я не понял вопроса, а что ва... Jun 21 2006, 13:19      white.wind Цитата(CDT @ Jun 21 2006, 17:19) ..хотя б... Jun 21 2006, 13:43       COMA Цитата(white.wind @ Jun 21 2006, 17:43) Н... Jun 22 2006, 11:45       _Bill Цитата(white.wind @ Jun 21 2006, 16:43) Ц... Jun 22 2006, 11:59        white.wind Цитата(_Bill @ Jun 22 2006, 15:59) кодоге... Jun 22 2006, 13:09     Сергей Борщ Цитата(SasaVitebsk @ Jun 21 2006, 00:09) ... Jun 21 2006, 16:26      SasaVitebsk Цитата(Сергей Борщ @ Jun 21 2006, 19:26) ... Jun 21 2006, 19:45 arttab Глюки компилятора неисключены. и ошибки юзера, кот... Jun 20 2006, 05:53 beer_warrior Как говорится - пока существуют процессоры будет с... Jun 20 2006, 05:57 arttab ЦитатаХм.. "компилятор" асма более верно... Jun 20 2006, 06:13 otrog Цитата(arttab @ Jun 20 2006, 10:13) Знаю ... Jun 20 2006, 06:33 _Bill Цитата(OlegIvanov @ Jun 20 2006, 02:28) Н... Jun 20 2006, 06:29 kolobok0 Цитата(_Bill @ Jun 20 2006, 10:29) ...Асс... Jun 20 2006, 11:43 IgorKossak Хм, надо же.
Опять подняли религиозную тему!
Н... Jun 20 2006, 06:38 tag Цитата(IgorKossak @ Jun 20 2006, 10:38) Х... Jun 21 2006, 14:26     _Bill Цитата(dxp @ Jun 22 2006, 15:14) Дело не ... Jun 22 2006, 12:21     IgorKossak Цитата(dxp @ Jun 22 2006, 15:14) ...Отвеч... Jun 22 2006, 13:00       defunct Цитата(dxp @ Jun 23 2006, 06:32) Во-от... Jun 23 2006, 20:46        dxp Цитата(defunct @ Jun 24 2006, 03:46) Цита... Jun 26 2006, 04:56 vanner Это понятно, разработчики компиляторов тоже люди, ... Jun 20 2006, 09:03 Сергей Борщ Цитата(vanner @ Jun 20 2006, 12:03) Это п... Jun 20 2006, 09:09 Serj78 начинал на С, (cv) потом для тини12 пришлось поизу... Jun 20 2006, 10:23 forever failure Цитата(OlegIvanov @ Jun 20 2006, 05:28) к... Jun 21 2006, 06:03 Alex_Pol 2 OlegIvanov. Слухи о смерти асма сильно преувелич... Jun 21 2006, 14:06 CD_Eater Всегда писал для AVR-ок на АСМе и не собираюсь пер... Jun 22 2006, 11:03 vet CD_Eater
Поправьте, если я ошибаюсь, но, на мой вз... Jun 22 2006, 11:40 COMA чтение из ОЗУ
инкремент
запись в ОЗУ
3 команды Jun 22 2006, 12:27 _Bill Цитата(COMA @ Jun 22 2006, 15:27) чтение ... Jun 22 2006, 12:37 beer_warrior ЦитатаБольшой минус АСМа - плохая переносимость на... Jun 22 2006, 12:28 COMA Случаи они разные бывают. Регистров может и не хва... Jun 22 2006, 12:43 _Bill Цитата(COMA @ Jun 22 2006, 15:43) Случаи ... Jun 22 2006, 12:52 vet IgorKossak,
ну, Java-процессор выполняет всё-таки ... Jun 22 2006, 13:05 Stanislav Цитата(IgorKossak @ Jun 22 2006, 17:00) Ц... Jun 22 2006, 14:39 defunct Цитата(Stanislav @ Jun 22 2006, 17:39) Бы... Jun 22 2006, 21:26  Stanislav Цитата(defunct @ Jun 23 2006, 01:26) Наск... Jun 23 2006, 16:06 CD_Eater Цитата(vet @ Jun 22 2006, 15:40) Поправьт... Jun 22 2006, 16:23 vet Цитата(CD_Eater @ Jun 22 2006, 20:23) Цит... Jun 22 2006, 19:20 beer_warrior BTW, что меня убивало в 51 это односторонний перех... Jun 22 2006, 21:05 upc2 Думаю, что ассемблер "умрет".При всех св... Jun 26 2006, 05:48 vet dxp, спасибо за подробный ответ. Jun 26 2006, 06:37 IgorKossak dxp, насколько я знаю применение аппаратного умнож... Jun 26 2006, 06:40 dxp Цитата(IgorKossak @ Jun 26 2006, 13:40) d... Jun 26 2006, 06:52 CD_Eater dxp, тест очень неудачный
Сравнение вычислительных... Jun 26 2006, 13:20 dxp Цитата(CD_Eater @ Jun 26 2006, 20:20) dxp... Jun 26 2006, 13:59  defunct Цитата(dxp @ Jun 26 2006, 16:59) Если бы ... Jun 28 2006, 12:58   dxp Цитата(defunct @ Jun 28 2006, 19:58) Не н... Jun 29 2006, 05:24    Kopa Ссылка на интересную статью и ресурс для роботостр... Jun 29 2006, 05:32    pokos Цитата(dxp @ Jun 29 2006, 09:24) А вот яд... Jun 29 2006, 06:31     dxp Цитата(pokos @ Jun 29 2006, 13:31) Цитата... Jun 29 2006, 07:33      pokos Цитата(dxp @ Jun 29 2006, 11:33) ....А то... Jun 29 2006, 08:41       dxp Цитата(pokos @ Jun 29 2006, 15:41) Цитата... Jun 29 2006, 09:27    singlskv Цитата(dxp @ Jun 29 2006, 09:24) Вы еще з... Jun 29 2006, 08:04 SpiritDance dxp
Поддерживаю Вас. В MSP430 ядро несравнено лучш... Jun 26 2006, 17:41 CD_Eater dxp
Я не говорю, что AVR существенно мощнее )))))... Jun 26 2006, 20:30 haker_fox Цитата(CD_Eater @ Jun 27 2006, 05:30) Моё... Jun 27 2006, 01:29 spf Цитата(CD_Eater @ Jun 27 2006, 02:30) Трё... Jun 27 2006, 03:47  Kopa Цитата(spf @ Jun 27 2006, 06:47) ИМХО: Та... Jun 27 2006, 04:39   SpiritDance Цитата(Kopa @ Jun 27 2006, 08:39) А так н... Jun 27 2006, 04:51    Kopa Цитата(SpiritDance @ Jun 27 2006, 07:51) ... Jun 27 2006, 05:04     SpiritDance Цитата(Kopa @ Jun 27 2006, 09:04) P.S. Вс... Jun 27 2006, 11:28      Kopa Цитата(SpiritDance @ Jun 27 2006, 14:28) ... Jun 28 2006, 03:09  CD_Eater Цитата(spf @ Jun 27 2006, 07:47) ЦитатаПо... Jun 27 2006, 18:42   spf Цитата(CD_Eater @ Jun 28 2006, 00:42) Лич... Jun 28 2006, 01:06 spf Цитата(CD_Eater @ Jun 27 2006, 02:30) Трё... Jun 27 2006, 06:10  CD_Eater Цитата(spf @ Jun 27 2006, 10:10) Цитата(C... Jun 27 2006, 18:05 beer_warrior ЦитатаНо компиляторы используют обобщённые методы ... Jun 28 2006, 02:34 dxp Цитата(beer_warrior @ Jun 28 2006, 09:34)... Jun 28 2006, 03:48 forever failure Судя по объёму флуда, - асм жив, и более того - al... Jun 28 2006, 03:57 upc2 Еше 2 года назад писал Vxd драйверы под windows на... Jun 29 2006, 05:32 dxp Цитата(upc2 @ Jun 29 2006, 12:32) Прощай ... Jun 29 2006, 05:55  upc2 Цитата(dxp @ Jun 29 2006, 08:55) Цитата(u... Jun 29 2006, 07:40   dxp Цитата(upc2 @ Jun 29 2006, 14:40) Цитата(... Jun 29 2006, 08:17    Kopa [quote name='dxp' date='Jun 29 2006, 1... Jun 30 2006, 03:30 forever failure Ну вот ещё пример - о вечном. Совершенно прикладна... Jun 29 2006, 06:27 upc2 Ну,в общем я с вами согласен.Мы говорим об одном и... Jun 29 2006, 08:59 beer_warrior Чтобы не путаться в терминологии, наверное надо че... Jun 30 2006, 05:23
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|