2つの正数の中で大きい方の数を出力するプログラムなんですが、演算命令(ADD、SUB)、飛び越し命令(JMP、JMZ)、転送命令(LDM、LDC、STR)を用いて、作成できるのでしょうか。かなり考えたのですが、よくわかりません。どんな回答でも結構ですので、宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

どういうアーキテクチャをもつCPUを想定しているのでしょう?


ニーモニックで想像できるものもありますが、各転送命令の機能が
正確にわかりません。

JMZが0のときのジャンプを表していて、それ以外に条件ジャンプが
ないとすると、引き算の結果の正負の判断が直接にはできなさそう
です。AND演算くらいあればなんとかなりますが、それもないとい
うわけですね?

エレガントさを求めないなら、1ずつ引いていって、先に0になった
方が小さいというのでどうですか?私もあえて解は割愛しときます。
    • good
    • 0
この回答へのお礼

とても参考になりました。ありがとうございました。

お礼日時:2001/01/17 08:27

言語はCASLでしょうか?



基本的に二つの正数(仮にAとB)とします。
A-BでマイナスだったらBを出力する用にジャンプし、逆だったらAへという具合にプログラムを組みましょう。

あえて考え方だけ明記しておきます。ロジックは各演算命令と飛び越し命令の意味を確認すれば、コーディング出来ると思います。
    • good
    • 0
この回答へのお礼

とても参考になりました。ありがとうございました。

お礼日時:2001/01/17 08:27

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード


このカテゴリの人気Q&Aランキング

おすすめ情報