Skip to main content

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

statusステータスレジスタ—フラッグレジスタ、プログラムステータスワード、および条件コードレジスタ&mdashとも呼ばれます。プロセッサ内のフラグビットの集団として定義されます。レジスタはプロセッサ回路であり、メモリの位置によく似ています。つまり、データは書かれて読み取ることができます。メモリの位置とは異なり、マイクロプロセッサが内部で使用するため、ステータスレジスタにはアドレスがあまりありません。8ビットの中央処理ユニット(CPU)では、ステータスレジスタビットは、

が1つに等しく、1つに等しい、または各プロセッサの操作結果によって数値0に等しい方式がクリアされます。プロセッサはビット自体を設定またはクリアすることがありますが、特定のプログラム命令がビットを設定またはクリアする場合もあります。ステータスレジスタの各フラグには、独自の目的があります。以前の操作が7ビット&mdashを作成した場合、キャリーフラグセット。またはネガティブフラグ—オーバーフロー、またはキャリーフラグのアンダーフローを作成しました。ロジック、比較、算術のシフト中に設定します。ゼロフラグのセット最新の操作結果が0の場合、「割り込み無効」と呼ばれるフラグは、割り込みの操作を許可または禁止することにより動作します。この特定のフラグが設定された場合、割り込みは操作できませんが、明確な場合は割り込みが許可されます。10進数フラグと呼ばれる別のフラグにより、プロセッサはより高度なバイナリモードに従って完璧な算術方程式を実行できます。フラグが設定されると、この高度なバイナリモードを使用します。別のレジスタビットは、breakフラグビットです。これは、フォース割り込み(BRK)コマンドが実行されると設定されます。ネガティブフラグは、最新の操作の結果が1に設定された場合に設定されます。ビット5と呼ばれる最後のフラグは無名で、常に1に設定されます。プログラマーは本質的にこの特定のビットに役立ちません。特定の中央プロセッサユニットで使用され、プロセッサの現在の状態が含まれているステータスレジスタの。幅16ビットで、それぞれ32ビットレジスタと64ビットレジスタであるEFLAGSとRFLAGSが引き継がれました。ただし、フラグレジスタには、パリティフラグ、補助フラグ、トラップフラグなど、元の8ビットレジスタとは異なるフラグがありました。