2012-04-24 7 views
0

アセンブリが初めてです。私はHCS12とAsmideソフトウェアを使用しています。私がプログラムをアセンブルしてダウンロードした後、私は 'g $ 1500'を実行します($ 1500は他のアドレスにすることができます)。その後、端末で何も更新されず、何も入力できません。無限ループに詰まっているようです。HCS12 - 無限ループでプログラムが停止する

別の機会に、私のプログラムは一度完全に走った。私は別のプログラムに行きました。だから、私は最初の完全に働くプログラムに戻りました、そして今、それはどちらも動かないでしょう。

誰でもこの問題を解決する方法を知っていますか?プログラムの

例:

 org $1500 

     ldx #5 

     end 

答えて

0

あなたが適切にあなたのプログラムを終了していません。 ldx命令を実行し、メモリ内のプログラムの後に起こったことを何でも実行し続けます。 endの前にrtsでルーチンを終了し、正常に動作しないかどうかを確認してください。

+0

「rts」を追加しても何も変わりませんでした。 'Rts'はサブルーチン用になっていますが、私のコードには含まれていません。右?とにかく、問題は変わった。私はマイクロコントローラのメモリを調べ、私のプログラムのどれもがダウンロードされていない。それは一度ロードされ、今はナダルです。それはおそらく、それが適切に終了していない理由です。私は次に何をすべきかわからない。私は適切な手順を実行します:アセンブル - >リセット - >ロード - >ダウンロードし、何もメモリにダウンロードされません。 –

+0

環境/ OSの観点から、プログラム*はサブルーチンです。明示的にプログラムを終了する特別な手段がない場合は、rtsを使用してください。 –

+0

コードがメモリに格納されない場合でも、もちろん動作しません。私は移送を手伝うことができないのではないかと心配しています。この宿題ですか?それから、教師に依頼してください。 –

関連する問題