Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2011, 16:38   #1
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию Выбор компилятора, IDE, редактора

Итак, вырешили узичить программирование на ассемблере и не знаете какой компилятор использовать.
В этой теме предполагается описывать плюсы и минусы компиляторов, сред разработки (IDE), редакторов для языка ассемблер.

Я опишу следующие TASM, MASM и FASM.

Ответ на вопрос использовать ли TASM понятен. ответ "Конечно нет!" TASM древний компилятор, который уже не поддердивается разработчиком и к тому же не отвечает современным требованиям (к примеру он не поддерживает очень много новых инструкций). если вы только начинаете изучение ассемблера, то лучше даже и думайте его использовать и не качайте TASM

MASM - довольно-таки мощный компилятор производства компании Microsoft. Обладает очень мощным макросным движком и многими возможностями необходимыми при программировани под windows.
Минусы: не очень большой набор поддерживаемых команд, можно использовать только в windows

FASM - компилятор с открытым исходным кодом. Есть версии почти под все платформы. Максимальный набор поддерживаемых команд. Чистый синтаксис, без древних и совершенно бесполезных дирректив. Можно компилировать программы для windows и unix, 32-битные и 64-битные. Макросный движок почти ничем не уступает движку masm.

Мой личный совет : FASM

Настоятельно не рекомендую создавать подобные темы, в этом разделе.

Последний раз редактировалось rpy3uH; 12.05.2011 в 09:58.
rpy3uH вне форума Ответить с цитированием
Старый 11.05.2011, 18:29   #2
WebbMan
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 168
По умолчанию

у меня стоит masm32, сперва создаю объект name.obj батником:
@ c:\masm32\bin\ml.exe /coff /c .\ISHODNIC\name.asm
потом компилирую батником:
@ if EXIST name.obj c:\masm32\bin\link.exe /SUBSYSTEM:WINDOWS .\name.obj
в общем не очень удобно выходит, как обстоит дело с fasm? тоже надо объект создавать и потом компилить или есть "волшебная" кнопочка скомпилировать которая делает всё за тебя?
WebbMan вне форума Ответить с цитированием
Старый 11.05.2011, 19:00   #3
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

FASM может сразу делать exe/PE, но, если надо в obj/COFF, можно и в него.
Если из IDE, то compile и всё.
fasm.jpg
Somebody вне форума Ответить с цитированием
Старый 20.07.2011, 00:01   #4
m0rg0t
Пользователь
 
Регистрация: 19.07.2011
Сообщений: 14
По умолчанию

Цитата:
в общем не очень удобно выходит
Запускайте qeditor.exe (идет в комплекте с Масмом), там можно тоже 1 кнопкой компилить. Или ставьте какой-нибудь радасм\винасм.
m0rg0t вне форума Ответить с цитированием
Старый 20.07.2011, 01:30   #5
|{ot
Форумчанин
 
Аватар для |{ot
 
Регистрация: 09.03.2008
Сообщений: 127
По умолчанию

Если под Win32/64 то это однозначно и только MASM
Он действительно для этой системы родной, на FASM без сомнения можно то же написать, но как мне кажется, в некоторых местах на FASM криво может получится да и для masm столько документации, статей и исходных кодов (тот же wasm.ru возьмите). С масмом что угодно для Windows пиши, хоть в третем кольце, хоть драйвера любый.

Один минус, это то что он под винду заточен, на другие платформы ни-ни кажись... Да и пишут ли на ассемблере под Unix подобные системы, там кажется буквально единици на асме пишут, а так все системное это С
На счет других платформ, честно говоря не знаю..

Так что мой выбор это конечно же МАСМ

А на счет среды разработки, то это RadAsm



настроить его можно под любой пакет компилятора, к примеру у меня в нем два профиля:

1. Это для masm32 - в нем пишу все, драйвера, оконные приложения, службы, консольный и все что захочу, есть множество полезных утилит и т.д. Компилит он с помощью пакета masm32

2. Это для С - компилит с помощью DDK, тут опять же все тоже самое, как драйвера, службы, так и обычные консольные приложения на С

Среда это отличная, настраивается все полностью от и до как захочешь, я бы не сказал что она особо уступает студиям (CodeGear или Visual), только настроить нужно.

Поддерживает шаблоны (у меня к примеру все что нужно что бы создать простейший драйвер/службу/ДЛЛ/и т.д. нужно только имя программы указать и все так же как в мастере в Visual) есть десятки шаблонов на все случаи жизни.



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

в дебагер заходит так же по нажатию клавиши, все автоматом

Эту среду можно спокойно называть студией, не встречал еще тут такого, чего реально нету в студиях... нужно только все один раз для себя настроить.

Последний раз редактировалось |{ot; 20.07.2011 в 01:33.
|{ot вне форума Ответить с цитированием
Старый 01.08.2011, 10:28   #6
777user777
Пользователь
 
Аватар для 777user777
 
Регистрация: 29.11.2010
Сообщений: 38
По умолчанию

masm32 действительно~ лучший,но GUI легче писать на fasm'е(хотя для этого я использую~ VISG).
777user777 вне форума Ответить с цитированием
Старый 30.01.2012, 20:38   #7
svbezm
Форумчанин
 
Регистрация: 02.04.2010
Сообщений: 104
По умолчанию

1.FASM-ом написаны с нуля OS "Колибри" и "Менует".
2.FASM имеет версию для АРМ
3.FASM имеет версию 32/64бит
4.FASM позволяет писать макросы для прямого компилирования си и бейсик подобного кода
svbezm вне форума Ответить с цитированием
Старый 30.01.2012, 21:16   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Пользуюсь FASM-ом. Удобно и все мои задачи он решает идеально.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.03.2012, 20:54   #9
RedCrystal
 
Регистрация: 13.03.2012
Сообщений: 4
По умолчанию

Доброго времени суток.
Существует так же Yasm (про Nasm не пишу, т.к. Yasm - его потомок). Интересует сравнение FASM с Yasm... В интернете нашел это, но не знаю, насколько свежа информация, т.к. даты публикации нет.

С уважением =RedCrystal=
RedCrystal вне форума Ответить с цитированием
Старый 11.04.2012, 16:15   #10
Random2
Пользователь
 
Регистрация: 30.06.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от WebbMan Посмотреть сообщение
в общем не очень удобно выходит, ?
Для масм есть замечательный IDE и редактор исходного кода - MASM Builder, в котором есть та самая кнопочка "Компилировать и запустить".
Линк:
http://www.digitaction.com/index.php...or-masm32.html

Хоть сайт и на англ. языке - интерфейс языка можно поставить и русский и английский. Содержит много разных полезных возможностей для создания программ на MASM и редактирования исходного кода: настраиваемая подсветка синтаксиса, исследователь кода, отладка с помощью OllyDbg or MS Visual Studio debugger (на выбор).
Интерфейс и принцип работы в этой IDE похожи на Delphi / С++ Builder - выбрал контрол, кинул на форму, задал свойства, описал событие - готово. Для небольших программ самое то что нужно - очень удобно.

Скачал, распаковал архив и используй. Архив содержит минимальный набор файлов MASM32 v9. Линк

Насчет ассемблера - сам пользуюсь MASM, удобно, всё устраивает. ТАСМ конечно не рекомендую, хотя под дос это был хит. FASM - незнаю, надо будет посмотреть что к чему в нем.
MASM Builder - Бесплатная IDE для MASM32 от русских разработчиков.
Random2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбор компилятора. Serjuk Помощь студентам 4 02.07.2010 21:33
Выбор IDE coirius Свободное общение 14 18.03.2010 09:36
Выбор IDE Бурый Денис Qt и кроссплатформенное программирование С/С++ 7 28.02.2010 14:12
Выбор компилятора, редактора, IDE. MarkStaver Qt и кроссплатформенное программирование С/С++ 1 21.02.2010 17:41
Выбор графического редактора SoftKoc Моделирование, изометрия, photoshop, 3d редакторы 5 18.11.2009 17:41