![]() |
nask/guide001 のバックアップ(No.1) |
シフト命令です。シフトって何?という人は、とりあえず簡易な乗算/除算命令だと考えるといいでしょう。 例:SHL EAX,2 -- EAXを左に2ビットシフト。 ASKAによる表記:EAX <<= 2; もしくは EAX *= 4; SHL/SHRは符号無し演算で、SAL/SARは符号付き演算です。 第一オペランドである演算対象は、8/16/32bitのレジスタやメモリを指定できます。 第二オペランドであるシフト回数は、0〜31の定数か、もしくはCLを指定できます。 シフトで追い出されたビットはCF(キャリーフラグ)にコピーされます。0回シフトの場合、CFは不定です。 2回以上のシフトの場合、最後のシフトで追い出されたビットがCFに残ることになります。
コメント | お名前 | NameLink | |