Web Analytics
Privacy Policy Cookie Policy Terms and Conditions Microsoft макроассемблер — Википедия

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-битовая поддержка; кроме этого не происходит радикальных перемен в ассемблере.

[править] Ссылки


Программные пакеты для программирования на ассемблере
Компиляторы: MASMFASMNASMRosASMTASM • YASM • HLASM • прочие...
 
На других языках
THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu