私はコンピュータのアーキテクチャをインテルマニュアルから勉強しています。私が理解することは、私たちが与える命令はセグメントセレクタとオフセットからなる論理アドレスであるということです。 基本的にはCS register<<4 + offset
です。 Segment Selector
は、セグメントセレクタのTI
ビットに指定されているようにGDTまたはLDTにマップします。 GDTは、BASE
,LIMIT
およびRPL
を有し、出力はベースアドレスであるSegment Descriptors
からなる。このbase address
+ offset
はlogical address
です。どのセグメントレジスタがデフォルトで使用されていますか?
どのセグメントレジスタ(SS
、DS
など)が異なるメモリ操作に適用されるかを決定するルールは何ですか?例えばどのセグメントがmov eax, [edi]
に使用されるかを決定する
あなたの質問は明確ではありません。私は少し説明できますか? – Rupsingh
基本的には、そのデータセグメント、スタックセグメントがどのようにプロシージャに割り当てられるのかを知りたがっています。 – ashish
これは役立ちますhttp://stackoverflow.com/questions/29785991/can-someone-help-me-with-segmentation-and-8086-intels-マイクロプロセッサ – Rupsingh