32bitとは - わかりやすく解説 Weblio辞書 (original) (raw)

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: "32ビット"ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2018年10月)

32ビット: 32-bit)は、連続した32個(桁)のビット(4オクテット)であり、バイナリで最大4,294,967,296(4ギビ、約4.3G)までの数を表現できる。

32ビットアーキテクチャ

32ビットに格納できる符号なし整数の範囲は、0 から 4,294,967,295 である。2の補数で表現できる符号付き整数は −2,147,483,648 から 2,147,483,647 を格納できる。したがって、32ビットメモリアドレスのプロセッサは4ギビバイトバイトアドレスメモリを直接アクセスすることができる(アドレス空間が最大4ギビバイトである)。

他のビット数のプロセッサと同様、プロセッサ内部(論理)が32ビットでも、外部(物理)のアドレスバスやデータバスも32ビット幅とは限らない。例えば80386SXでは、プロセッサ内部は32ビットだが、外部アドレスは24ビット幅、外部データバスは16ビット幅である。またPentium Proでは、プロセッサ内部は32ビットだが、外部アドレスバスは36ビット幅、外部データバスは64ビット幅である。またプロセッサ内部においてもSIMD命令などへの対応のために、32ビット以外の構造を持つ場合がある。例えばPentium IIISSE命令のために128ビットのレジスタを持っている(あくまで32ビットデータを4個同時に扱っているだけであり、128ビット処理をしているわけではない)。

32ビットは、32ビットプロセッサが主流であった世代を表す言葉でもある。パーソナルコンピュータで当時の主要なオペレーティングシステム(OS)には、OS/2 2.x、Microsoft Windows NT 3.xなどがある。Windows 9x系は32ビットと16ビットの過渡期に設計されたコンシューマー向けハイブリッドOSであり、32ビットOSでありながら、後方互換性のために16ビットのカーネルコードも搭載していた。

主な32ビットプロセッサ

有名な32ビットプロセッサとしては、Intel 80386Intel 486PentiumシリーズおよびMC68000シリーズがある。MC68000は外部は16ビットであったが、32ビットの汎用レジスタと演算ユニットを持ち、全ての32ビットソフトウェアに対して前方互換性を持っていた。

上記以外の32ビットプロセッサには以下などがある。

類似のプロセッサには以下などがある。

ARMアーキテクチャはv7まで32ビットであったが、2011年に発表されたv8で64ビットに対応した[1]

画像データフォーマット

画像データのピクセルフォーマットにおいて、ピクセルあたり32ビットを割り当てることがよくある。RGBカラーの場合、各チャンネルに8ビットを割り当て、さらに8ビットのアルファチャンネルまたはダミーチャンネルを付加した24ビット(32ビット)トゥルーカラー形式(RGBA/RGBXなど)がよく使われる。アルファブレンドをしない場合でも、ピクセルあたりRGBのみの24ビットとせず、ダミーチャンネルを付加して32ビットとする理由は、32ビットプロセッサなどにおいてメモリアドレッシングの効率がよいからである。ただし、透過情報を持たない画像ファイル形式として保存する場合は、容量節約のためにピクセルあたりRGBのみの24ビットとすることもある。

グレースケール画像の輝度表現などに浮動小数点数を使用することもある。例えば単精度浮動小数点数を利用して、ピクセルあたり32ビットのグレースケール画像またはチャンネルあたり32ビットのカラー画像とすることで、データ量は増加するものの、画像のハイダイナミックレンジ合成などが可能となる[2]TIFF形式で標準的にサポートされているほか、医療用の画像データ通信規格DICOMでも標準化されている。

32ビットファイルフォーマット

32ビットファイルフォーマットは、各データの要素(ワード)が32ビット(4バイト)の、バイナリファイルフォーマットである。

Windows Metafile形式(WMF)は16ビットだったが、のちにEnhanced Metafile形式(EMF)で32ビットに対応した。

VulkanOpenCLにてシェーダープログラムあるいはデバイスカーネルコードの中間表現として使われているSPIR-V(英語版)は、ホストエンディアンの32ビットを1ワードとするバイナリ形式である[3]OpenGLOpenGL ESのようにアプリケーションの実行時に毎回GLSLのソースコード文字列をグラフィックスドライバーに渡してオンラインコンパイルさせるのではなく、事前にオフラインコンパイルして何らかのファイルに保存しておいた中間表現を読み出してドライバーに直接渡す、といったことができる。

脚注

  1. ^ ARMが64ビット対応アーキテクチャ「ARMv8」を発表、サーバー機器向けの展開を本格化 - EDN Japan
  2. ^ Photoshop でのハイダイナミックレンジ(HDR)画像
  3. ^ Vulkan Environment for SPIR-V :: Vulkan Documentation Project

関連項目

CPUテクノロジー
アーキテクチャ ISA: CISC EDGE EPIC MISC(英語版OISC RISC VLIW ZISC(英語版ハーバード・アーキテクチャ ノイマン型 4ビット 8ビット 12ビット 16ビット 18ビット 24ビット 31ビット 32ビット 36ビット 48ビット 60ビット 64ビット 128ビット
並列処理 パイプライン 命令パイプライン イン・オーダー&アウト・オブ・オーダー レジスタ・リネーミング 投機的実行 レベル ビット 命令 スーパースカラー データ タスク スレッド マルチスレッディング 同時マルチスレッディング ハイパースレッディング スーパースレッディング(英語版コア シングルコア マルチコア ホモジニアスマルチコア ヘテロジニアスマルチコア フリンの分類 SISD SIMD MISD MIMD
タイプ マイクロプロセッサ DSP マイクロコントローラ System-on-a-chip ベクトルプロセッサ
コンポーネント 演算装置 Back-side bus マルチプレクサ デマルチプレクサ レジスタ MMU TLB キャッシュ レジスタファイル マイクロコード 制御装置 CPUクロック
電源管理 APM ACPI Dynamic frequency scaling(英語版) Dynamic voltage scaling(英語版) Clock gating(英語版)

外部リンク