左右移位操作符及其工作原理

时间:2013-03-03 17:57:21

标签: c#-4.0

//((大家好! 我是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);

    }
}

1 个答案:

答案 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