Перейти к содержанию
    

hxdev

Новичок*
  • Постов

    1
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Контакты

  • ICQ
    Array
  1. Я начинающий для однокристалок, но "испорчен" CISC-архитектурой и программированием на ассемблерах(masm32,tasm,fasm,nasm) под windows для 0x86. Я думаю понятно, что microsoft не ахти как поощеряет это дело, не было ни инклюдников с константами, ни прототипов api-функций, и все было против ассемблерщиков под windows, еще лет 5 назад, сказав, что ты программируешь на асемблере под windows тебя обозвали бы гадким астматиком, и атавизмом программирования. Но сейчас ситуация изменилась - есть все, что надо - и инклюдники и IDE( их примерно десяток, самое яркое это конечно RADASM (http://radasm.visualassembler.com/) - сишные программисты синеют от злости:)) , и примеров море и написана куча макросов, посмотрите как цветут и пахнут http://www.wasm.ru/ http://www.masm32.com/ http://www.movsd.com/ http://www.masmforum.com/ http://board.win32asmcommunity.net/ и другие. Но все-таки ассемблер это удел, не многих - вирусы - антивирусы, криптозащиты-реверсинг, и многое другое. Быстро сляпать и сдать заказчику это конечно HLL(Языки Высокого Уровня, к примеру c#) Для каждой задачи свой подход. Но вопрос не в том, что лучше или хуже для однокристалок, Вопрос в том, можно ли успешно обходиться ассемблером для средних и крупных проектов ? Глядя на 0x86-архитектуру и макроассембле masm, где к примеру можно сделать макрос return и в зависимости от операндов ( определить с помощью директив и макросов, таких как $IsImm MACRO Operand:REQ IF (OPATTR (Operand)) AND 00000100y ;; Is an immediate value EXITM <-1> ELSE EXITM <0> ENDIF ENDM ) строить оптимизированый код (если вы знаете как для данного мп), не хуже опримизатора для c#. Но в стандартном компиляторе от avr - нет даже директив типа db, $, нет директив определения процедур. Может это от отличия каждого нового девайса от другого? Напрашивается вывод, что для крупных и средних проектов использовать сишные компиляторы, а для мелких можно и асм? А где же вечные ценности - размер кода, оптимизация по скорости и другое? Расскажите о существующих компиляторах c# и асм, о их достоинствах и недостатках. Посоветуйте опытные ветераны-однокристальщики, схемотехники. :a14:
×
×
  • Создать...