x << y
コンピューターは、(int x、y)がyビットのシフトを意味することをどのように認識しますか?シフト部分という意味ではありません。私はそのy
部分を意味します。コンピューターはxを1シフトし、y == 0になるまでyから1を引きますか?そうでない場合、コンピュータはどのようにしてyの値を計算しますか?
と言うとy = 10
、バイナリ表現は0b1010
です。コンピューターは、単純に各ビットを取得1010
して使用することはできませんね。
8より大きいビットサイズでこれを実行しようとしています。値は単純に標準整数の配列として格納されないため、コンテナーは値を表さないため、演算子のオーバーロード<<
が発生>>
し、少し難しくなります。ただし、100ビット数から0にカウントダウンするのはやや非効率的であるため、コンピューターがビット配列をより速く理解できるようにする方法を見つけようとしています。