我的问题如下:我有一个程序,它的数据和代码在同一段(代码段)中。我想使用ESI和EDI寄存器来比较几个字符串,但它们在Code Segement中。
ESI和EDI寄存器是DS和ES寄存器段的偏移量,(DS:ESI),(ES:DI),但我想更改数据段和ES段指向的地址,并将其设置为相等到代码段地址。
请帮帮我。谢谢你的回答。能给我一个关于如何做的简短例子吗?
答案 0 :(得分:3)
简单方法:
PUSH CS
PUSH CS
POP DS
POP ES
当然,执行
PUSH DS
PUSH ES
在玩DS和ES之前,
POP ES
POP DS
当您完成并希望恢复细分设置是解决本地问题的简便方法。