1

命令セットに LSL (論理左シフト) があることに気付きました。これは r << 1 (レジスタを 1 だけ左にシフトします) を実行します。任意の数だけ左シフトできるようにしたいです。これをループで行う必要がありますか、それともこれを行う単一の命令がありますか?

1ビットのみをシフトする理由は、キャリーが常にOKであるためだと思いますが、私の場合、8ビットの符号なし数値を最大8ビット左にビットシフトして、符号なし16ビット数値を取得します...だから私は私は大丈夫だと思いますか?

ありがとう、

z。

ps 完全開示: 私は学生ですが、これは課題のほんの一部です。割り当ては、MUL を使用せずに乗算を実装することです。ループで複数の追加を行うことが期待されていると思います...しかし、何か違うことをしたかったのです。だから私はビットシフトで再帰的に実装しています! これは、私のソリューションへの道のりの障害の 1 つにすぎません。

4

0 に答える 0