Какой ассемблер для Windows в 2020 году лучше? Какая IDE?
Подписчикам моего канала эта тема скорее всего покажется странной и незнакомой. Но она тоже имеет непосредственное отношение к технике (а канал посвящён не только электрике, но и всему техническому) а также она (эта тема) занимает существенную часть моей жизни.
В начале 90-х годов я много программировал на ассемблере. Сначала это был ассемблер МИКРО11 для процессоров архитектуры DEC PDP-11 (процессор К1801ВМ1 бытового компьютера БК0010-01), а с 1994 года я начал писать на ассемблере TASM для процессоров архитектуры x86 (персональный компьютер IBM PC AT i80386).
В то время я писал исключительно под DOS, и использовал для этого режим Ideal ассемблера TASM . Этот ассемблер был разработан компанией Borland. Синтаксис MASM от Microsoft мне нравился меньше, чем в TASM режима Ideal. В общем, на нём я и остановился.
Никаких IDE, конечно, тогда не было, и я использовал обычный текстовый редактор. Кажется, даже без подсветки синтаксиса. Компилировал и линковал утилитами командной строки, для удобства прописанными в пакетных файлах.
Когда наступила эра Windows, я попробовал написать на ассемблере пару тестовых приложений под эту ОС, и перешёл для этого на MASM, как чуть более подготовленный к этому процессу. Но писать на ассемблере под Windows мне показалось не очень интересным, и я перешёл на языки более высокого уровня.
На днях я решил посмотреть, что же изменилось с программированием на ассемблере за четверть века? Так вот, принципиально — ничего )))
Выбор ассемблера
Существует довольно много разных ассемблеров. При выборе я использовал только 2 критерия — живость проекта и популярность ассемблера. Остальные критерии, такие, как дополнительные возможности и фичи, я не рассматривал, это было уже не так важно.
TASM, к сожалению, отпал сразу, поскольку он, к сожалению, мёртв.
MASM тоже давно не обновлялся.
В общем, из всех ассемблеров меня привлекли два — NASM и FASM .
На настоящий момент FASM мне показался более интересным, и я решил пока выбрать его. Если вам больше нравятся другие варианты, напишите, пожалуйста, в комментариях, почему ваш выбор пал на другой ассемблер.
Выбор интегрированной среды разработки (IDE)
Конечно, можно пользоваться обычным редактором с подсветкой синтаксиса, например, Notepad++ . Но, честно говоря, хочется уже как-то автоматизировать некоторые рутинные действия, а также иметь функцию автодополнения и какие-то подсказки по коду.
Я думал, что уже существуют хорошие, мощные IDE для ассемблеров. Но не тут то было. Подающий в своё время большие надежды RadASM заброшен, остальные среды очень простенькие, глючащие, вылетающие при каждом чихе. В общем, проблема. Если вы знаете какую-нибудь действительно достойную среду для написания ассемблерного кода, отпишитесь, пожалуйста, в комментариях.
Поскольку в программах предполагается использование кириллицы, важно, чтобы редактор имел возможность сохранять файлы в UTF8 .
В общем, после поисков чего-то более-менее стоящего я сначала остановился на SASM .
Но он почему-то отказывается компилировать, не сообщая почему. Автодополнения и подсказок по коду там тоже нет.
Сейчас другой автор начал активно рекламировать ASM Visual :
Текущая версия имеет глючки, которые автор пообещал исправить. В этой IDE уже есть автодополнение и подсказки, но, к сожалению, только в платной версии. Как бесплатная IDE она была бы относительно неплоха вместе с этим функционалом, но как платная, она, на мой взгляд, ещё сыровата.
Вышеперечисленные IDE хороши для начинающих, потому что в них довольно легко разобраться, и они при создании нового проекта не предлагают шаблоны навороченного кода. Но если вы уже опытный программист, и знаете, как писать на ассемблере под Windows, то вам может подойти очень мощная и абсолютно бесплатная IDE « Easy Code Visual »:
Как видите, она позволяет даже визуальное конструирование интерфейса. Пожалуй, это самая мощная среда, которую я нашёл. Но она тоже глючит и вылетает.
Все три IDE активно поддерживаются, это одно из важных условий моего выбора. Так что от глюков можно избавиться, если активно сотрудничать с авторами этих программ.
Если вы знаете другие достойные варианты IDE с автодополнением и подсказками, напишите о них, пожалуйста, в комментариях.
На сегодня всё, ставьте лайки, подписывайтесь на канал, пока!