コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
ゼロページ
」を編集中
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
'''ゼロページ'''([[英語]]:zero page)とは、一部の[[CPU]]において、アドレス空間の開始アドレスがゼロ番地からはじまる一定範囲を特別な領域としていることをいう。 == 概要 == [[MOS6502]]を例にすると、[[インデックスレジスタ]]に0-255の値を指定すると、そのアドレスのゼロページ上のメモリが「256個の仮想的な[[レジスタ]]」として機能し、レジスタを介さずメモリ上で直接演算できるというものである。ゼロページは[[CPU]]の回路規模が小さかった時代に[[レジスタ]]の相対的な不足を補うために考案されたものといえる。 また * ゼロページへのアクセスは「2バイト長で3クロック」 * 非ゼロページへのアクセスは「3バイト長で4クロック」 という高速化が見込める利点もあった。 ゼロページの採用例としては[[PDP-8]]や[[ファミコン]]などに採用されたMOS6502系の256バイトが有名。 どちらも[[汎用レジスタ]]([[アキュムレータ]])が1個しかないため、ゼロページを使う大前提となっている。 == 近代 == ゼロページは超古代のオーパーツで使われた技術であり現在ではほぼ使われていない。 しかし、一部のコンピュータアーキテクチャでは、アドレス空間の先頭が予約されている。 たとえば、[[Intel x86]]では、[[リアルモード]]で実行されている場合に[[割込みテーブル]]の最初の512ワードのアドレス空間が確保される。 また、 [[FreeBSD]]、[[Linux]]、[[Windows]]などでは近代ではゼロページが予約されていて誰も使わない大前提で「[[NULLポインタ]]」としていることが多い。 [[C言語]]でいうとこんな感じである。 #define NULL ((void*)0); == 関連項目 == * [[MOS6502]] * [[MOS6508]] [[category: CPU]]
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
本文の横幅制限を有効化/無効化