2

教授が作成した例に出くわしたことがあり、bsetおよびbclrアセンブリ コマンドの理解に疑問を抱くようになりました。

私がこれを行う場合:

bset BITS,80

2 つの間で AND または OR 操作を実行していますか? 私のリファレンスガイドは、これを行うと言ってbsetいます:

M <= M + mask

+OR または AND 演算子ですか? bclrは同じコマンドですが、マスクの補数で操作を実行します。

4

1 に答える 1

2

ビットの設定とクリアは、それぞれビットごとの OR と AND を意味します。BSET は OR を実行する必要があり、BCLR は実質的に AND を実行する必要があります。

命令セットの設計者がどれほど優れているかに応じて、BCLR は単純に指定したビット ベクトルと AND を実行するか、BCLR はビット ベクトルの補数と AND を実行する可能性があります (私の推測では)。

于 2012-12-12T22:49:25.170 に答える