Microsoft Macro Assembler
Der Microsoft Macro Assembler (abgekürzt MASM) ist ein von Microsoft entwickelter Assembler für x86-Prozessoren. Er übersetzt Assemblerquelltext in ausführbaren, nativen Maschinencode.
Der Microsoft Macro Assembler entwickelte sich zeitweise zum meistbenutzten Assembler für die Entwicklung von MS-DOS-Programmen. Heutzutage ist MASM der bevorzugte Assembler für alle von Microsoft stammenden Betriebssysteme. Er ist in aktuellen Versionen in der integrierten Entwicklungsumgebung (IDE) Microsoft Visual Studio enthalten. Früher wurde er als eigenständiges Softwarepaket vertrieben. Die kostenlosen Versionen von MASM (aus Visual Studio Community; früher Express) dürfen nicht für kommerzielle Zwecke verwendet werden. Zudem darf man sie nur zur Entwicklung von Software für Microsoft-Betriebssysteme verwenden – alle anderen Betriebssysteme sind ausdrücklich durch die EULA (End-User License Agreement) ausgeschlossen.
Als kommerzieller Konkurrent zum Microsoft Macro Assembler behauptete sich besonders der Turbo Assembler von Borland.<ref>{{#invoke:Vorlage:Literatur|f}}</ref> Als kostenlose und freie Alternativen sind beispielsweise die beiden MASM kompatiblen Programme JWasm und UASM verfügbar.<ref>{{#if:|{{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}| |}}}}{{#if:|{{{autor}}}: }}{{#if:|{{#if:JWasm|[{{#invoke:Vorlage:Internetquelle|archivURL|1={{#invoke:URLutil|getNormalized|1={{{archiv-url}}}}}}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=JWasm}}]{{#if:| ({{{format}}})}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}|{{#if:https://github.com/Baron-von-Riedesel/JWasm%7C{{#if:{{#invoke:TemplUtl%7Cfaculty%7C}}%7C{{#invoke:Vorlage:Internetquelle%7CTitelFormat%7Ctitel={{#invoke:WLink%7CgetEscapedTitle%7C1=JWasm}}}}%7C[{{#invoke:URLutil|getNormalized|1=https://github.com/Baron-von-Riedesel/JWasm}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel={{#invoke:WLink|getEscapedTitle|1=JWasm}}}}]}}{{#if:| ({{{format}}}{{#if:japheth{{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| )
| {{#if:{{#ifeq:en|de||{{#if:en|1}}}}| ;
| )}}}}}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}}}{{#if:https://github.com/Baron-von-Riedesel/JWasm%7C{{#if:{{#invoke:URLutil%7CisResourceURL%7C1=https://github.com/Baron-von-Riedesel/JWasm}}%7C%7C}}}}{{#if:JWasm|{{#if:{{#invoke:WLink|isValidLinktext|1=JWasm|lines=0}}||}}}}{{#if: japheth| In: {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=japheth}}}}{{#if: | {{{hrsg}}}{{#if: |,|{{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | {{#if:{{#invoke:DateTime|format|{{{datum}}}|noerror=1}}
|{{#invoke:DateTime|format|{{{datum}}}|T._Monat JJJJ}}
|{{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, datum={{{datum}}}|class=Zitationswartung}} }}{{#if: |,|{{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | S. {{{seiten}}}{{#if: |,|{{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: {{#invoke:TemplUtl|faculty|}}| {{#if:|{{#if:|archiviert|ehemals}}|{{#if:|Archiviert|Ehemals}}}} {{#if:|vom|im}} Vorlage:Referrer{{#if:{{#invoke:TemplUtl|faculty|}}| (nicht mehr online verfügbar)}}{{#if: | am {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}|{{{archiv-datum}}}{{#if:320718||(?)}}}}}}{{#if: 2025-10-25|;}}}}{{#if: 2025-10-25| {{#if:{{#invoke:TemplUtl|faculty|}}|abgerufen|Abgerufen}} {{#switch: {{#invoke:Str|len| {{#invoke:DateTime|format| 2025-10-25 |ISO|noerror=1}} }}
|4=im Jahr
|7=im
|10=am
|#default={{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, abruf=2025-10-25|class=Zitationswartung}} }} {{#invoke:DateTime|format|2025-10-25|T._Monat JJJJ}}
| {{#invoke:TemplUtl|failure|1=Vorlage:Internetquelle | abruf=2026-MM-TT ist Pflichtparameter}} }}{{#if:{{#ifeq:en|de||{{#if:en|1}}}}|{{#if:japheth{{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| (
| {{#if: | | (}}
}}{{#ifeq:{{#if:en|en|de}}|de||
{{#invoke:Multilingual|format|en|slang=!|split=[%s,]+|shift=m|separator=, }}}}{{#if: |{{#ifeq:{{#if:en|en|de}}|de||, }}{{{kommentar}}}}})}}{{#if: {{#if: 2025-10-25 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}} }}en|{{#if: |: {{
#if:
| „{{
#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| Vorlage:Str trim
| {{#invoke:Vorlage:lang|flat}}
}}“
| {{#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| „Vorlage:Str trim“
| {{#invoke:Text|quote
|1={{#if:
| {{#invoke:Vorlage:lang|flat}}
| {{#invoke:Vorlage:lang|flat}} }}
|2={{#if: {{#invoke:TemplUtl|faculty|}}|de-CH|de}}
|3=1}} }}
}}{{#if:
| (<templatestyles src="Person/styles.css" />{{#if: | : }}{{#if: | , deutsch: „“ }})
| {{#if:
| ({{#if: | , deutsch: „“ }})
| {{#if: | (deutsch: „“) }}
}}
}}{{#if: {{{zitat}}}
| {{#if:
| {{#if: {{{zitat}}}
| Vorlage:": Text= und 1= gleichzeitig, bzw. Pipe zu viel }} }}
| Vorlage:": Text= fehlt }}{{#if: | {{#if: {{#invoke:Text|unstrip|{{{ref}}}}}
| Vorlage:": Ungültiger Wert: ref=
| {{{ref}}} }}
}}|.{{#if:{{#invoke:TemplUtl|faculty|}}|{{#if:||{{#ifeq: | JaKeinHinweis |{{#switch:
|0|=Vorlage:Toter Link/Core{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if: | [1] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/Baron-von-Riedesel/JWasm}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://github.com/Baron-von-Riedesel/JWasm Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/Baron-von-Riedesel/JWasm}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}[https://github.com/Baron-von-Riedesel/JWasm }}|{{#switch: |0|=Vorlage:Toter Link/Core{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if: | [2] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/Baron-von-Riedesel/JWasm}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://github.com/Baron-von-Riedesel/JWasm Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/Baron-von-Riedesel/JWasm | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/Baron-von-Riedesel/JWasm}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}[https://github.com/Baron-von-Riedesel/JWasm }} }}}}}}}}}}{{#if:| {{#invoke:Vorlage:Internetquelle|archivBot|stamp={{{archiv-bot}}}|text={{#if:|Vorlage:Webarchiv/archiv-bot}}
}}}}{{#invoke:TemplatePar|check |all= url= titel= |opt= autor= hrsg= format= sprache= titelerg= werk= seiten= datum= abruf= zugriff= abruf-verborgen= archiv-url= archiv-datum= archiv-bot= kommentar= zitat= AT= CH= offline= |cat= {{#ifeq: 0 | 0 | Wikipedia:Vorlagenfehler/Vorlage:Internetquelle}} |template= Vorlage:Internetquelle |format=0 |preview=1 }}</ref><ref>{{#if:|{{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}| |}}}}{{#if:|{{{autor}}}: }}{{#if:|{{#if:UASM|[{{#invoke:Vorlage:Internetquelle|archivURL|1={{#invoke:URLutil|getNormalized|1={{{archiv-url}}}}}}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=UASM}}]{{#if:| ({{{format}}})}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}|{{#if:https://www.terraspace.co.uk/uasm.html%7C{{#if:{{#invoke:TemplUtl%7Cfaculty%7C}}%7C{{#invoke:Vorlage:Internetquelle%7CTitelFormat%7Ctitel={{#invoke:WLink%7CgetEscapedTitle%7C1=UASM}}}}%7C[{{#invoke:URLutil|getNormalized|1=https://www.terraspace.co.uk/uasm.html}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel={{#invoke:WLink|getEscapedTitle|1=UASM}}}}]}}{{#if:| ({{{format}}}{{#if:terraspace.co.uk{{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| )
| {{#if:{{#ifeq:en|de||{{#if:en|1}}}}| ;
| )}}}}}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}}}{{#if:https://www.terraspace.co.uk/uasm.html%7C{{#if:{{#invoke:URLutil%7CisResourceURL%7C1=https://www.terraspace.co.uk/uasm.html}}%7C%7C}}}}{{#if:UASM|{{#if:{{#invoke:WLink|isValidLinktext|1=UASM|lines=0}}||}}}}{{#if: terraspace.co.uk| In: {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=terraspace.co.uk}}}}{{#if: | {{{hrsg}}}{{#if: |,|{{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | {{#if:{{#invoke:DateTime|format|{{{datum}}}|noerror=1}}
|{{#invoke:DateTime|format|{{{datum}}}|T._Monat JJJJ}}
|{{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, datum={{{datum}}}|class=Zitationswartung}} }}{{#if: |,|{{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | S. {{{seiten}}}{{#if: |,|{{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: {{#invoke:TemplUtl|faculty|}}| {{#if:|{{#if:|archiviert|ehemals}}|{{#if:|Archiviert|Ehemals}}}} {{#if:|vom|im}} Vorlage:Referrer{{#if:{{#invoke:TemplUtl|faculty|}}| (nicht mehr online verfügbar)}}{{#if: | am {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}|{{{archiv-datum}}}{{#if:320718||(?)}}}}}}{{#if: 2022-07-10|;}}}}{{#if: 2022-07-10| {{#if:{{#invoke:TemplUtl|faculty|}}|abgerufen|Abgerufen}} {{#switch: {{#invoke:Str|len| {{#invoke:DateTime|format| 2022-07-10 |ISO|noerror=1}} }}
|4=im Jahr
|7=im
|10=am
|#default={{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, abruf=2022-07-10|class=Zitationswartung}} }} {{#invoke:DateTime|format|2022-07-10|T._Monat JJJJ}}
| {{#invoke:TemplUtl|failure|1=Vorlage:Internetquelle | abruf=2026-MM-TT ist Pflichtparameter}} }}{{#if:{{#ifeq:en|de||{{#if:en|1}}}}|{{#if:terraspace.co.uk{{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| (
| {{#if: | | (}}
}}{{#ifeq:{{#if:en|en|de}}|de||
{{#invoke:Multilingual|format|en|slang=!|split=[%s,]+|shift=m|separator=, }}}}{{#if: |{{#ifeq:{{#if:en|en|de}}|de||, }}{{{kommentar}}}}})}}{{#if: {{#if: 2022-07-10 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}} }}en|{{#if: |: {{
#if:
| „{{
#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| Vorlage:Str trim
| {{#invoke:Vorlage:lang|flat}}
}}“
| {{#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| „Vorlage:Str trim“
| {{#invoke:Text|quote
|1={{#if:
| {{#invoke:Vorlage:lang|flat}}
| {{#invoke:Vorlage:lang|flat}} }}
|2={{#if: {{#invoke:TemplUtl|faculty|}}|de-CH|de}}
|3=1}} }}
}}{{#if:
| (<templatestyles src="Person/styles.css" />{{#if: | : }}{{#if: | , deutsch: „“ }})
| {{#if:
| ({{#if: | , deutsch: „“ }})
| {{#if: | (deutsch: „“) }}
}}
}}{{#if: {{{zitat}}}
| {{#if:
| {{#if: {{{zitat}}}
| Vorlage:": Text= und 1= gleichzeitig, bzw. Pipe zu viel }} }}
| Vorlage:": Text= fehlt }}{{#if: | {{#if: {{#invoke:Text|unstrip|{{{ref}}}}}
| Vorlage:": Ungültiger Wert: ref=
| {{{ref}}} }}
}}|.{{#if:{{#invoke:TemplUtl|faculty|}}|{{#if:||{{#ifeq: | JaKeinHinweis |{{#switch:
|0|=Vorlage:Toter Link/Core{{#if: https://www.terraspace.co.uk/uasm.html | {{#if: | [3] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://www.terraspace.co.uk/uasm.html | {{#if:{{#invoke:URLutil|isWebURL|https://www.terraspace.co.uk/uasm.html}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://www.terraspace.co.uk/uasm.html Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://www.terraspace.co.uk/uasm.html | {{#if:{{#invoke:URLutil|isWebURL|https://www.terraspace.co.uk/uasm.html}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}[https://www.terraspace.co.uk/uasm.html }}|{{#switch: |0|=Vorlage:Toter Link/Core{{#if: https://www.terraspace.co.uk/uasm.html | {{#if: | [4] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://www.terraspace.co.uk/uasm.html | {{#if:{{#invoke:URLutil|isWebURL|https://www.terraspace.co.uk/uasm.html}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://www.terraspace.co.uk/uasm.html Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://www.terraspace.co.uk/uasm.html | {{#if:{{#invoke:URLutil|isWebURL|https://www.terraspace.co.uk/uasm.html}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}[https://www.terraspace.co.uk/uasm.html }} }}}}}}}}}}{{#if:| {{#invoke:Vorlage:Internetquelle|archivBot|stamp={{{archiv-bot}}}|text={{#if:|Vorlage:Webarchiv/archiv-bot}}
}}}}{{#invoke:TemplatePar|check |all= url= titel= |opt= autor= hrsg= format= sprache= titelerg= werk= seiten= datum= abruf= zugriff= abruf-verborgen= archiv-url= archiv-datum= archiv-bot= kommentar= zitat= AT= CH= offline= |cat= {{#ifeq: 0 | 0 | Wikipedia:Vorlagenfehler/Vorlage:Internetquelle}} |template= Vorlage:Internetquelle |format=0 |preview=1 }}</ref> Außerdem gibt es noch den Netwide Assembler und Flat assembler mit eigner Syntax.
In der aktuellen Version 14.0 werden folgende Befehlssätze unterstützt: x86-Architektur, x87-fpu, MMX, 3DNow, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, SSE4.A, VMX, AVX, AVX2, AES-NI, CVT16, FMA3 und FMA4. Ab der Version 8.0 gibt es zwei Ausgaben unter derselben Versionsnummer, eine für die x86-32-Architektur und eine für die x86-64-Architektur.
Durch Microsofts Freigabe und Veröffentlichung des Quellcodes von MS-DOS 4.0 am 25. April 2024 ist MASM 5.10 mitsamt dem Microsoft-C-Compiler (Version 5.10), dessen Linker LINK.EXE (Version 3.65) und Build-Management-Tool NMAKE.EXE (Version 1.00.05), sowie der dazugehörigen C-Bibliothek als Binärcode öffentlich auf GitHub verfügbar.<ref>{{#if:|{{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}| |}}}}{{#if:Scott Hanselman, Jeff Wilcox|Scott Hanselman, Jeff Wilcox: }}{{#if:|{{#if:Open sourcing MS-DOS 4.0|[{{#invoke:Vorlage:Internetquelle|archivURL|1={{#invoke:URLutil|getNormalized|1={{{archiv-url}}}}}}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=Open sourcing MS-DOS 4.0}}]{{#if:| ({{{format}}})}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}|{{#if:https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/%7C{{#if:{{#invoke:TemplUtl%7Cfaculty%7C}}%7C{{#invoke:Vorlage:Internetquelle%7CTitelFormat%7Ctitel={{#invoke:WLink%7CgetEscapedTitle%7C1=Open sourcing MS-DOS 4.0}}}}|[{{#invoke:URLutil|getNormalized|1=https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel={{#invoke:WLink|getEscapedTitle|1=Open sourcing MS-DOS 4.0}}}}]}}{{#if:| ({{{format}}}{{#if:opensource.microsoft.comMicrosoft2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| )
| {{#if:{{#ifeq:en|de||{{#if:en|1}}}}| ;
| )}}}}}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}}}{{#if:https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/%7C{{#if:{{#invoke:URLutil%7CisResourceURL%7C1=https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}}%7C%7C}}}}{{#if:Open sourcing MS-DOS 4.0|{{#if:{{#invoke:WLink|isValidLinktext|1=Open sourcing MS-DOS 4.0|lines=0}}||}}}}{{#if: opensource.microsoft.com| In: {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=opensource.microsoft.com}}}}{{#if: Microsoft| Microsoft{{#if: 2024-04-25|,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: 2024-04-25| {{#if:{{#invoke:DateTime|format|2024-04-25|noerror=1}}
|{{#invoke:DateTime|format|2024-04-25|T._Monat JJJJ}}
|{{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, datum=2024-04-25|class=Zitationswartung}} }}{{#if: |,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | S. {{{seiten}}}{{#if: |,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: {{#invoke:TemplUtl|faculty|}}| {{#if:2024-04-25Microsoft|{{#if:|archiviert|ehemals}}|{{#if:|Archiviert|Ehemals}}}} {{#if:|vom|im}} Vorlage:Referrer{{#if:{{#invoke:TemplUtl|faculty|}}| (nicht mehr online verfügbar)}}{{#if: | am {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}|{{{archiv-datum}}}{{#if:320718||(?)}}}}}}{{#if: 2024-05-29|;}}}}{{#if: 2024-05-29| {{#if:2024-04-25Microsoft{{#invoke:TemplUtl|faculty|}}|abgerufen|Abgerufen}} {{#switch: {{#invoke:Str|len| {{#invoke:DateTime|format| 2024-05-29 |ISO|noerror=1}} }}
|4=im Jahr
|7=im
|10=am
|#default={{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, abruf=2024-05-29|class=Zitationswartung}} }} {{#invoke:DateTime|format|2024-05-29|T._Monat JJJJ}}
| {{#invoke:TemplUtl|failure|1=Vorlage:Internetquelle | abruf=2026-MM-TT ist Pflichtparameter}} }}{{#if:{{#ifeq:en|de||{{#if:en|1}}}}|{{#if:opensource.microsoft.comMicrosoft2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| (
| {{#if: | | (}}
}}{{#ifeq:{{#if:en|en|de}}|de||
{{#invoke:Multilingual|format|en|slang=!|split=[%s,]+|shift=m|separator=, }}}}{{#if: |{{#ifeq:{{#if:en|en|de}}|de||, }}{{{kommentar}}}}})}}{{#if: 2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}} }}en|{{#if: |: {{
#if:
| „{{
#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| Vorlage:Str trim
| {{#invoke:Vorlage:lang|flat}}
}}“
| {{#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| „Vorlage:Str trim“
| {{#invoke:Text|quote
|1={{#if:
| {{#invoke:Vorlage:lang|flat}}
| {{#invoke:Vorlage:lang|flat}} }}
|2={{#if: {{#invoke:TemplUtl|faculty|}}|de-CH|de}}
|3=1}} }}
}}{{#if:
| (<templatestyles src="Person/styles.css" />{{#if: | : }}{{#if: | , deutsch: „“ }})
| {{#if:
| ({{#if: | , deutsch: „“ }})
| {{#if: | (deutsch: „“) }}
}}
}}{{#if: {{{zitat}}}
| {{#if:
| {{#if: {{{zitat}}}
| Vorlage:": Text= und 1= gleichzeitig, bzw. Pipe zu viel }} }}
| Vorlage:": Text= fehlt }}{{#if: | {{#if: {{#invoke:Text|unstrip|{{{ref}}}}}
| Vorlage:": Ungültiger Wert: ref=
| {{{ref}}} }}
}}|.{{#if:{{#invoke:TemplUtl|faculty|}}|{{#if:||{{#ifeq: | JaKeinHinweis |{{#switch:
|0|=Vorlage:Toter Link/Core{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if: | [5] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if:{{#invoke:URLutil|isWebURL|https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if:{{#invoke:URLutil|isWebURL|https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}[https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ }}|{{#switch: |0|=Vorlage:Toter Link/Core{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if: | [6] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if:{{#invoke:URLutil|isWebURL|https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ | {{#if:{{#invoke:URLutil|isWebURL|https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}[https://opensource.microsoft.com/blog/2024/04/25/open-sourcing-ms-dos-4-0/ }} }}}}}}}}}}{{#if:| {{#invoke:Vorlage:Internetquelle|archivBot|stamp={{{archiv-bot}}}|text={{#if:|Vorlage:Webarchiv/archiv-bot}}
}}}}{{#invoke:TemplatePar|check |all= url= titel= |opt= autor= hrsg= format= sprache= titelerg= werk= seiten= datum= abruf= zugriff= abruf-verborgen= archiv-url= archiv-datum= archiv-bot= kommentar= zitat= AT= CH= offline= |cat= {{#ifeq: 0 | 0 | Wikipedia:Vorlagenfehler/Vorlage:Internetquelle}} |template= Vorlage:Internetquelle |format=0 |preview=1 }}</ref><ref>{{#if:|{{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}| |}}}}{{#if:|{{{autor}}}: }}{{#if:|{{#if:MS-DOS > v4.0 > src > TOOLS|[{{#invoke:Vorlage:Internetquelle|archivURL|1={{#invoke:URLutil|getNormalized|1={{{archiv-url}}}}}}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=MS-DOS > v4.0 > src > TOOLS}}]{{#if:| ({{{format}}})}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}|{{#if:https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS%7C{{#if:{{#invoke:TemplUtl%7Cfaculty%7C}}%7C{{#invoke:Vorlage:Internetquelle%7CTitelFormat%7Ctitel={{#invoke:WLink%7CgetEscapedTitle%7C1=MS-DOS > v4.0 > src > TOOLS}}}}|[{{#invoke:URLutil|getNormalized|1=https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}} {{#invoke:Vorlage:Internetquelle|TitelFormat|titel={{#invoke:WLink|getEscapedTitle|1=MS-DOS > v4.0 > src > TOOLS}}}}]}}{{#if:| ({{{format}}}{{#if:github.comMicrosoft2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| )
| {{#if:{{#ifeq:en|de||{{#if:en|1}}}}MASM Version 5.10 mitsamt dem Microsoft C Compiler sowie weiteren Tools aber ohne IDE aus der Quellcodeveröffentlichung von MS-DOS 4.0| ;
| )}}}}}}{{#if:| {{{titelerg}}}{{#invoke:Vorlage:Internetquelle|Endpunkt|titel={{{titelerg}}}}}}}}}}}{{#if:https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS%7C{{#if:{{#invoke:URLutil%7CisResourceURL%7C1=https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}}%7C%7C}}}}{{#if:MS-DOS > v4.0 > src > TOOLS|{{#if:{{#invoke:WLink|isValidLinktext|1=MS-DOS > v4.0 > src > TOOLS|lines=0}}||}}}}{{#if: github.com| In: {{#invoke:Vorlage:Internetquelle|TitelFormat|titel=github.com}}}}{{#if: Microsoft| Microsoft{{#if: 2024-04-25|,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: 2024-04-25| {{#if:{{#invoke:DateTime|format|2024-04-25|noerror=1}}
|{{#invoke:DateTime|format|2024-04-25|T._Monat JJJJ}}
|{{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, datum=2024-04-25|class=Zitationswartung}} }}{{#if: |,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: | S. {{{seiten}}}{{#if: |,|{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||,}}}}}}}}{{#if: {{#invoke:TemplUtl|faculty|}}| {{#if:2024-04-25Microsoft|{{#if:|archiviert|ehemals}}|{{#if:|Archiviert|Ehemals}}}} {{#if:|vom|im}} Vorlage:Referrer{{#if:{{#invoke:TemplUtl|faculty|}}| (nicht mehr online verfügbar)}}{{#if: | am {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}|{{{archiv-datum}}}{{#if:320718||(?)}}}}}}{{#if: 2024-05-29|;}}}}{{#if: 2024-05-29| {{#if:2024-04-25Microsoft{{#invoke:TemplUtl|faculty|}}|abgerufen|Abgerufen}} {{#switch: {{#invoke:Str|len| {{#invoke:DateTime|format| 2024-05-29 |ISO|noerror=1}} }}
|4=im Jahr
|7=im
|10=am
|#default={{#invoke:TemplUtl|failure|1=Fehler bei Vorlage:Internetquelle, abruf=2024-05-29|class=Zitationswartung}} }} {{#invoke:DateTime|format|2024-05-29|T._Monat JJJJ}}
| {{#invoke:TemplUtl|failure|1=Vorlage:Internetquelle | abruf=2026-MM-TT ist Pflichtparameter}} }}{{#if:{{#ifeq:en|de||{{#if:en|1}}}}MASM Version 5.10 mitsamt dem Microsoft C Compiler sowie weiteren Tools aber ohne IDE aus der Quellcodeveröffentlichung von MS-DOS 4.0|{{#if:github.comMicrosoft2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}}}}
| (
| {{#if: | | (}}
}}{{#ifeq:{{#if:en|en|de}}|de||
{{#invoke:Multilingual|format|en|slang=!|split=[%s,]+|shift=m|separator=, }}}}{{#if: MASM Version 5.10 mitsamt dem Microsoft C Compiler sowie weiteren Tools aber ohne IDE aus der Quellcodeveröffentlichung von MS-DOS 4.0|{{#ifeq:{{#if:en|en|de}}|de||, }}MASM Version 5.10 mitsamt dem Microsoft C Compiler sowie weiteren Tools aber ohne IDE aus der Quellcodeveröffentlichung von MS-DOS 4.0}})}}{{#if: 2024-04-25{{#if: 2024-05-29 | {{#if:{{#invoke:TemplUtl|faculty|}}||1}} }}enMASM Version 5.10 mitsamt dem Microsoft C Compiler sowie weiteren Tools aber ohne IDE aus der Quellcodeveröffentlichung von MS-DOS 4.0|{{#if: |: {{
#if:
| „{{
#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| Vorlage:Str trim
| {{#invoke:Vorlage:lang|flat}}
}}“
| {{#ifeq: {{#if:{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|{{#if: {{#invoke:templutl|faculty|}}|de-ch|de}}|de}} | de
| „Vorlage:Str trim“
| {{#invoke:Text|quote
|1={{#if:
| {{#invoke:Vorlage:lang|flat}}
| {{#invoke:Vorlage:lang|flat}} }}
|2={{#if: {{#invoke:TemplUtl|faculty|}}|de-CH|de}}
|3=1}} }}
}}{{#if:
| (<templatestyles src="Person/styles.css" />{{#if: | : }}{{#if: | , deutsch: „“ }})
| {{#if:
| ({{#if: | , deutsch: „“ }})
| {{#if: | (deutsch: „“) }}
}}
}}{{#if: {{{zitat}}}
| {{#if:
| {{#if: {{{zitat}}}
| Vorlage:": Text= und 1= gleichzeitig, bzw. Pipe zu viel }} }}
| Vorlage:": Text= fehlt }}{{#if: | {{#if: {{#invoke:Text|unstrip|{{{ref}}}}}
| Vorlage:": Ungültiger Wert: ref=
| {{{ref}}} }}
}}|.{{#if:{{#invoke:TemplUtl|faculty|}}|{{#if:||{{#ifeq: | JaKeinHinweis |{{#switch:
|0|=Vorlage:Toter Link/Core{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if: | [7] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: deadurlausgeblendet | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: deadurl |checked|deadurl|= |#default= {{#if: || }} }}[https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS }}|{{#switch: |0|=Vorlage:Toter Link/Core{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if: | [8] }} (Seite {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. Suche im Internet Archive ){{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }} | (Seite {{#switch:|no|0|=|#default=dauerhaft }}nicht mehr abrufbar{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}.) }}{{#switch: |no|0|= |#default={{#if: || }} }}{{#invoke:TemplatePar|check |opt = inline= url= text= datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}} || {{#if: || }} }} | {{#if: | {{#if: || }} | {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}|#default= https://wiki-de.moshellshocker.dns64.de/index.php?title=Wikipedia:Defekte_Weblinks&dwl=https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS Die nachstehende Seite ist {{#switch:|no|0|=|dauerhaft }}nicht mehr abrufbar]{{#if: | , festgestellt im {{#invoke:DateTime|format||F Y}} }}. (Suche im Internet Archive. ) {{#if: | {{#if: | | Vorlage:Toter Link/archivebot }} }}Vorlage:Toter Link/Core{{#switch: |no|0|= |#default= {{#if: || }} }}{{#invoke:TemplatePar|check |all = inline= url= |opt = datum= date= archivebot= bot= botlauf= fix-attempted= checked= |cat = Wikipedia:Vorlagenfehler/Vorlage:Toter Link |errNS = 0 |template = Vorlage:Toter Link |format = |preview = 1 }}{{#if: https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS | {{#if:{{#invoke:URLutil|isWebURL|https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS}} || {{#if: || }} }} }}{{#if: | {{#if:{{#invoke:DateTime|format||F Y|noerror=1}} || {{#if: || }} }} }}{{#switch: |checked|deadurl|= |#default= {{#if: || }} }}[https://github.com/microsoft/MS-DOS/tree/main/v4.0/src/TOOLS }} }}}}}}}}}}{{#if:| {{#invoke:Vorlage:Internetquelle|archivBot|stamp={{{archiv-bot}}}|text={{#if:|Vorlage:Webarchiv/archiv-bot}}
}}}}{{#invoke:TemplatePar|check |all= url= titel= |opt= autor= hrsg= format= sprache= titelerg= werk= seiten= datum= abruf= zugriff= abruf-verborgen= archiv-url= archiv-datum= archiv-bot= kommentar= zitat= AT= CH= offline= |cat= {{#ifeq: 0 | 0 | Wikipedia:Vorlagenfehler/Vorlage:Internetquelle}} |template= Vorlage:Internetquelle |format=0 |preview=1 }}</ref>
Ausdrücke ähnlich den Hochsprachen
MASM verfügt über Ausdrücke, wie man sie aus C kennt. Diese erleichtern die Programmierung und helfen, den Quelltext übersichtlicher zu halten.
.while/.endw.repeat/.until.break.continue.if .elseif .else .endifinvoke(Funktionsaufruf)
Macros
Eine besonders hervorstechende Eigenschaft von MASM ist, wie der Name schon erahnen lässt, das äußerst mächtige Makrosystem. Mit ihm ist es sowohl möglich, Programmcode zu erstellen als auch Text zu verarbeiten. So ist es z. B. möglich, Konstrukte höherer Programmiersprachen wie die Switch-Anweisung (mehrfache Verzweigung) zu generieren.
Versionen
Der IBM Macro Assembler und der IBM Macro Assembler/2 waren OEM-Versionen des MASM. Obwohl MASM kein kommerzielles Produkt mehr ist, wird es von Microsoft weiterhin unterstützt. Die letzte MASM-Version, die als einzelnes Softwarepaket verkauft wurde, war die Version 6.11.
| MASM Version | Datum | Produkt | Bemerkungen |
|---|---|---|---|
| 1.0 | 1981 | (IBM) | für 8086 |
| 2.0 | 1984 | (Einzelprodukt) | für 8086/8087 |
| 3.0 | 1984 | (Einzelprodukt) | |
| 4.0 | 1985 | (Einzelprodukt) | |
| 5.0 | 1987 | (Einzelprodukt) | |
| 5.1 | 1988 | (Einzelprodukt) | OS/2-Unterstützung |
| 6.0 | 1991 | (Einzelprodukt) | 32-Bit- und OS/2-Unterstützung, mit der integrierten Entwicklungsumgebung Programmer’s WorkBench |
| 6.1 | 1992 | (Einzelprodukt) | |
| 6.11 | 1993 | (Einzelprodukt) | |
| 6.11d | 19.09.1995 | Windows 95 Driver Developer Kit | 6.11d ist die letzte Version für DOS |
| 6.12 | 27.08.1997 | (Update) | Unterstützung für Intel MMX-Instruktionen; ohne DOS-Extender |
| 6.13 | 05.12.1997 | (Update) | Unterstützung für AMD 3DNow-Instruktionen |
| 6.14 | 12.04.1999 | (Update) | Unterstützung für SSE |
| 6.15 | 2000 | Visual C++ 6.0 Processor Pack | Unterstützung für SSE2 |
| 7.0 | 2002 | Visual C++ .NET 2002 | |
| 7.1 | 2003 | Visual C++ .NET 2003 | |
| 8.0 | 2005 | Visual C++ 2005 | ab 8.0 zwei getrennte Versionen: x86-32 (ml.exe) und x86-64 (ml64.exe), SSE3/SSSE3 |
| 9.0 | 2008 | Visual C++ 2008 | SSE4.1/SSE4.2/SSE4.A |
| 10.0 | 2010 | Visual C++ 2010 | AVX/AES |
| 11.0 | 2011 | Visual C++ 2011 | AVX2/FMA/half-precision conversion |
| 12.0 | 2013 | Visual C++ 2013 | |
| 14.0 | 2019 | Visual Studio 2019 |
Beispielprogramme
Beispiel 1
Dieses Hallo-Welt-Programm zeigt ein Dialogfenster mit dem Text "Hello World" an: <syntaxhighlight lang="asm"> .686 .model flat,stdcall option casemap:none
include windows.inc ; MASM32 SDK
include user32.inc ;
include kernel32.inc ;
;
includelib user32.lib ;
includelib kernel32.lib ;
StrA macro text:=<> ;macro
IFNDEF some_cntr ;
some_cntr = 0 ;
ELSE ;
some_cntr = some_cntr + 1 ;
ENDIF ;
;
IFNB <text> ;
.data ;
@CatStr(_stra_,%some_cntr) db text,0 ;
.code ;
% EXITM <OFFSET @CatStr(_stra_,%some_cntr)> ;
ELSE ;
echo string required! ;
EXITM <> ;
ENDIF ;
endm
.code start:
;code
invoke MessageBox,NULL,StrA("Hello World"),StrA("Say hello"),MB_OK ;
invoke ExitProcess,NULL ;
;
end start </syntaxhighlight>
Beispiel 2
Dieses Beispielprogramm zeigt ein Fenster mit dem Text "Hello World!": <syntaxhighlight lang="asm"> include masm32rt.inc ; MASM32 SDK .data
ClassName db "WinClass",0 AppName db "Hello World App",0 Text db "Hello World!",0
.data?
msg MSG <> wc WNDCLASSEX <>
.code start:
mov wc.hInstance,rv(GetModuleHandle,NULL) ; fill WNDCLASSEX-struct mov wc.cbSize,SIZEOF WNDCLASSEX ; mov wc.style,CS_HREDRAW or CS_VREDRAW ; mov wc.lpfnWndProc,OFFSET WndProc ; mov wc.hbrBackground,rv(CreateSolidBrush,0FFFFFFh) ; mov wc.lpszClassName,OFFSET ClassName ; mov wc.hIcon,rv(LoadIcon,NULL,IDI_APPLICATION) ; mov wc.hIconSm,eax ; mov wc.hCursor,rv(LoadCursor,NULL,IDC_ARROW) ;
invoke RegisterClassEx,OFFSET wc
invoke CreateWindowEx,NULL\ ; create window
,OFFSET ClassName\ ;
,OFFSET AppName\ ;
,WS_OVERLAPPEDWINDOW\ ;
,CW_USEDEFAULT,CW_USEDEFAULT\;
,CW_USEDEFAULT,CW_USEDEFAULT\;
,NULL\ ;
,NULL\ ;
,wc.hInstance\ ;
,NULL ;
push eax ; tricky parameter passing ;) invoke ShowWindow,DWORD ptr [esp+4],SW_SHOWNORMAL ; call UpdateWindow ;
.while TRUE ; message loop
invoke GetMessage,OFFSET msg,NULL,0,0 ;
.break .if (!eax) ;
invoke TranslateMessage, OFFSET msg ;
invoke DispatchMessage, OFFSET msg ;
.endw ;
invoke ExitProcess,0 ; exit Program
WndProc proc hWnd:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD ; window call-back function LOCAL ps:PAINTSTRUCT LOCAL rect:RECT
.if uMsg == WM_DESTROY
invoke PostQuitMessage,NULL
.elseif uMsg == WM_PAINT
invoke BeginPaint,hWnd,ADDR ps ; paint text "Hello World!"
invoke GetClientRect,hWnd,ADDR rect ;
invoke DrawText,ps.hdc\ ;
,OFFSET Text\ ;
,SIZEOF Text\ ;
,ADDR rect\ ;
,DT_CENTER or DT_VCENTER or DT_SINGLELINE ;
invoke EndPaint,hWnd,ADDR ps ;
.else
invoke DefWindowProc,hWnd,uMsg,wParam,lParam
ret
.endif
xor eax,eax
ret
WndProc endp end start </syntaxhighlight>
Beispiel 3
Dieses Programm demonstriert einen Algorithmus zur Bestimmung von Zeichenkettenlängen unter Zuhilfenahme von SSE2-Instruktionen: <syntaxhighlight lang="asm"> include masm32rt.inc ; MASM32 SDK .686p ; choose instruction set .mmx ; .xmm ; szLenXmm proto :DWORD
.data
szTextA db "This string is 55 bytes long (without termination-zero)",0
.code
start:
invoke szLenXmm,OFFSET szTextA ; call szLenXmm
invoke MessageBox,0,OFFSET szTextA\
,cat$(chr$("string size = "),udword$(eax))\ ; generate title using macros
,MB_OK
invoke ExitProcess,0 ; exit program
szLenXmm proc lpString:DWORD ; determine string size
mov edx,lpString ; using XMM-instrutions
pxor xmm1,xmm1 ;
xor ecx,ecx ; PS: under extremely rarely
align 16 ; conditions this func. may
@@: movdqu xmm0,OWORD ptr [edx]; cause an access violation
pcmpeqb xmm0,xmm1 ;
pmovmskb eax,xmm0 ;
test eax,eax ;
lea ecx,[ecx+16] ;
lea edx,[edx+16] ;
jz @B ;
@@: lea ecx,[ecx-16] ;
bsf eax,eax ;
.if !ZERO? ;
lea ecx,[eax+ecx] ;
.endif ; str. size returns
mov eax,ecx ; through EAX
ret ;
szLenXmm endp ;
end start </syntaxhighlight>
Weblinks
Einzelnachweise
<references />
{{#ifeq: s | p | | {{#if: 4206485-5186354604 | |
}} }}{{#ifeq:||{{#if: | [[Kategorie:Wikipedia:GND fehlt {{#invoke:Str|left|{{{GNDCheck}}}|7}}]] }}{{#if: | {{#if: | | }} }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#if: | {{#ifeq: 0 | 2 | | }} }}{{#ifeq: s | p | {{#if: 4206485-5 | | {{#if: {{#statements:P227}} | | }} }} }}{{#ifeq: s | p | {{#if: 4206485-5 | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P227}} | | }} }} }} }}{{#ifeq: s | p | {{#if: | | {{#if: {{#statements:P244}} | | }} }} }}{{#ifeq: s | p | {{#if: | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P244}} | | }} }} }} }}{{#ifeq: s | p | {{#if: 186354604 | | {{#if: {{#statements:P214}} | | }} }} }}{{#ifeq: s | p | {{#if: 186354604 | {{#if: {{#invoke:Wikidata|pageId}} | {{#if: {{#statements:P214}} | | }} }} }} }}Vorlage:Wikidata-Registrierung
- Wikipedia:Vorlagenfehler/Parameter:URL
- Wikipedia:Vorlagenfehler/Parameter:Linktext
- Wikipedia:Vorlagenfehler/Parameter:Datum
- Wikipedia:Vorlagenfehler/Vorlage:"
- Wikipedia:Weblink offline fix-attempted
- Wikipedia:Vorlagenfehler/Vorlage:Toter Link
- Wikipedia:Vorlagenfehler/Vorlage:Toter Link/URL fehlt
- Wikipedia:GND fehlt
- Wikipedia:Normdaten-TYP falsch oder fehlend
- Wikipedia:GND in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:GND in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Wikipedia:LCCN in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:LCCN in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Wikipedia:VIAF in Wikipedia fehlt, in Wikidata vorhanden
- Wikipedia:VIAF in Wikipedia vorhanden, fehlt jedoch in Wikidata
- Assembler