Article: Q68071
Product(s): Microsoft Macro Assembler
Version(s): 5.1,5.1a
Operating System(s):
Keyword(s):
Last Modified: 04-FEB-2002
-------------------------------------------------------------------------------
The information in this article applies to:
- Microsoft Macro Assembler (MASM), versions 5.1, 5.1a
-------------------------------------------------------------------------------
SYMPTOMS
========
The module below demonstrates a problem with the Microsoft Macro Assembler
(MASM) versions 5.1 and 5.1a. If an EVEN directive is used after an offset of
8000h within a segment, the assembler will try to align the next instruction or
data element on a 4-byte boundary. In other words, more bytes for padding will
be added than are necessary to achieve even alignment.
STATUS
======
Microsoft has confirmed this to be a problem in MASM versions 5.1 and 5.1a. This
problem was corrected in MASM version 6.0.
MORE INFORMATION
================
The following is the assembly listing that is generated for the example below.
Assembly Listing
----------------
Code Generated Source
-------------- ------
F8 clc
90 EVEN
F8 clc
ORG 8000h
F8 clc
87 DB 90 EVEN
F8 clc
Sample Code
-----------
; Assemble options needed: none
_TEXT SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:_TEXT
start:
clc
EVEN
clc
ORG 8000h
clc
EVEN
clc
_TEXT ENDS
END start
Additional query words: 5.10 5.10a buglist5.10 buglist5.10a fixlist6.00
======================================================================
Keywords :
Technology : kbMASMsearch kbAudDeveloper kbMASM510 kbMASM510a
Version : :5.1,5.1a
Solution Type : kbfix
=============================================================================