Chapter 9 Writing Machine Language Instructions and Directive Statements

9.4.2align

Syntax

label

operation

operand

 

align

expression

Default settings

The current location counter value will be inherited.

Functional description

The align directive adjusts the location counter to be a multiple of the value indicated by expression. The expression must be a power of 2 in the range 1 to 215.

When the expression value is 4, the multiples of 4 will be the following series.

4, 8, 12, 16, 20, 24, 28, 32, ...

When the location counter value is 13, the statement after align 4 will have its location counter changed to 16. When the location counter is 23, the statement will have its location counter changed to 24. When the location counter is 30, the statement counter will have its location counter changed to 32.

Thus, the align directive rounds up the current location counter value up to the next greater multiple of the expression value.

Operand coding rules

The attribute of the calculated result of the expression coded in the operand must be abs (absolute). For a discussion of expression attributes, see Chapter 8 “Writing Source Statements” Section 8.7 “Expressions”, 8.7.4 ”Expression Attributes”.

The expression value must be a power of 2 in the range 1 to 215.

2, 4, 8, 16, 32, 64, 128, 256, ...

If the expression value is not a power of 2, the assembler will generate an error and round up to the next greater power of 2. In such a case, if the assembler's r option has been specified, the assembler will generate a relocatable object file even with the error.

When the expression value is between 5 to 7, it can be round up to 8. Also, when the expression value is between 17to 31,it can be round up to 32.

156 Writing Directive Statements

Page 168
Image 168
Panasonic MN1030 user manual Label Operation Operand Align Expression, Current location counter value will be inherited