大家好,我是8086体系结构的新手,并且在Google上找不到很多相关的内容:

在i8086或i8088(即16位,分段地址)上,如果指令在0xffff处使用指令指针(程序计数器),会发生什么?我假设CPU会增加IP,并且在CS寄存器保持不变时变为0x0。

但是,如果发生这种情况,是否有任何标志设置(例如标志寄存器的溢出位?)

谢谢,

有帮助吗?

解决方案

仅由于指令执行而更改架构标志,这是从未提取的结果。像您描述的那样溢出会导致环绕式,但这不会反映在当前IP以外的任何地方。

其他提示

我不确定它是否应该对标志产生任何特殊效果,但应该触发重置。 IP会增加到0000:并且CS将保留为FFFF,我将将CS:IP重置为FFFF:0000,这应该是Bootstrap Loader的开始指令。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top