· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› Чем плох MASM32?

. 1 . 2 . 3 . 4 . >>

Посл.отвђт Сообщенiе


Дата: Апр 3, 2004 05:58:11

Судя по многочисленным просмотренным постам, отношение к MASM32 весьма негативное, в отличие от, например, FASM. Почему?


Дата: Апр 3, 2004 13:10:28

Это потому, что masm - детище Баала, и каждый воин, в котором силен дух дзена, должен его опасаться и искоренять :)


Дата: Апр 3, 2004 14:01:38

Добавлю еще, что оно негативное не у всех. Например, когда я его пользовал, мне он казался сносным.
Но потом я преодолел лень и попробовал FASM - это совершенно другой мир, с невероятными возможномтями ;-)

ЗЫ
Даже ярый сторонник MASM Randall Hyde отказался от него - долго перед этим сравнивал скорости компилирования :D


Дата: Апр 3, 2004 14:02:35

[ Sharp: Судя по многочисленным просмотренным постам, отношение к MASM32 весьма негативное, в отличие от, например, FASM. Почему? ]

Что-то не замечал такой тенденции. Негативно относиться к масму можно только по причине его незнания. FASM хороший проект, но до мощи MASM ему ещё далеко.


Дата: Апр 3, 2004 18:35:16

Что-то серьёзное можно писать только на MASM. Конечно если бы FASM поддерживал полностью структуры, объединения, были бы для него полные include для Win32 приложений и include из DDK для драйверов, и ещё некоторые вещи, то можно было и на FASM писать, а пока он ещё не дорос.


Дата: Апр 3, 2004 19:20:09 · Поправил: 1990

Four-F и dragon
Абсолютно согласен! Мне нравиться MASM32 тем, что в пакете с ним поставляется много интересных примеров и -ГЛАВНОЕ - все необходимые инклуды и либы для быстрого и простого создания приложения для Windows.
Я также программирую на NASM. По собственному опыту могу сказать, что NASM - отличный ассемблер, но до MASM ему далеко. А FASM меня пугает тем, что линкёр и компилер совмещены.


Дата: Апр 3, 2004 19:55:41 · Поправил: S_T_A_S_

[ dragon - если бы FASM поддерживал полностью структуры, объединения ]

IMHO, реализация структур в нем НАМНОГО лучше и гибче. Если захотеть, можно даже синтаксис MASM воспроизвести.
Да, нет оператора UNION - но это легко решаемо стандартными средствами - LABEL.


По поводу include из DDK я спорить не буду :(
IMHO это не является недостатоком ассемблера, это недостаток (в смысле - нехватка количества) людей, делающих их.


[ 1990 - меня пугает тем, что линкёр и компилер совмещены. ]

В FASM нет линкера совсем. Он сразу генерит PE, хотя может и COFF и потом MS LINK.EXE использовать.
При правильном использовании это может дать определенные приимущества. Например библиотеки на основе искодников, а не .lib файлов.


ЗЫ
Млин, сам помню точно такой же флеймовый топик начинал, когда-то 8-()


ЗЫЫ
Добавлю по делу - в MASM сразу заложено намного больше HLL синтакса, в FASM - нет. Но если взяться как следует за макросы ;-)


Дата: Апр 3, 2004 19:55:50

21990: а меня FASM радует тем что в нем ресурсы и импорт можно ручками определить. В MASM'е такое и не снилось. А уж про макро язык FASM'а я вообще лучше помолчу.


Дата: Апр 3, 2004 20:19:07

dragon

Вот как раз полные инклуды сделать не проблема..

Что мне не нравиться это то что fasm не поддерживает rc скрипты..


Дата: Апр 3, 2004 21:05:11

А что их MASM поддерживает что ли? Там rc.exe для этого есть. Да и зачем всё это, последняя версия может ресурсы прилинковать к файлу.


Дата: Апр 3, 2004 21:30:58

На днях возможно появится статья посвященная FASM. Там расписан метод создания своих контролов на примере CheckListBox. К статье есть файл с самим макросом (он примерно строк на 200). Этот контрол позволяет на этапе проектирования (или в процессе выполнения программы) создать несколько ListBox-ов в первом из них слева будут CheckBox-ы произвольной формы, макрос позволяет добавлением в исходный код всего 3-4 строк синхронизировать их. Правда синхронизация в статье не рассмотрена, но версии синхронных и обычных макросов различаются всего тремя строчками.
Можете сравнить возможно-ли такое в МАСМ.


Дата: Апр 3, 2004 22:38:38 · Поправил: 1990

Как много поклонников FASM. Есть над чем задуматься! ;-) Но я всёже склоняюсь в сторону MASM32. А на крайний случай буду юзать NASM, если так уж "ненавистны" всем эти возможности HLL. ;)


Дата: Апр 5, 2004 10:00:50

Я использую FASM и считаю его проще и удобнее, чем MASM. У него удобный синтаксис и при компиляции он сразу дает выполнимый файл. Смысла в линковке при использовании MASM-а я не вижу, так как считаю: зачем делать что то в 2 шага, если можно сделать в один. Размер компилятора небольшой, а инклуды можно взять MASM-овские. И мое мнение, что при написании программы на FASM я нахожусь ближе к низкому уровню, а это не может не радовать настоящего программиста на ассемблере. Недостатком FASM-а считаю невозможность написания на нем драйиеров для Windows. Зато на нем можно писать программы для Linux. FASM FOREVER !!!


Дата: Апр 5, 2004 12:11:58

Недостатком FASM-а считаю невозможность написания на нем драйиеров для Windows.

Ну ты не прав. Посмотри например на мою перекомпиляцию драйвера haspemul - как раз на фасме сделано


Дата: Апр 5, 2004 12:22:01

[ Icebp: Смысла в линковке при использовании MASM-а я не вижу, так как считаю: зачем делать что то в 2 шага, если можно сделать в один. ]

Смысл появится тогда, когда..

1. потребуется написать многомодульную программу. Например, у тя два набора инклудов несовместимых друг с другом - скажем ntddk.inc и windows.inc. Ты пишешь два модуля: в один подключаешь ntddk.inc, в другой windows.inc. Получаешь два объектника и линкуешь вместе.

2. потребуется подключить код написанный на асме к проекту на си. Правда, для этого можно и lib использовать. Кстати, а фасм либы то может делать?

3. потребуется подключить к своему асмовому проекту чужие объектники. Я такое практиковал пару раз. Например, в msvc7 есть челый каталог с объектниками стандартных crt-функций (strcpy, strlen и т.п.).

4. потребуется ещё что-нибудь :)

. 1 . 2 . 3 . 4 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.055