retプロシージャから戻るための命令です。したがって、基本的には、スタックからEIPレジスタにリターンアドレスをポップします。
lプレフィックスは、プロシージャから遠く離れていることを示すためにここにあります。この場合、命令は最初にスタックからEIPレジスタに値をポップし、次に2番目の値をCSレジスタにポップします。
wこのステップではリアルモードで実行しており、オペランドの幅が16ビットであるため、接尾辞はここにあります。
正確なコードは次のとおりです。
pushw %ds
pushw $6f
lretw
6:
ここ6:では非常に重要です。つまり、これは次のようになります。dsの値をスタックにプッシュし、6ラベルのアドレスをスタックにプッシュしてから、このlretw命令をトリガーします。したがって、基本的には、ラベルのアドレスを6命令ポインタレジスタにロードし、csレジスタの値をレジスタにロードしdsます。したがって、これは、レジスタ値6を変更してラベルで実行を続行するためのトリックにすぎません。cs
http://www.intel.com/design/intarch/manuals/243191.htmをダウンロードする必要があります。これには、各命令の実行内容を詳細に示す擬似コードを含む、すべての命令の正確な詳細が記載されています。