76 EPSON S5U1C62000A MANUAL
(S1C60/62 FAMILY ASSEMBLER PACKAGE)
CHAPTER 5: ASSEMBLER
.align pseudo-instruction
Instruction format
.align <Alignment number>
<Alignment number>:
Word alignment in 2n value
• Only decimal, binary and hexadecimal numbers can be described.
• The alignment that can be specified is a 2n value.
• One or more spaces or tabs are necessary between the instruction and the alignment number.
Sample description:
.code
.align 32 ... Sets the location to the next 32-word boundary address.
Function
Specifies location alignment in words of a CODE or BSS section in an assembly source file. The section
with the .align pseudo-instruction can be taken as a loosely absolute section in the sense that its
location is partially defined. This declaration does not allocate any memory space.
Precautions
.align is applicable to any kinds of sections such CODE and BSS.
•When the .align pseudo-instruction appears in a section, a new absolute section starts at that point.
The section type does not change. The .align pseudo-instruction keeps its effect only in that section
until the next section definer (.code or .bss) or the next location definer (.org, .align, .page, or .bank)
appears.
Example: :
.code ... The latest relocatable section definition.
:
.align 32 ... Starts new loosely absolute CODE section from the next 32-word boundary address.
:
.bss ... This section is relocatable not affected by the ".align" pseudo-instruction.
:
.code ... This section is also relocatable not affected by the ".align" pseudo-instruction.
:
If the .align pseudo-instruction is defined immediately after a section definer (.code or .bss), the
section definer does not start a new section. But .align starts a new section with the attribute of the
section definer.
Example:
.code ... This does not start a new CODE section.
.align 32 ... This starts a loosely absolute CODE section.
:
If the .align pseudo-instruction is defined immediately before a section definer (.code or .bss), it does
not start a new section and makes no effect to the following sections.
Example:
.code ... The latest relocatable section definition.
:
.align 32 ... This does not start a new absolute section and makes no effect.
.bss ... The another kind (BSS) of section which is not affected by the
: previous ".align" pseudo-instruction in the CODE section.
.code ... This will be an relocatable CODE section not affected by the
: previous ".align" pseudo-instruction.