読者です 読者をやめる 読者になる 読者になる

m68hc11

http://shinh.skr.jp/h/?FizzBuzzAsm_m68hc11

push/pop が psh/pul なんだな。レジスタの名前は命令に含まれてるっぽい。 pshx とか。

ループカウンタインクリメントしてる部分がよくわからない。

0000008e <.LM10>:
  8e:   dc 00           ldd *0 <main>
            8f: R_M68HC11_8 _.d2
  90:   de 00           ldx *0 <main>
            91: R_M68HC11_8 _.d1
  92:   c3 00 01        addd    #1 <main+0x1>
  95:   24 01           bcc 98 <.LM10+0xa>
            95: R_M68HC11_RL_JUMP   *ABS*
  97:   08              inx
  98:   dd 00           std *0 <main>
            99: R_M68HC11_8 _.d2
  9a:   df 00           stx *0 <main>
            9b: R_M68HC11_8 _.d1

ああわかった。 sizeof(int) が 2 だけどレジスタが 8bit なので上下とも load して、 1 を加算して、 bcc でキャリーが無ければ inx を飛ばすことによって繰上がりをやって、また 2 レジスタを store して、って感じか。

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h