//((大家好! 我是C#初学者可以告诉我左右移位操作符的功能及其工作方式w.r.t以下程序。我在某个地方读到它但却混淆了。 谢谢))
using System;
class clc
{
public static void Main() // the Main method
{
int x = 7, y = 2, z, r;
z = x << y ; //left shift operator
r = x >> y; // right shift operator
Console.WriteLine("\n z={3}\tr={4} ",z,r);
}
}
答案 0 :(得分:1)
要了解班次操作,您必须了解二进制数。
让我们以左移为例:
z = 7 << 2;
32位整数 7 是 0000 0000 0000 0000 0000 0000 0000 0111 二进制。您必须从右侧开始向左移动位。从任一端移出的位被丢弃。
将其移动1将导致 0000 0000 0000 0000 0000 0000 0000 1110
再将它再移1次将导致 0000 0000 0000 0000 0000 0000 0001 1100 ,整数表示为28。
阅读这篇好的维基百科文章Binary number