進数の範囲を計算する方法

簡単に言えば、コンピュータはトランジスタであり、回路基板は、グラフィック画像がレンダリングされているかどうかを電子機器、リモートネットワーク共有、または大きなデータ演算に組み付け信号処理最終的に0と1です。メタデータ情報のストレージと論理計算は、0と1のみであることができるが、物理的には、通電オフトランジスタと同じ培地中で発現の異なるされていないが、低及び高のCPU、ディスクの左方向を充電。0と1の明確な物理的徴候は、ベース2は、キャリー・ルールは、いわゆるバイナリ「二取るとき」「すべてのバイナリA」ボロールールがある、設定されています。

進数の範囲にそれを計算する方法を、トピックに戻りますか?たとえば、Java intデータ型は32であり、次いで発現させることができるint型の範囲はどのくらいですか?

8つの回路を想像し、各回路は、2つの状態の低域と高を持っています。数学的順列は、図8に示すように、すなわち、2 ^ 8、256個の異なる信号を表すことができ、2によって乗算されます。0から255までの間隔を表す仮定の最大数は2 ^ 8-1 = 256-1 = 255、第一減算1は0の数を表すために使用されているので、総数マイナス1を表現することが可能である理由は、最大に等しいです数は、回路32のその後の最大数は(2 ^ 32-1)= 4,294,967,295で表すことができます。通常、32ビットマシンは、それが信号回路の32ビットのワード長を処理することであることを特徴とします。

負それを表現するには?上記回路8、左端の一つは、正または負、正、0、負のために1を示し、このビットは符号が関与しない数値計算によって表されるビットです。8回路、7の実際の値の一部のみ、バイナリ01111111すなわち127で表され、最大値。

あなたも配置組合せ論によれば、種が数値部7が有していることが理解されると考えられて変更することができ、7 2を乗じ、すなわち、2 ^ 7は、信号の128種類を表すことができます。プラス記号の最初のビットは、1ビットまたは0信号の128×2 = 256種類を表現することができます。負128、即ち、0〜127の範囲は、-128 -1に起因127 -128の変化に正と負の点の範囲を示し、正の128を含みます。

バイナリ整数が、最終的に2の補数形式で登場しました。元のコード、抗コードで正の数を補完同じであるが、負補体、抗コードプラス1の結果です。そのような減算が加算器が実現されるように使用することができる、符号ビットはまた、コンピューティングに関与しています。注元のコード、逆の負の符号ビットが、補体は常に1、および補体の元のコードに逆符号変換演算子に元のコードに関与する値の一部のみであること。

戻る元の質問に、Javaはその後、表現することができるint型の範囲はどのくらいです、int型データ型が32であるのですか?

値の範囲の数が、部分2 ^ 31で0又は1の符号ビット数、すなわち、0 31-1 ^ 2までの正の数、負の範囲-2 ^ 31 -1、-2合計を表すことができます。 2 ^ 31 ^ 31-1まで。


参考資料

「非常に効率的なコード:Javaの開発マニュアル」

おすすめ

転載: www.cnblogs.com/yueshutong/p/12011086.html