Java で指定された数値の実際のビットを反転します。

PHPz
リリース: 2023-09-07 23:41:06
転載
1155 人が閲覧しました

Java で指定された数値の実際のビットを反転します。

負でない整数 n を与えます。目的は、n のビットを反転し、その結果の数値を報告することです。ビットを反転する場合、整数の実際のバイナリ形式が使用され、先頭の 0 は考慮されません。

さまざまな入力と出力の状況を見てみましょう

入力 - 13

出力 - 指定された数値 11 を反転します。実際のビット

(13)<sub>10</sub> = (1101)<sub>2</sub>.
After reversing the bits, we get:
(1011)<sub>2</sub> = (11)<sub>10</sub>.
ログイン後にコピー

説明 -入力数値からバイナリビットを取得し、それを反転して、最後に10進形式に変換し、出力として返されます。

入力 - 18

出力 - 指定された数値 9 の実際の桁を反転します。

(18)<sub>10</sub> = (10010)<sub>2</sub>.
After reversing the bits, we get:
(1001)<sub>2</sub> = (9)<sub>10</sub>.
ログイン後にコピー

説明 -バイナリビットが入力数値から取得され、反転されて、最後に10進形式に変換され、出力として返されます。

次のプログラムで使用するメソッドは次のとおりです

  • メインメソッド内

    • 数値を入力して渡しますメソッドへ reverseBinaryBits(int input)

  • メソッド内

    reverseBinaryBits(int input) Inside

    • 反転したビットを格納するために変数 rev_input を初期化します

    • 入力が 0 より大きくなるまでループを繰り返します (右からトラバースを開始します)

      • Use ビット右シフト演算を使用して n のバイナリ表現の各ビットをビットごとに取得し、ビット左シフト演算を使用してそれらを rev

        # に蓄積します。

  • ##例
class TutorialsPoint{
   public static int reverseBinaryBits(int input){
      int rev_input = 0;
      while (input > 0){
         rev_input <<= 1;
         if ((int) (input & 1) == 1){
            rev_input ^= 1;
         }
         input >>= 1;
      }
      return rev_input;
   }
   public static void main(String[] args){
      int input = 13;
      System.out.println("Reverse actual bits of the given number");
      System.out.println(reverseBinaryBits(input));
   }
}
ログイン後にコピー

出力

上記のコードを実行すると、次の出力が生成されます

ああああ

以上がJava で指定された数値の実際のビットを反転します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!