コンピュータは(int x、y)x << y
がyビットのシフトを意味することをどのように知っていますか?私はシフト部分を意味しません。私はy
部分を意味します。コンピュータはxを1だけシフトし、y == 0になるまでyから1を減算しますか?コンピュータがyの値をどのように把握していないのか?ビットを値に変換する
y = 10
の場合、バイナリ表現は0b1010
です。 コンピュータは単に1010
の各ビットを取ってそれを使用することはできません。値は、単に標準の整数の配列として格納されていないので、私は少しのために、これにしようとしている
は、容器はとても<<
と>>
は少し困難である演算子をオーバーロード、値を表していない8よりも大きいサイズ。 しかし、100ビットの数値から0へのカウントダウンはやや非効率的なので、コンピュータにビット配列をより速く理解させる方法を見つけようとしています。
ALUの内部構造によって異なります。いくつかの非常に醜い、理解不能な、複雑なビット・バイディング回路を、何らかの形でアルゴリズムの複雑さを削減しました。 – delnan
これはハードウェアの質問のように聞こえますが、C++の質問 –