using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;namespace p4_5
{
    class Program
    {
        static void Main(string[] args)
        {
            MoveBit(16, 1);
            MoveBit(16, 3);
            MoveBit(16, 5);
            MoveBit(16, 7);
        }
        static void MoveBit(int x,int n)
        {
            Console.Write("{0}<<{1}={2} ", x, n, x << n);
            Console.Write("{0}>>{1}={2}", x, n, x >> n);
            Console.Write("{0}<<{1}={2}", -x, n, -x << n);
            Console.WriteLine("{0}>>{1}={2}", -x, n, -x >> n);
                    }
    }
}这个运行结果为什么会出现0和-1呢,我实在想不明白啊。。它是怎么出来的?