• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:CASLII)

CASLIIのビットマップ図形縮小に関する意味を教えてください

このQ&Aのポイント
  • CASLIIのビットマップ図形の縮小の例題を解いているのですが、07~09行目で第15ビット目が1であるか調べという意味がわかりません。07行目は何をしているのでしょうか?08.09行目は1行ではなく、なぜ1ビットの判定となるのでしょうか?
  • CASLIIのビットマップ図形の縮小の例題において、07~09行目では第15ビット目が1かどうかを調べています。具体的には、07行目ではGR4の値がGR4自身と論理積をとり、結果をGR4に代入する操作を行っています。08行目ではジャンプ命令を使用して、15ビット目が1の場合にはSKIP先にジャンプします。09行目でも同様にジャンプ命令を使用して、スキップ先にジャンプします。これにより、15ビット目が1である場合には指定された処理を行い、そうでない場合にはスキップします。
  • CASLIIのビットマップ図形の縮小の例題において、07行目では第15ビット目が1であるかどうかを調べるために、GR4の値を自身と論理積をとっています。この結果が0である場合は、15ビット目が1ではないということになります。08.09行目ではジャンプ命令を使用して、15ビット目が1の場合には指定された処理を行い、そうでない場合にはジャンプ先にスキップします。つまり、08.09行目は1ビットの判定を行っているわけではなく、15ビット目が1であるかどうかを調べるための処理です。

質問者が選んだベストアンサー

  • ベストアンサー
  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

記憶で書きますので、裏は御自分でとってくださいね。 > 7~09行目で第15ビット目が1であるか調べという意味がわかりません。 > 07.08.09行目の意味を教えてください。 07 LP2   LD   GR4,GR4 08      JPL   SKIP 09      JZE   SKIP comet の仕様だと x86とは違って、ロードしただけでフラグが動くのでは ありませんでしたっけ? 8,9の2行に分かれているのは単に「ゼロ以上で分岐」の命令がないので、 「プラスで分岐」と「ゼロで分岐」を使っていると。 > 07行目は何をしているのでしょうか?08.09行目は1行ではなく、なぜ > 1ビットの判定となるのでしょうか? どうしてこれで15ビット目がonかどうかの判定ができるかどうかですが、 レジスタ長が16ビットで2の補数を使っているのなら、15ビット目(最上位ビット)が 立っていれば負の数ですから、逆に負の数なら最上位のビットがonであると 判定できます。

ki_c
質問者

お礼

回答ありがとうございます。 2の補数で、サインフラグをみるということですね。 それで何となくわかりました。 ありがとうございました。

関連するQ&A