Next: , Previous: , Up: Sample usage   [Contents]


2.2 アセンブル結果の確認

casl2の処理途中で行われるアセンブルの結果を表示するには、オプション-aを指定します。 また、ラベルとアドレスの対応表を表示するには、オプション-lを指定します。

次のコマンドではhello.caslの、ラベルとアドレスの対応表と、アセンブル結果と、実行結果が表示されます。 OUTはアセンブラ命令で複数の機械語命令で構成されているため、命令行1行に対して、複数行のコードが生成されます。

$ casl2 -a -l hello.casl

Assemble hello.casl (0)

Label::::
MAIN.LEN ---> #0020
MAIN ---> #0000
MAIN.OBUF ---> #0013

Assemble hello.casl (1)
hello.casl:    1:MAIN    START
hello.casl:    2:        OUT     OBUF,LEN
    #0000   #7001
    #0001   #0000
    #0002   #7002
    #0003   #0000
    #0004   #1210
    #0005   #0013
    #0006   #1220
    #0007   #0020
    #0008   #F000
    #0009   #0002
    #000A   #1210
    #000B   #0021
    #0021   #000A
    #000C   #1220
    #000D   #0022
    #0022   #0001
    #000E   #F000
    #000F   #0002
    #0010   #7120
    #0011   #7110
hello.casl:    3:        RET
    #0012   #8100
hello.casl:    4:OBUF    DC      'Hello, World!'
    #0013   #0048
    #0014   #0065
    #0015   #006C
    #0016   #006C
    #0017   #006F
    #0018   #002C
    #0019   #0020
    #001A   #0057
    #001B   #006F
    #001C   #0072
    #001D   #006C
    #001E   #0064
    #001F   #0021
hello.casl:    5:LEN     DC      13
    #0020   #000D
hello.casl:    6:        END
Hello, World!

addl.caslの、ラベルとアドレスの対応表と、アセンブル結果は、次のようになります。

$ casl2 -a -l addl.casl

Assemble addl.casl (0)

Label::::
MAIN ---> #0000
MAIN.A ---> #0007
MAIN.B ---> #0008
MAIN.C ---> #0009

Assemble addl.casl (1)
addl.casl:    1:;;; ADDL r,adr
addl.casl:    2:MAIN    START
addl.casl:    3:        LD      GR1,A
    #0000   #1010
    #0001   #0007
addl.casl:    4:        ADDL    GR1,B
    #0002   #2210
    #0003   #0008
addl.casl:    5:        ST      GR1,C
    #0004   #1110
    #0005   #0009
addl.casl:    6:        RET
    #0006   #8100
addl.casl:    7:A       DC      3
    #0007   #0003
addl.casl:    8:B       DC      2
    #0008   #0002
addl.casl:    9:C       DS      1
    #0009   #0000
addl.casl:   10:        END

なお、オプション-Aを指定すると、アセンブル結果が表示される時点で処理が終了します。 仮想マシンCOMET IIでのプログラム実行はされません。