- 締切済み
CASLIIの問題なんですが
CASLIIの問題なんですが DAT番地より格納された5個のデータの0以上の数の個数をGR2に数えるプログラムを作成せよ。 という問題が解けません>< どなたかご教授お願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- vaguechat
- ベストアンサー率85% (47/55)
XOR GR2,GR2 ; CLEAR GR2 LD GR1,=5 ; NUMBER OF UNCHECKED DAT LOOP SUBA GR1,=1 JMI FIN ; JUMP IF ALL DAT WAS CHECKED LD GR0,DAT,GR1 JMI LOOP ADDA GR2,=1 ; COUNTUP GR2 IF GR0 ISN'T NEGATIVE JUMP LOOP FIN NOP
- nda23
- ベストアンサー率54% (777/1415)
ZERO DC 0 ONE DC 1 FIVE DC 5 KAISHI LD GR2,0 LD GR1,0 LOOP LD GR0,DAT,GR1 CMA GR0,ZERO JZE NEXT ADDA GR2,ONE NEXT ADDA GR1,ONE CMA GR1,FIVE JNZ LOOP こんな感じ。もっと上手い方法があるかも? 丸コピすると、説明できずに苦しむので、 解説はしないから、自分で考えてね。
- hanmemomo
- ベストアンサー率35% (205/580)
なつかしい・・・キャッスルかー 久しぶりなので、適当になってしまうかもですが http://www5a.biglobe.ne.jp/~teamcasl/caslkozatop.htm ここを参考にしながら CPAを使いそうなのですが、私の場合プロなのでそうもいかず ANDで行くでしょうね 同じものとANDを取ると値はそのままで、結果として0だったかだけを比較するので、 JZE で分岐させます。 CASLのINCがわからなーぃwww とりあえずジャンプ条件付Z(つまり元が0だった)場合 の残りが、GR2が+1になればOK それ以外はGR2が+1を通らなければOK 後はこれを5回やればOK プログラマの説明ってわかりにくいね ごめんなさい