Panasonic PanaXSeries MN1030 Series User Manual page 169

Panasonic microcomputer user's manual
Table of Contents

Advertisement

Usage example
Below is an example use of the align directive.
***
Loc
Object
00000000
00000000
01
00000001
02
00000002
03
align.asm(6) :Warning 2002: Illegal operand value.
00000008
04
00000009
05
0000000a
06
00000010
07
00000011
08
00000020
09
00000021
0A
In the align 6 directive on line 6, the expression value 6 is not a power of 2, so the assembler will convert
it to align 8.
The series of multiples of 8 is shown below. Numbers in parentheses are hexadecimal.
8(8) 16(10) 24(18) 32(20) 40(28) 48(30) 56(38) 64(40)
The location counter value at the line of align 6 is 0003 (hex.), which is between 0000 and 0008 (hex.).
Therefore the next line will start from location 0008 (hex.).
The same series applies to the align 8 on line 10. The location counter there is 000B (hex.), which is
between 0008 and 0010 (hex.). Therefore the next line will start from location 0010 (hex.).
Similarly, the align 16 on line 13 uses the series 16 (10), 32 (20), 48 (30)... The location counter there
is 0012 (hex.), which is between 0010 and 0020 (hex.). Therefore the next line will start from location
0020 (hex.).
Chapter 9 Writing Machine Language Instructions and Directive Statements
align.lst Page 1
PanaX Series MN1030 Cross Assembler
Line
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Errors:
0 Warnings: 1
Source
_DATA
section
TABLE
dc
dc
dc
align
dc
dc
dc
align
dc
dc
align
dc
dc
(align.asm)
***
,DATA, PUBLIC, 4
0x01
0x02
0x03
6
0x04
0x05
0x06
8
0x07
0x08
16
0x09
0x0a
Writing Directive Statements 157

Advertisement

Table of Contents
loading

Table of Contents