#05:AND命令とOR命令の役割を理解しよう
COMETⅡの論理演算命令について学習します。まずは、AND命令とOR命令の役割を理解しましょう。
- 16ビットのAND演算
- 演算結果に合わせてサインフラグとゼロフラグが変化する
オーバーフローフラグは「0」になる
- レジスタ間と、レジスタ・メモリ間で演算できるAND AND r1, r2 r1 ← (r1) AND (r2)
r, adr [, x] r ← (r) AND (実効アドレス)
- 16ビットのOR演算
- 演算結果に合わせてサインフラグとゼロフラグが変化する
オーバーフローフラグは「0」になる
- レジスタ間と、レジスタ・メモリ間で演算できるOR OR r1, r2 r1 ← (r1) OR (r2)
r, adr [, x] r ← (r) OR (実効アドレス)
- 組み込み機器で、特定のメモリアドレスに、スイッチやセンサーを接続
- そのオン(1)/オフ(0)を判別したい
- 判別したいビットだけ「1」、残りを「0」にして、ANDで演算する
4ビット目のオン/オフを判別したい ---- ---- ---X ----
AND 0000 0000 0001 0000
------------------------
0000 0000 000X 0000
4ビット目は、そのまま。残りのビットは、すべて「0」になる。
ゼロフラグで分岐する
- 組み込み機器で、特定のメモリアドレスに、LEDや出力装置を接続
- そのビットをオフ(0)に設定したい
- 設定したいビットだけ「0」、残りを「1」にして、ANDで演算する
4ビット目のオン/オフを判別したい XXXX XXXX XXX- XXXX
AND 1111 1111 1110 1111
------------------------
XXXX XXXX XXX0 XXXX
4ビット目は「0」になり、残りのビット「X」はそのまま
- 組み込み機器で、特定のメモリアドレスに、LEDや出力装置を接続
- そのビットをオン(1)に設定したい
- 設定したいビットだけ「1」、残りを「0」にして、ORで演算する
4ビット目のオン/オフを判別したい XXXX XXXX XXX- XXXX
OR 0000 0000 0001 0000
------------------------
XXXX XXXX XXX1 XXXX
4ビット目は「1」になり、残りのビット「X」はそのまま
【5分で覚えるIT基礎の基礎】あなたは論理演算がわかりますか? 第2回 | 日経クロステック(xTECH)
https://xtech.nikkei.com/it/members/ITPro/ITBASIC/20020805/1/
マスク (情報工学) - Wikipedia
https://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%B9%E3%82%AF_(%E6%83%85%E5%A0%B1%E5%B7%A5%E5%AD%A6)
CASLIIアセンブラ & シミュレータ PyCASL2 & PyCOMET2
http://www.image.med.osaka-u.ac.jp/member/nakamoto/pycasl2/index.html
CASL - Wikipedia
https://ja.wikipedia.org/wiki/CASL
アセンブラ言語CASLⅡの仕様
https://www.chiba-fjb.ac.jp/fjb_labo/casl/CASL2spec.html#2-3
システムCOMETⅡの仕様
https://www.chiba-fjb.ac.jp/fjb_labo/casl/COMET2spec.html
CPU - コンピュータの基礎知識 | ++C++; // 未確認飛行 C
https://ufcpp.net/study/computer/CPU.html