Ide для ассемблера для windows 10

SASM : SASM - simple crossplatform IDE for NASM, MASM, GAS, FASM assembly languages

SASM

English version of site here.

SASM (SimpleASM) — простая кроссплатформенная среда разработки для языков ассемблера NASM, MASM, GAS, FASM с подсветкой синтаксиса и отладчиком. В SASM Вы можете легко разрабатывать и выполнять программы, написанные на языке ассемблера. Вводите код в форму и запускайте приложение. Программа работает «из коробки» и хорошо подойдет для начинающих изучать язык ассемблера.
Основана на Qt. Распространяется по свободной лицензии GNU GPL v3.0.

SASM

Загрузить .exe для Windows
Загрузить .zip для Windows
Загрузить для Linux
Установка на Mac: ссылка 1, ссылка 2

Для загрузки программы на Linux перейдите по соответствующей ссылке и выберите ваш дистрибутив и архитектуру (i386 / amd64).

Вы также можете собрать SASM из исходников, которые можно найти в GitHub репозитории.

Поддержите проект

WebMoney: Z282016332582 и R331674303467

О программе

В SASM Вы можете легко разрабатывать и выполнять программы, написанные на языках ассемблера NASM, MASM, GAS, FASM. Вводите код в форму и запускайте приложение. В Windows также возможен запуск приложения в отдельном окне. Входные данные указывайте в поле «Ввод». В поле «Вывод» Вы сможете увидеть результат работы программы. При этом все сообщения и ошибки компиляции будут выводиться в форму снизу. Вы можете сохранять исходный или скомпилированный (exe) код программы в файл, а также загружать свои программы из файла.

Программа поддерживает работу с несколькими проектами – новые файлы открываются и создаются в новых вкладках. При выходе из программы текущий набор открытых файлов сохраняется. При следующем запуске Вы сможете восстановить предыдущую сессию. В параметрах настраивается шрифт, цветовая схема и текст, отображающийся при создании нового файла. Интерфейс программы доступен на восьми языках (русский, английский, турецкий (спасибо Ali Goren), китайский (спасибо Ahmed Zetao Yang), немецкий (спасибо Sebastian Fischer), итальянский (спасибо Carlo Dapor), польский (спасибо Krzysztof Rossa), иврит (спасибо Elian Kamal), испанский (спасибо Mariano Cordoba)). Все окна в программе плавающие, с возможностью закрепления в одной из множества позиций. Имеется возможность переназначения горячих клавиш.

Стандартное меню «Правка» дополнено возможностью комментирования/раскомментирования выделенного куска кода и создания/удаления отступа в 4 пробела (Tab/Shift+Tab).

В SASM вы можете находить ошибки в своих программах с помощью интерфейса к отладчику gdb. В программе можно просматривать значения регистров и переменных, а также устанавливать точки останова и перемещаться по отлаживаемой программе. Дополнительно имеется возможность выполнять произвольные команды отладчика gdb, результаты которых будут отображаться в логе.

SASM полностью поддерживает работу с четырьмя ассемблерами NASM, MASM, GAS, FASM в двух режимах — x64 и x86, переключаться между которыми можно в настройках на вкладке «Построение». Там же можно изменить опции ассемблера и компоновщика и выбрать, какие программы будут использоваться для ассемблирования и компоновки.

SASM

Устранение неполадок

Если у Вас что-то работает не так (происходят ошибки при компиляции, отладке и др.), пожалуйста, прочитайте главу «Устранение неполадок» в справке в программе (F1) или в Wiki проекта на GitHub. Возможно, там Вы сможете найти полезный совет для решения Вашей проблемы.

Библиотека макросов для NASM «io.inc»

В программу включена библиотека макросов для NASM «io.inc». В ней есть кроссплатформенные команды ввода-вывода и макросы: CMAIN — точка входа и CEXTERN для доступа к внешним функциям на языке C. Подробнее о ее командах Вы можете узнать здесь или ниже.

Имя макроса Описание макроса
PRINT_UDEC size, data

PRINT_DEC size, data

Вывод числовых данных заданных параметром data в 10-чном представлении. Параметр size – число, указывающее размерность данных в байтах; допускаются значения 1, 2, 4, 8 (x64). В качестве параметра data может выступать числовая константа, символьная константа, имя переменной, имя регистра или адресное выражение (без спецификатора размера данных в памяти). Если задается регистр большего размера, то берется заданное параметром size количество младших разрядов. PRINT_UDEC интерпретирует число как беззнаковое, PRINT_DEC — как знаковое.
PRINT_HEX size, data Аналогично предыдущему, но данные выводятся в 16-чном представлении.
PRINT_CHAR ch Печатается символ, заданный параметром ch. В качестве параметра может выступать численная константа, символьная константа, имя переменной, имя регистра или адресное выражение (без спецификатора размера данных в памяти). Печатается всегда содержимое 8 младших разрядов.
PRINT_STRING data Печать строки текста, оканчивающейся символом с кодом 0. В качестве параметра можно передавать строковую константу, имя переменной или адресное выражение (без спецификатора размера данных в памяти). В случае печати строковой константы, наличие символа с кодом 0 в конце строки необязательно.
NEWLINE Макрос переводит печать на новую строку.
GET_UDEC size, data

GET_DEC size, data

Ввод числовых данных в 10-чном представлении с клавиатуры. Размер вводимых данных ограничен параметром size, который задается числом (1, 2, 4, 8 (x64)). Введенные данные обрезаются соответствующим образом. Параметр data – либо имя переменной, либо имя регистра, либо адресное выражение (без спецификатора размера данных в памяти). Если задается регистр большего размера, то старшие разряды заполняются знаковым битом в случае GET_DEC и нулями в случае GET_UDEC. GET_UDEC считывает беззнаковое число, GET_DEC — знаковое. Запрещается использовать в качестве параметра регистр esp.
GET_HEX size, data Аналогично предыдущему, но данные задаются в 16-чном представлении с префиксом 0x.
GET_CHAR data Аналогично предыдущему, но происходит считывание одного символа, нажатие Enter не требуется. Более того, нажатие Enter будет расцениваться как ввод управляющих символов перевода строки: 0xD 0xA в ОС Windows, 0xA в ОС *nix. Если параметр – регистр, размер которого больше 1 байта, значение считанного символа будет дополнено нулями.
GET_STRING data, maxsz Ввод последовательности символов длиной не более чем (maxsz-1). Чтение последовательности останавливается на EOF или переводе строки, причем перевод строки сохраняется в буфере. В конец считанной строки добавляется символ с кодом 0. Параметр data – либо имя переменной, либо адресное выражение (без спецификатора размера данных в памяти). Параметр maxsz – регистр или числовая константа.

Реализация

Windows

В качестве ассемблера для NASM используется nasm 2.11.02, в качестве компоновщика — gcc 4.6.2 из MinGW (gcc 4.8.1 из MinGW64 в режиме x64) или ld 2.22 из MinGW (ld 2.23.2 из MinGW64 в режиме x64).

Версии ассемблеров и компоновщиков для NASM подобраны с учетом рекомендуемых программ для курса «Архитектура ЭВМ и язык ассемблера» ВМК МГУ 1-го потока.

Также в программу включен отладчик gdb 7.4 (7.6 для x64) из пакета MinGW и немного измененная для отладки библиотека макросов ввода-вывода.

Начиная с версии 3.0, в SASM включены fasm 1.71.39 и gas 2.23.1 из MinGW (gas 2.23.2 из MinGW64).

Ассемблер MASM невозможно было включить в сборку из-за его лицензии. Чтобы им воспользоваться, Вы должны установить MASM на Ваш компьютер с сайта https://www.masm32.com/ и указать пути до ассемблера (ml.exe, путь обычно «C:/masm32/bin/ml.exe») и до компоновщика (link.exe, путь обычно «C:/masm32/bin/link.exe») в соответствующих полях на вкладке «Построение».

Под Windows SASM после установки сразу готов к работе.

Linux

Для работы программы на Linux должны быть установлены: nasm или gas (если их планируется использовать, fasm уже включён в сборку), gcc, gdb (для отладки).

Больше информации о программе и её использовании можно получить в Wiki проекта на GitHub.

История изменений:

09.03.2022 — исправления установщика и zip-архива версии 3.12.2 (zip, exe)

06.02.2022 — версия 3.12.2 (zip, exe):

  • Исправлен баг в макросах GET_DEC/GET_UDEC/GET_HEX при работе с адресными выражениями с регистром ESP.
  • Исправлен запуск GDB с файлом .gdbinit и вывод ошибок.
  • Исправлена отладка для программ с директивой segment и инструкциями push ebp/rbp.
  • Исправлена отладка и подсветка синтаксиса в многострочных комментариях в NASM.
  • Исправлена подсветка найденного при изменении текста.

13.02.2021 — версия 3.12.1 (zip, exe):

  • Исправленa отладка при использовании с новыми версиями NASM.

08.02.2021 — версия 3.12.0 (zip, exe):

  • Запуск и отладка теперь проводятся в директории с текущим исходником (для удобного файлового ввода-вывода).
  • Поддержка UTF-8 по умолчанию.
  • Поддержка Qt 5 для Linux.
  • Португальский язык (спасибо alglus).
  • Исправлен некорректный доступ к памяти в макросе GET_DEC на Windows.

03.02.2020 — версия 3.11.1 (zip, exe):

  • Исправлена ошибка с горячей клавишей для раскомментирования.

31.01.2020 — версия 3.11.0 (zip, exe):

  • Исправлены ошибки при отладке в GDB 8.
  • Исправлен разбор регистров.
  • Исправлена ошибка, приводящая к падению при клике в окне «Память» (спасибо Hofmer13).
  • Исправлена ошибка, при которой пропадала горячая клавиша отладки.
  • Исправлена ошибка с открытием файлов без расширений.
  • Добавлено сохранение файла перед сборкой.
  • Добавлен поиск выделенного текста.
  • Исправлен перевод на итальянский (спасибо Mek101).

08.10.2018 — версия 3.10.1 (zip, exe):

  • Исправлена ошибка, при которой из компоновки исключались файлы, необходимые для работы функций ввода-вывода библиотеки «io.inc».

01.10.2018 — версия 3.10.0 (zip, exe):

  • Поддержка BSD OS (спасибо Martinfx).
  • Исправлена ошибка, приводящая к неработоспособности отладчика при использовании gcc с опцией PIE по умолчанию (спасибо lberserq).
  • Добавлена поддержка испанского языка (спасибо Mariano Cordoba).
  • Небольшие исправление в настройках программы.

12.09.2017 — версия 3.9.0 (zip, exe):

  • Более удобный просмотр значений по адресу.
  • Исправлена ошибка, приводящая к падению отладчика (спасибо lberserq).
  • Добавлена поддержка польского языка (спасибо Krzysztof Rossa).
  • Добавлена поддержка иврита (спасибо Elian Kamal).

19.02.2017 — версия 3.8.0 (zip, exe):

  • Улучшен разбор регистров при отладке.
  • Добавлена опция запуска ассемблера в текущей директории.
  • Добавлена поддержка итальянского языка.

30.10.2016 — версия 3.7.0 (zip, exe):

  • Добавлена поддержка китайского языка.
  • Добавлена поддержка немецкого языка.
  • Исправлена ошибка, приводящая к невозможности повторного запуска программы после аварийного завершения.
  • Исправлена ошибка, при которой вывод программ, содержащий непечатные символы, не отображался полностью.

25.09.2016 — версия 3.6.0:

  • Добавлена поддержка турецкого языка.
  • Улучшено добавление отступов при нажатии клавиши Tab.

26.08.2016 — версия 3.5.1:

  • Исправлены ошибки с отладкой, drag & drop и другие мелкие ошибки.

19.03.2016 — версия 3.5.0:

  • Поддержка компоновщика GoLink.
  • Исправлена ошибка с неправильным именем файла при отркытии или сохранении.

11.02.2016 — версия 3.4.0:

  • Изменение цвета номеров строк.
  • Возможность отключения автоматической вставки отладочной строки.

27.01.2016 — версия 3.3.0:

  • Однооконный режим.
  • Функция drag & drop для открытия файлов. Чтобы открыть файл, можно просто перетащить его на окно программы.
  • Улучшенная справка: расширена часть «Устранение неполадок», добавлена часть «Настройка системы сборки».
  • Исправление множества ошибок, включая ошибку с системно-зависимыми путями и ошибку при показе регистров x87 FPU.

14.06.2015 — версия 3.2.0:

  • Добавлена возможность отключения запуска компоновщика.
  • Обновлён FASM: новая версия 1.71.39.
  • Исправлены некоторые ошибки, возникающие при отладке.

27.05.2015 — версия 3.1.4: исправлена ошибка, возникающая при использовании в системе локализованной версии objdump.

30.03.2015 — версия 3.1.3: добавлено отображение информации о полученных программой сигналах (в т. ч. об ошибках, возникающих в ходе её работы) при отладке.

27.03.2015 — версия 3.1.2: улучшена работа при отладке файлов с директивой include.

24.03.2015 — версия 3.1.1: исправлены ошибки с подсветкой синтаксиса.

29.08.2014 — версия 3.1.0: изменения из pull requsts и issues на GitHub — перемещаемые вкладки, сообщения об ошибках при неправильном ассемблере или компоновщике, улучшенная отмена и постановка отступа в 4 пробела, опция noexecstack для исполняемых файлов в Linux.

24.07.2014 — версия 3.0.1: добавлена возможность просмотра дополнительных регистров (xmm, st и других).

13.07.2014 — версия 3.0:

  • Добавлена поддержка новых ассемблеров, кроме NASM — GAS, MASM, FASM, включая подсветку синтаксиса, отладку и поддержку архитектур x86 и x64. Появилась возможность выбрать вручную ассемблер и компоновщик, а также изменить опции сборки программы.
  • Значительно улучшена работа отладчика, стало возможным отлаживать программы даже без отладочной информации для GDB (например, написанные на MASM). В отладчике добавлена возможность приостановить программу, а также установить точку останова во время её выполнения.
  • Добавлена папка для include файлов.
  • Исправлены проблемы с загрузкой процессора текстовым редактором при открытии больших файлов с исходным кодом. Исправлена ошибка с нарушением работы интерфейса после открытия окна настроек. Исправлено множество мелких ошибок и недочетов.

23.04.2014 — версия 2.3.1: исправлена ошибка, возникающая при наличии пробелов в пути до временной директории (в частности восстановлена работа SASM на Windows XP).

03.04.2014 — версия 2.3:

  • Добавлена возможность выбора режимов x64 или x86 и изменения опций ассемблера и компоновщика. Добавлен инструментарий для компиляции и отладки 64-битного кода. Реализована подсветка 64-битных регистров и команд. Библиотека «io.inc» адаптирована для использования в 64-битных приложениях.
  • Добавлена подсветка команд макроассемблера NASM.
  • Исправлено множество мелких ошибок, в том числе улучшено отображение окна переменных при отладке, исправлена ошибка при считывании в стек макросами из «io.inc».

16.02.2014 — версия 2.2:

  • Значительно улучшен интерфейс программы и её юзабилити, исправлено множество ошибок. Добавлены выбор цветов фона и текста, а также полная настройка подсветки синтаксиса. Окна ввода-вывода и отладки стали плавающими (docking) окнами с многочисленными вариантами их расположения. Улучшены виджеты отображения регистров и памяти (добавлены автоподгонка под текст и возможность копирования), сделана возможность запоминания их состояния. Улучшен механизм точек останова — добавлена возможность остановки на метке (на строке с кодом ниже) и возможность её установки по горячей клавише. Улучшена отладка макросов — теперь они неотличимы от обычных инструкций. К действиям добавлены иконки, сделаны тулбары.
  • Комбинации горячих клавиш приведены в соответствие со стандартными, добавлена возможность их переназначения.

13.11.2013 — версия 2.1:

  • Исправлено множество ошибок, исправлены проблемы совместимости — созданы установочные пакеты для многих Linux-систем на OBS, налажена совместимость с Qt 4, а также упрощена сборка из исходников.
  • Сделано много улучшений, расширена функциональность. В частности, в отладчике — добавлены: просмотр регистров, просмотр памяти, точки останова и команда «продолжить»; улучшены: выполнение произвольных команд gdb, подсветка текущей строки, последовательный вывод во время отладки (изменены макросы io.inc).
  • Компиляция теперь выполняется во временных папках — пропала необходимость в специальных правах при запуске программы.
  • Добавлена отметка о несохраненном документе. Добавлен последовательный вывод в программах. Добавлено отображение статуса завершения программы. Добавлен вывод времени работы программы. Добавлен выбор шрифта.
  • Обновлена справка. Сделана новая иконка. Еще множество минорных улучшений и исправлений.

04.06.2013 — версия 2.0: сделаны все запланированные изменения — реализован отладчик, улучшена подсветка, стало возможно работать с несколькими файлами, SASM (новое название) полностью переписан на Qt и теперь с открытым кодом и кроссплатформен. Исходники выложены на GitHub, сюда же переехал и сайт. Если Вам нужны более ранние версии программы, Вы можете их найти на предыдущем сайте.

21.04.2013 — версия 1.0.4 — исправлена ошибка с CEXTERN.

18.03.2013 — версия 1.0.3 — исправлены ошибки подсветки синтаксиса, теперь подсвечиваются все ключевые слова NASM, исправлен запуск программ на MASM.

10.03.2013 — версия 1.0.2 — исправлены ошибки, добавлено автосохранение кода и пути.

07.03.2013 — появилась первая версия программы — 1.0.0.

Пожелания и сообщения об ошибках отправляйте на адрес Dman1095@gmail.com или оставляйте на GitHub Issues.

Copyright © 2013 Дмитрий Манушин

Надеемся, наша среда удовлетворит большинство потребностей программистов MASM, FASM, TASM и даст перспективы изучения и работы на ассемблере новичкам.

Справочная документация находится на странице https://gri-software.com/ru/asmvisual/help или локально с программной в формате .CHM

Последняя актуальная версия

Поддерживаемые ОС: Windows 2008, 7, 8, 10 и выше (для tasm16 только 32-bit)

Требования: .NET Framework 4.6 и выше

Количество загрузок: 25639
Файл: setupASMVisual.exe

Версия: 1.1.6

Размер: 12,5 МБ

XP edition для предыдущих ОС

Поддерживаемые ОС: Windows XP, 2003, Vista (для tasm16 только 32-bit)

Требования: .NET Framework 4.0 и выше

Особенности: меньше функций, нет установщика и автообновления, работает на старых ОС

Файл: portableASMVisualXPedition.zip

Версия: 1.0.2

Размер: 12,0 МБ

Начать загрузку XP edition

SASM (SimpleASM) - простая кроссплатформенная среда разработки для языков ассемблера NASM, MASM, GAS, FASM с подсветкой синтаксиса и отладчиком. В SASM Вы можете легко разрабатывать и выполнять программы, написанные на языках ассемблера NASM, MASM, GAS, FASM. Вводите код в форму и запускайте приложение. Программа работает "из коробки" и хорошо подойдет для начинающих изучать язык ассемблера.
Основана на Qt. Распространяется по свободной лицензии GNU GPL v3.0.

SASM (SimpleASM) - simple Open Source crossplatform IDE for NASM, MASM, GAS, FASM assembly languages.
SASM has syntax highlighting and debugger. The program works out of the box and is great for beginners to learn assembly language. SASM is translated into Russian, English, Turkish (thanks Ali Goren), Chinese (thanks Ahmed Zetao Yang), German (thanks Sebastian Fischer), Italian (thanks Carlo Dapor), Polish (thanks Krzysztof Rossa), Hebrew (thanks Elian Kamal), Spanish (thanks Mariano Cordoba).
Licensed under the GNU GPL v3.0. Based on the Qt.

===========================================================================
How to build and run SASM:
===========================================================================
You need:
On Windows:
For building:
    C++ compiler (e.g. gcc from MinGW)
    make (e.g. mingw32-make from MinGW)
    Qt 5
For running:
    Everything needed is included.

On Linux:
For building:
    build-essential
    qtbase5-dev
    qt5-default
For running:
    gcc-multilib (x64 OS) or gcc (x86 OS)
    gdb
    nasm

Download sources and unpack their.
Go to directory with their: "cd <path>"
Further print commands:
1) "qmake" (For installing in specific directory on Linux - print: "qmake PREFIX=<path>". By default SASM installs in "/usr/bin" and "usr/share")
2) "make" for Linux and "mingw32-make" for Windows.
3) For Linux: "make install" (command "sasm" will open SASM) or run "sasm" from folder right away or put "sasm" executable file to folder "Linux" (from this folder you can run the program).
   For Windows: Put "sasm.exe" executable file to folder "Windows". From this folder you can run the program. Also you can run program right away from compilation folder.
===========================================================================

Also you can download already compiled packages 
from site https://dman95.github.io/SASM/ or 
from OBS repository https://download.opensuse.org/repositories/home:/Dman95/

More help info in file help.html
Also SASM supports doxygen: run "doxygen configfile" to generate documentation. In this documentation you can also find a small developer guide which includes information about adding new assemblers and languages support.

Copyright © 2013 Dmitriy Manushin

Рейтинг: 5.00. Голосов: 5.

Инструменты для низкоуровневого программирования

Запись от Jin X размещена 12.03.2018 в 20:55

Обновил(-а) Jin X 29.03.2022 в 12:47

Метки asm, assembler, low level, tools, utils, ассемблер, инструменты, низкоуровневое, полезные ссылки, разработчик, системное программирование, ссылки, утилиты


Инструменты для низкоуровневого программирования

Компиляторы и компоновщики

  • MASM32 (Macro Assembler) – наверное, самый популярный пакет самого популярного ассемблера от Стива Хатчессона aka Hutch (содержит в себе также PoAsm), рекомендую сразу скачать ml.exe 8.0 и заменить им входящий в пакет ml.exe 6.14
    • MASM64 by Hutch – набор файлов для 64-битной версии MASM (необходимо запустить makeall.bat, а потом обратить особое внимание на файл include64masm64rt.inc); файлы ml64.exe, link.exe и прочие потроха можно взять из Visual Studio (путь к папке с нужными файлами примерно такой: C:Program Files (x86)Microsoft Visual Studio2017ProfessionalVCToolsMSVC14.12.25827binHostx64x64)
    • MASM64 includes and libs – заголовки и библиотеки для 64-битного MASM’а от Vasiliy (тут главный файл – include64temphls.inc, который включён в набор Hutch’а и называется macros64vasily.inc, так что скачивать оба пакета смысла нет; однако информацию с сайта Василия почитать стоит)
    • Disassemble Help Library – Библиотека того же автора (Vasiliy) для дизассемблирования
    • Calculation Engine – Библиотека для работы с длинными числами (снова by Vasiliy)
  • fasm (flat assembler) – современный и удобный компилятор под DOS, Wndows, Linux с очень развитой системой макросов и полным набором инструкций Intel/AMD
  • NASM (Netwide Assembler) – ещё один современный кроссплатформенный компилятор с хорошей макросистемой и полным набором инструкций Intel/AMD, популярен в зарубежных проектах и при программировании под Linux/BSD
    • NASMX – пакет макросов, include’ов, примеров и утилит для NASM под Windows, Linux, BSD, Xbox; включает макрос invoke, символы для работы с OpenGL и пр.
    • Yasm (Yet another assembler…) – попытка переписать NASM, однако последняя версия датируется 2014 годом и, на мой взгляд, не имеет преимуществ перед NASM
  • UASM (он же HJWasm) – современный MASM-совместимый мультиплатформенный ассемблер с полным набором инструкций Intel/AMD
  • TASM 5.x (Turbo Assembler) – старый, но всё ещё популярный ассемблер, в основном используется для создания программ под DOS
  • GoAsm – ассемблер для написания программ под Windows (Вики)
  • Asmc Macro Assembler (с исходниками) – переделанный JWasm с довольно приличной библиотекой различных функций
  • fasmg (flat assembler g) – универсальный ассемблер под любую платформу (имеются include-модули для создания кода под AVR, i8051, x86/x64, генерации байт-кода JVM, аналогично можно создать свои модули; информация)
  • FASMARM – ассемблер под архитектуру ARM
  • ARM Keil MDK (Microcontroller Development Kit) – средство разработки и отладки для контроллеров ARM (ещё ссылка; дополнительные паки; документация [english])
  • GNU Arm Toolchain – тулчейн для компиляции ARM-приложений под Windows [i686], Linux [x86-64 и AArch64], macOS [x86-64] (ещё одна ссылка)
  • ALINK, GoLink – компоновщики для программ под DOS и Windows
  • objconv – преобразователь форматов объектных файлов (COFF/OMF/ELF/Mach-O)
  • Crinkler – популярный среди демомейкеров компоновщик-упаковщик
  • Godbolt: Compiler Explorer – популярный онлайн-компилятор разных языков с дизассемблером
  • Online Assembler and Disassembler – поддерживает x86, ARM, Mips, PowerPC, Sparc
  • Online x86 / x64 Assembler and Disassembler
  • Quick C++ Benchmark – бенчмарк и профайлер кода C++ (Clang/GCC)

Работа с ресурсами

  • ResEd – бесплатный редактор ресурсов
  • Resource Builder – редактор + компилятор ресурсов (shareware)
  • GoRC – компилятор ресурсов (rc → res) [в вышеупомянутом NASMX есть и GoLink, и objconv, и GoRC]

Наборы разработчика

  • Windows 10 Software Development Kit (SDK) – заголовочные файлы, библиотеки, инструменты (в т.ч. отладчик WinDbg: док1, док2, док3) для разработчиков Windows
  • Windows Driver Kit (WDK) – инструменты для разработчика драйверов (документация)

Среды разработки (IDE) для ассемблера

  • Fresh IDE – визуальная среда разработки для fasm
  • SASM (SimpleASM) – простая кроссплатформенная среда разработки для NASM, MASM, GAS, fasm с подсветкой синтаксиса и отладчиком (для NASM имеется набор макросов для упрощения работы с консолью)
  • ASM Visual – IDE для MASM, fasm, TASM со встроенным отладчиком и поддержкой WinDbg, OllyDbg, TD, x64dbg (имеется возможность установить весь пакет инструментов при установки IDE)
  • GUI Turbo Assembler – среда разработки со встроенным компилятором TASM, отладчиком и эмулятором DOSBox
  • Easy Code – IDE с поддержкой множества различных ассемблеров (Asmc, fasm, GoAsm, JWasm, MASM, PoAsm, UASM), встроенным отладчиком, редактором ресурсов и диалоговых окон
  • Rad ASM – стал частью FbEdit FreeBASIC code editor, ищите в папках RadASM* по указанной ссылке (Вики)
  • JaeEditor (fasm) – последнее обновление в 2015 году
  • GSS Visual Assembler – TASM, MASM32 и др. Последнее обновление в 2014 году!
  • FASM Editor – последнее обновление в 2011 году

Отладчики, дизассемблеры

  • OllyDbg – популярный 32-битный отладчик (готовится 64-битная версия, но пока ещё не вышла)
  • x64dbg – хороший отладчик для 32- и 64-битного кода
  • IDA Pro – мощный интерактивный дизассемблер (shareware)
  • Ghidra – инструмент для реверс-инжиниринга от NSA (агентства национальной безопасности США), поддерживающий разные типы процессоров (официальный сайт – требует VPN/Proxy; Wiki; статья на Habr «GHIDRA vs. IDA Pro»)
  • radare2 (r2) – свободный кроссплатформенный фреймворк для реверс-инжиниринга, написанный на Си, который включает дизассемблер, шестнадцатеричный редактор, анализатор кода и т.д. Используется при реверсе, отладке вредоносного ПО и прошивок (Вики; GUI Cutter).
  • Turbo Debugger – популярный отладчик под DOS
  • AFD Pro – ещё один отладчик под DOS
  • debug – реализация от легендарного Japheth, входящая в состав FreeDOS. Являясь полным клоном MS debug, имеет возможность выполнять отладку protect-mode DPMI-приложений. Больше ссылок, в т.ч. на репозиторий github, см. здесь
  • ldebug – новая реализация MS debug от другого разработчика, и хотя она не входит в состав FreeDOS, но программа доступна в репозитории, а также на сайте разработчика (документация; ещё ссылки)

Эмуляторы, виртуализаторы

  • DOSBox – очень популярный эмулятор компьютера для запуска программ под DOS (имеет встроенный замедлитель скорости)
    • Dosify me! – DOSBox онлайн
    • TweetX86 – ещё один DOSBox онлайн
  • emu8086 – простенький эмулятор процессора 8086 и некоторых функций MS-DOS со встроенным ассемблером и средой, включая отладчик
  • Bochs – эмулятор компьютера IBM PC
  • QEMU – эмулятор аппаратного обеспечения различных платформ (QEMU Manager)
  • Intel Software Development Emulator (SDE) – эмулятор расширений (инструкций) процессоров Intel
  • MS-DOS Player – удобно использовать при сборке проекта с помощью компиляторов DOS и Windows, а также при запуске консольных DOS-программ (графические режимы не поддерживаются)
  • Статья об эмуляторах DOS на этом форуме
  • VMware Workstation Player (бесплатный для персонального использования), VMware Workstation Pro (shareware) – мощные виртуализаторы, позволяющие создавать и запускать виртуальные машины
  • Oracle VirtualBox – альтернативный бесплатный виртуализатор
  • Sandboxie – песочница для запуска программ в изолированной среде (shareware)
  • Симуляторы ARM и других процессоров – хорошие симуляторы, однако имеются заморочки с написанием скриптов.

Редакторы PE и двоичных файлов

  • PE Explorer – редактор секций, ресурсов PE, дизассемблер (shareware)
  • Resourse Hacker – редактор ресурсов исполняемых файлов под Windows
  • Hiew – редактор двоичных файлов со встроенным дизассемблером, просмотром и редактированием заголовков исполняемых файлов (shareware)
  • HexIt – бесплатная альтернатива Hiew, но не такая красивая и довольно старая (2001 года)
  • WinHex – Hex-редактор, позволяющий редактировать не только файлы, но и диски (по секторам) и память, не имеет дизассемблера (shareware)
  • ImHex – бесплатный и активно развивающийся hex-редактор с дизассемблером (разных типов процессоров) и множеством интересных функций (github)

Упаковщики и протекторы

  • UPX (Ultimate Packer for eXecutables) – популярный бесплатный упаковщик EXE-файлов и DLL-библиотек
  • PECompact – ещё один упаковщик (shareware)
  • ASPack, ASProtect – упаковщик и протектор EXE-файлов
  • Themida – мощное средство защиты программ (shareware, статья на Хабре)
  • Enigma Virtual Box – бесплатный виртуализатор файлов, объединяющий исполняемый файл вместе с сопутствующими (dll, ocx, графическими и звуковыми файлами) в один (на этом сайте также имеется shareware-протектор Enigma Protector)

Профилировщики, анализаторы кода

  • Compiler Explorer — инструмент, позволяющий быстро перевести код на языках высокого уровня (C++, Pascal и многие другие) в инструкции ассемблера (статья на Хабре)
  • Quick C++ Benchmark — онлайн-бенчмарк кода на C++
  • Intel VTune Amplifier – фирменный профилировщик от Intel (входит в состав Intel Parallel Studio XE; shareware)
  • Intel Single Event API – бесплатный профилировщик от Intel с открытым исходным кодом
  • Valgrind – бесплатный профилировщик под Linux
  • Intel Architecture Code Analyzer (IACA) – анализатор кода от Intel (статья на Хабре)

Системные утилиты

  • Windows Sysinternals – набор системных утилит для Windows (работа с процессами, мониторы и прочее)
  • Rufus – утилита для создания загрузочных USB
  • WinSpy – утилита для получения информации об открытых окнах и управления ими

Операционные системы

  • ReactOS – бесплатная Windows-совместимая операционная система с открытым исходным кодом (Вики)
  • KolibriOS – миниатюрная ОС, умещающаяся на дискету 1.44 Mb, с исходниками на fasm (как скачать / ещё вариант; Вики)
  • Исходники Linux (на GitHub)
  • FreeDOS с исходниками (Вики)

Прочее

  • Far Manager – менеджер файлов в стиле Norton Commander с подсветкой кода в редакторе
  • AsmTidy – форматтер ассемблерных исходников в Intel-синтаксисе (бьютифайлер) на Perl (ему также посвящена отдельная тема на форуме)

Считаете, что здесь нет чего-то важного? Нашли или битую ссылку ошибку?
Пишите в комментариях или в специальную тему (предпочтительно). Варез не размещаю!

What is the best IDE for Assembly programming in Windows? (It should work for either MASM, TASM, or NASM, although any asm will do=P).

Commercial or FOSS is fine.

asked Jan 16, 2011 at 1:49

Eugene's user avatar

EugeneEugene

10.5k19 gold badges65 silver badges96 bronze badges

Max Sattouf's user avatar

answered Jan 16, 2011 at 1:57

Saif al Harthi's user avatar

Saif al HarthiSaif al Harthi

2,9481 gold badge21 silver badges26 bronze badges

4

RadAsm is a very good IDE. It comes with it’s own resource editor for windows. It supports various assemblers and compilers.

tcooc's user avatar

tcooc

20.3k3 gold badges38 silver badges57 bronze badges

answered Feb 17, 2011 at 20:56

Ouriço's user avatar

OuriçoOuriço

1012 bronze badges

Советуем обратить внимание

Эта программа не только чистит систему

Ускоряет систему, реестр и доступ в Интернет. Оптимизирует, чистит и исправляет все проблемы с ПК в 1 клик. Выявляет и удаляет шпионские и рекламные модули.
Программа — победитель многих конкурсов… ПодробнееПодробнее...

GSS Visual Assembler 3.9.8.7

GSS Visual Assembler — современная визуальная студия для разработок программ на языке Ассемблера. Основным ее достоинством является универсальность т.е. она подходит для любых Ассемблерных пакетов (TASM, MASM и прочих)…

get_app13 328 | Условно-бесплатная |

PE Explorer 1.99 R6

PE Explorer — программа для просмотра, редактирования и анализа внутреннего устройства исполняемых файлов, таких как EXE, DLL, ActiveX и других. Набор различных инструментов, объединенные общим интерфейсом, позволит заглянуть внутрь любой программы…

get_app25 527 | Условно-бесплатная |

Система макрокоманд языка ассемблер 1.0

Система макрокоманд позволяет писать программы в привычном синтаксисе языка высокого уровня и делает тексты программ более прозрачными для чтения и восприятия…

get_app8 853 | Бесплатная |

ASM Editor for Windows 2.2d

ASM Editor for Windows — редактор исходного кода программ, работающий совместно с внешними компиляторами. Настраиваемые схемы синтаксической подсветки, назначение пользователем функций меню, возможность подключения Help-файлов и другие возможности для обе…

get_app16 423 | Бесплатная |

Visual Assembler

Visual Assembler — эта программа написана для тех, кто программирует на ассемблере. Borland Tasm — транслятор сделанный для MSDOS. Т.к. начинающему программисту на ассемблере будет сложно не допускать ошибок на этом языке, то постоянная компиляция и компо…

get_app68 417 | Бесплатная |

Понравилась статья? Поделить с друзьями:
  • Ide to ahci windows 7 fix
  • Ide python для windows 7 x64
  • Ide code blocks скачать для windows
  • Ide ata atapi контроллеры драйвер скачать бесплатно windows 7 x64
  • Idc5 car texa скачать установочный диск для windows