Microsoft KB Archive/38935

From BetaArchive Wiki
Knowledge Base

Expressions in Definitions Changed for MASM 5.10

Article ID: 38935

Article Last Modified on 10/17/2003


  • Microsoft Macro Assembler 5.1 Standard Edition

This article was previously published under Q38935


In all versions of Microsoft Macro Assembler earlier than version 5.1, you could not have an expression with a larger than 16-bits in a definition. This has been changed in version 5.1.


In all versions of MASM before version 5.1, you could use constants of greater than 16 bits; however, you could not use an arithmetic expression to obtain a number larger than 16 bits.

The following is an example:

   DD 86400     <-  correct.
   DD 60*60*24  <-  incorrect. This would be truncated at the
                               16-bit value.

This feature has been implemented in version 5.1 so that both of the above declarations will yield the same answer.

Additional query words: kbinf 5.10

Keywords: KB38935