何かを明らかにしようとしている。
算術的、論理的なビット単位のシフトに関しては、次のように理解しています。
<<
両方で同じように動作します>>
シフトは、論理シフトがバイトに常に 0 を埋め込むのに対し、算術シフトはバイトに符号ビットを埋め込むという点で異なります。
Cを使用してこれをどのように区別できますか?
私が理解していることから、実際のオペレーターは同じ<<
です、>>
コマンドの違いは次のとおりです。
int i=1;
printf ("%d\n", i >> 1); // logical shift
int j=1;
printf ("%d\n", j >> 1); // arithmetical shift
私にお知らせください、