4 ms·
This is true only for the most simple assemblers. In practice, each assembler comes with its own distinct set of features. Microsoft Macro Assembler for exampl
by shadowofneptune 5y ago
This is true only for the most simple assemblers. In practice, each assembler comes with its own distinct set of features.
Microsoft Macro Assembler for example offers:
• Records/structs, bitfields
• Typed labels/pointers. Intel in particular introduced this feature.
• Procedure blocks which allow locally scoped labels within them
• The automatic allocation of local variables onto the stack.
• if/then blocks, for loop blocks
• Memory model directives
• Macros, equates, etc.
Other assemblers like NASM omit some of these features, as introducing versions of these features which are completely compatible with the MASM ones would be difficult. For example, NASM allows MASM-like procedure blocks, but they are not block-scoped. They're just a notation for the programmer.