私は組み立てを学び始めました。私はこれらの線に出くわしました。
;*************************************************;
; Second Stage Loader Entry Point
;************************************************;
main:
cli ; clear interrupts
push cs ; Insure DS=CS
pop ds
ここでコードの2行目で、コードセグメントはスタックにプッシュされます(私はこれだと思います)。私はそれを多くのコードで見ました。なぜこれを行う必要があり、DS = CSをどのように保証するのですか?3行目でDSがスタックから飛び出します(私はこれだと思います)。なぜそれが行われるのですか?スタックから飛び出しているということは、以前はスタックにプッシュされていたことを意味します。そのためのコードはありません。誰かが私にこれをすべて説明できますか?前もって感謝します。