レジスターとは何ですか?

コンピュータに特に関心がない場合は、コンピュータのメモリの形式はハード ドライブと RAM だけだと思い込んでしまうことは許されます。コンピューターに興味がある人は、これが事実ではないこと、および CPU が RAM からデータをキャッシュして高速にアクセスできるようにするために使用される一連のキャッシュも CPU にあることを知っているでしょう。これらはすべて宣伝されている機能です。主な理由は、速度や容量が適切なセールス ポイントであり、一般的にパフォーマンス レベルに影響を与えるためです。

ただし、実際にはもう 1 つのメモリ層があります。L1 キャッシュが実際のプロセッシング コアにできるだけ近いと考えるかもしれませんが、メモリ階層には別の上位層があります。これらは CPU レジスタです。これらが実際に宣伝または言及されていない理由は、実際にはまったく変更されていないためです。技術的にはそうかもしれませんが、実際にはレジスタの数とサイズはアーキテクチャの基本です。これは、すべての x86-64 CPU が同じ数のレジスタを持っていることを意味します。それらは競合するポイントではないため、販売されていません。

レジスターは何をしますか?

レジスタは、プロセッサがすぐに利用できるストレージの場所です。レジスタへのアクセスはゼロ レイテンシで即時に行われますが、最近の CPU では L1 キャッシュでさえ、およそ 4 ~ 5 サイクルのレイテンシがあります。このアクセスの即時性は、レジスターのユースケースを示唆しています。レジスタは、CPU によってアクティブに操作されている命令を格納するために使用されます。また、処理するデータ ポイントも格納します。一部のレジスタは汎用であり、他のレジスタは非常に特殊な目的を持っています。特殊目的レジスタの例は、プロセッサがプログラム シーケンス内の位置を追跡するプログラム カウンタです。

多くのレジスタは、ユーザーがアクセスできると考えられています。ただし、これは、コンピューターのユーザーがどの値を入力するかを選択できるという意味ではありません。これは、実行中のソフトウェアがこれらのレジスタにロードされるデータを指定できることを意味します。少数のレジスタは内部レジスタです。つまり、ソフトウェアはそれらをまったくアドレス指定できません。現在実行中の命令を格納する命令レジスタは、内部レジスタの一例です。

改名登録

CPU アーキテクチャでは、レジスタの構成は 1 つしか許可されない場合がありますが、実際にはそれには微妙な違いがあります。最近のすべての CPU は、レジスタの名前変更を利用しています。これは、より多くの物理レジスタを使用して、データをプリロードしたり、別の方法では上書きされていたアウトオブオーダー命令に関連するデータを格納したりする手法です。CPU が余分なレジスターのデータを必要とする時点に達すると、アドレス指定可能になるように名前を変更するだけでなく、以前はアドレス指定可能だったレジスターをアドレス指定不可にします。

レジスタの名前を変更するプロセスは、順不同で実行する場合に非常に役立ちます。たとえば、あるメモリ位置が読み出されてから書き込まれるようにプログラムされていて、命令がその順序で実行された場合、これは問題ありません。ただし、書き込みを最初に実行するように命令の順序を変更すると、読み取り命令は間違った値を取得します。これを防ぐために、読み取られる元の値は未使用のレジスタに格納され、関連する命令が処理されるときに名前が変更されます。

結論

レジスタは、メモリ階層の最上位層です。これらは、CPU が直接アドレス指定できる唯一の部分であり、待ち時間はありません。レジスタは、CPU によってアクティブに実行されているデータを格納するために使用されます。これらは、次に実行される命令を追跡するプログラム カウンターなど、他のデータ ポイントを格納するためにも使用されます。16 個の汎用レジスタと、AVX-512 がサポートされているかどうかに応じて、16 個または 32 個の浮動小数点レジスタを備えた x86-64 アーキテクチャで使用できるレジスタの数は非常に限られています。



Leave a Comment

修正:ChromebookがBluetoothデバイスに接続しない

修正:ChromebookがBluetoothデバイスに接続しない

BluetoothデバイスをChromebookとペアリングできない場合は、Bluetoothオプションを無効にして、ラップトップを再起動します。

ダブルVPNとは何ですか?シングルVPNよりどれだけ優れていますか?

ダブルVPNとは何ですか?シングルVPNよりどれだけ優れていますか?

ダブルVPNは、ネットワークの使用状況を監視している人からユーザーを保護するための優れた解決策です。

Chromebookノートパソコンでスクリーンショットを撮る方法

Chromebookノートパソコンでスクリーンショットを撮る方法

Chromebookノートパソコンでフルスクリーンのスクリーンショットを撮るには、CtrlキーとWindowsキーを同時に押します。

Windows 2016のリモートデスクトップホスト構成はどこにありますか?

Windows 2016のリモートデスクトップホスト構成はどこにありますか?

Microsoft Windows 2016でRDPホスト構成ツールをお探しですか?必要なRDP設定にアクセスするためのソリューションがあります。

MacでZoomでAirPodsが機能しない問題を修正

MacでZoomでAirPodsが機能しない問題を修正

多くのMac所有者は、ZoomでAirPodsを使用しないことに不満を持っていました。このガイドでは、この問題を解決する方法をよく示しています。

Li-Fiとは何ですか?

Li-Fiとは何ですか?

Li-Fiは、Wi-Fiの代替として設計された無線通信技術であり、可視光や近可視光を使用してデータを伝送します。最新のLi-Fi技術について詳しく調べてください。

ASUS ROGRAMDiskでRAMディスクを作成する方法

ASUS ROGRAMDiskでRAMディスクを作成する方法

ASUS ROG RAMDiskを使って、高速なRAMディスクを作成する方法を解説します。

FitbitCharge4を再起動してオンにする方法

FitbitCharge4を再起動してオンにする方法

Fitbit Charge 4を再起動してオンにする方法について詳しく解説します。このフィットネストラッカーの使い方や問題解決方法を学んで、健康管理に役立ててください。

Chromebookにバッテリーセーバーモードはありますか?

Chromebookにバッテリーセーバーモードはありますか?

Chromebookは現在、低電力モード設定を備えていませんが、効果的なバッテリー寿命の延ばし方について紹介します。

AnkerPowerConfスピーカー接続のトラブルシューティング

AnkerPowerConfスピーカー接続のトラブルシューティング

Anker PowerConferenceスピーカーの接続問題を解決するための完全ガイドを紹介します。