6.2 アセンブリプログラムのセクション

アセンブリプログラムでは、.SECTION制御命令を用いてセクションの開始や属性を、.ORG制御命令を用いてセクションの形式種別を、それぞれ宣言します。

各制御命令の詳細については「10.3 アセンブラ制御命令の記述方法」を参照してください。

アセンブリプログラムのセクション宣言例を示します。

            .SECTION         A,CODE,ALIGN=4     ;(1)
 
START:
            MOV.L            #CONST,R4
            MOV.L            [R4],R5
            ADD              #10,R5,R3
            MOV.L            #100,R4
            MOV.L            #ARRAY,R5
LOOP:
            MOV.L            R3,[R5+]
            SUB              #1,R4
            CMP              #0,R4
            BNE              LOOP
EXIT:
            RTS
 
;
            .SECTION         B,ROMDATA          ;(2)
            .ORG             02000H
            .glb             CONST
CONST:
            .LWORD           05H
;
            .SECTION         C,DATA,ALIGN=4     ;(3)
            .glb             BASE
BASE:
            .blkl            100
            .END

(1)セクション名A、アライメント数4、相対アドレス形式のcodeセクションを宣言しています。

(2)セクション名B、割り付けアドレス2000H、絶対アドレス形式のromdataセクションを宣言しています。

(3)セクション名C、アライメント数4、相対アドレス形式のdataセクションを宣言しています。