セキュリティ系の勉強・その他開発メモとか雑談. Twitter, ブログカテゴリ一覧
本ブログはあくまでセキュリティに関する情報共有の一環として作成したものであり,公開されているシステム等に許可なく実行するなど、違法な行為を助長するものではありません.

汎用レジスタ ~x86命令セットの場合

//

レジスタ

CPUに備わっている少量の記憶装置。CPUがデータにアクセスするための最速の手段を提供するらしい。

主な汎用レジスタは以下の通り。



EAX - アキュムレータ

計算処理の遂行と関数からの戻り値の格納に使用。基本的演算はここで行い、乗算除算はここでのみ実行可能。

EDX - データレジスタ

EAXレジスタの拡張で、複雑な計算処理に必要なデータを保持する補助的役割。

ECX - カウントレジスタ

ループ用に使用。数のカウント等もやるらしい。また、ECXは下方向にカウントするらしいので、forで1~10を回す時、10から減らして数えていくらしい。

ESI - ソースインデックス

入力データストリームの位置を保持。読み取り用。

EDI - デスティネーションインデックス

データ処理の結果を格納する位置を指すポインタの役割。書き込み用。

ESP - スタックポインタ

スタックの先頭を指し、関数呼び出しの際には戻りアドレスを指している。

EBP - ベースポインタ

呼び出しスタックの最下部を指す。

EIP

その時、実行されている命令を指す。