Microsoft макроассемблер
Материал из Википедии — свободной энциклопедии
Microsoft Макро-Ассемблер (сокращённо MASM) — ассемблер для семьи x86 микропроцессоров. Первоначально он был произведен компанией Microsoft для создания программ в их MS-DOS операционной системе, и был в течение некоторого времени самым популярный ассемблером, доступным для той операционной системы. Это поддерживало широкое разнообразие макро-средств обслуживания и структурированность программных идиом, включая конструкции высокого уровня для повторов, вызовов процедур и чередований (поэтому MASM — пример ассемблера высокого уровня). Более поздние версии добавили способность создания программ для Windows операционных систем, которые были выпущены, чтобы последовать за MS-DOS. MASM — один из немногих инструментов разработки Microsoft, для которых не было никаких отдельных 16-битовых и 32-битовых версий.
Содержание |
[править] История
В начале 1990-ых, однако, альтернативные ассемблеры, типа Borland TASM и условно-бесплатного ассемблера x86 NASM начали брать часть доли на рынке MASM. Однако, два события в конце 1990-ых позволили MASM сохранить большую часть своей доли на рынке: сначала, Microsoft прекратила продавать MASM как коммерческий продукт и начала распределять его бесплатно как часть DDK (Комплект для создания драйверов). Во вторых, благодаря пакету MASM32 и обучающим программам Iczelion'а Win32 оказалось, что примененяя Windows, программирование на MASM возможно. Позже в 2000 году, MASM 6.15 был выпущен как часть Visual C++ пакета разработки, который является бесплатным. В результате все версии Visual C++ позже чем 6.0, включал версию MASM, равного версии Visual C++. Позже в Visual C++ 2005 появилась 64-битовая версия MASM (название линкера — ml64.exe). Вместе с большим сообществом программистов MASM, эти события помогли остановить снижение популярности MASM до других ассемблеров. Сегодня MASM — все еще ассемблер номер один на платформе Win32, несмотря на конкуренцию с новыми продуктами, как NASM, FASM, TASM, и HLA.
[править] Проекты поддерживающие MASM
Есть много развивающихся проектов для разработки программного обеспечения, которые поддерживают MASM, включая IDE (например RadASM), отладчики (вроде OllyDbg), и дизассемблеры (включая IDAPro, интерактивный дизассемблер). Проект MASM32 ([1]) объединил в себе библиотеку очень программиста, крупный репозитарий исходных кодов, и внушительную документацию для пользователей MASM. MASM также поддерживается большим количеством веб-страниц и форумов поддержки (включая [2]). Несмотря на возраст этого продукта, он остается одним из наиболее хорошо поддерживающихся ассемблеров среди уже существующих.
[править] Версии MASM
Хотя MASM больше не коммерческий продукт, Microsoft продолжает поддерживать это из-за большой основы кодекса(кода) собрания, который существует внутренний в Microsoft. С тех пор как Microsoft прекратила продавать MASM отдельно, они выпустили несколько обновлений к производственной линии MASM v6.x (последнее обновление — версия 6.15, которая была включена в Visual C++ 6.0 Пакетов Процессора), они выпустили MASM v7.0, который был включен с Visual C++ .NET 2002, MASM v7.1, который был включен с Visual C++ .NET 2003 и MASM 8.0 (который шел с Visual C++ 2005, и поэтому включая версию MASM, который может собрать x64-код). Для версии, включенной с более новой версии Visual C++, используется файл ml.exe в Visual C++ справочник в папке bin, и для версии, которая может собрать код x64, включенный в Visual C++ 2005, искать файл ml64.exe в том же самом справочнике. Документация для версий, включенных с более новым Visual C++ версии — часть документации для той версии.
[править] Поддержка
Хотя существуют слухи, что Microsoft больше не поддерживает и не развивает MASM, на самом деле Microsoft действительно продолжает поддерживать и развивать этот продукт. Тем не менее, поддержка ограничена добавлением новых инструкций, поскольку появляются более новые процессоры и улучшается 64-битовая поддержка; кроме этого не происходит радикальных перемен в ассемблере.
[править] Ссылки
- http://masm32.com/ — Официальный сайт MASM-a
- http://www.win32asm.cjb.net/ — Уроки программирования Iczelion'а на английском языке
- http://wasm.ru/publist.php?list=1 — Русская версия уроков Iczelion'а
Программные пакеты для программирования на ассемблере |
---|