Microsoft KB Archive/67439

= DOCERR: MASM 5.1 Instructions Operand Size Documented Wrong =

Article ID: 67439

Article Last Modified on 10/16/2003

-

APPLIES TO


 * Microsoft Macro Assembler 5.0
 * Microsoft Macro Assembler 5.1 Standard Edition
 * Microsoft Macro Assembler 5.1a

-



This article was previously published under Q67439



SUMMARY
In the &quot;Microsoft Macro Assembler 5.1 Reference&quot; manual, a number of instructions indicate that their operand size is a mem64 when they should indicate an operand size of mem48. The instructions are documented incorrectly as LGDT, LIDT, LLDT, SGDT, SIDT, and SLDT. These instructions require the FWORD PTR operator and not the QWORD PTR operator. If the QWORD PTR operator is used, the Microsoft Macro Assembler (MASM) will generate the following warning:

warning A4057: illegal size for operand

These instructions are privileged 286 and 386 instructions that are used to load and save the protected mode descriptor table registers. These registers are only 6 bytes long, even though descriptor table entries are normally 8 bytes.

Additional query words: 5.00 5.10 5.10a

Keywords: KB67439

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.