C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のビット単位の右シフト演算子


ビット演算子はビットを処理し、ビットごとの演算を実行します。ビット単位の右シフト演算子では、左のオペランドの値は、右のオペランドで指定されたビット数だけ右に移動します。

以下のコードでは、値-

があります。
60 i.e. 0011 1100

右シフト%マイナス;

c = a >> 2;

2回右シフトすると15に変換されます-

15 i.e. 0000 1111

次のコードを実行して、C#でビット単位の右シフト演算子を実装してみてください-

using System;
using System.Collections.Generic;
using System.Text;
namespace Demo {
   class toBinary {
      static void Main(string[] args) {
         int a = 60;    /* 60 = 0011 1100 */
         int b = 0;
         c = a >> 2;    /* 15 = 0000 1111 */
         Console.WriteLine("Value of b is {0}", b);
         Console.ReadLine();
      }
   }
}

  1. Pythonの右シフト(>>)演算子とは何ですか?

    は右シフト演算子と呼ばれます。これはビット演算子です。最初のオペランドとしてオブジェクトのビット単位の表現が必要です。ビットは、第2オペランドで規定されたビット数だけ右にシフトされます。シフトの結果として左に向かう先頭ビットは0に設定されます。 >>> bin(a)     #binary equivalent 0110 0100 '0b1100100' >>> b=a>>2     #binary equivalent 0001 1101 >>> b 25 >>

  2. Pythonのさまざまなビット演算子タイプは何ですか?

    ビット演算子は、オペランドとしてビットを操作します。次のビット演算子はPythonで定義されています- &(ビットごとのAND):両方のビットオペランドが1の場合は1を返します | (ビットごとのOR):2つのビットオペランドの1つが1であっても、1を返します ^(ビット単位のXOR):一方のオペランドが1で、もう一方が0の場合にのみ1を返します 〜(ビット単位の補数):オペランドが0の場合は1を返し、その逆の場合は1を返します <<(ビット単位の左シフト):ビットは左にシフトされ、右端のほとんどのビットは0に設定されます (ビット単位の右シフト):ビットは右にシフトされ、左端のほとん