如何从这个汇编指令计算物理地址?

How to calculate physical address from this assembly instruction?

以下是英特尔微处理器的寄存器值

CX: FF0A

BX: AB5D

DI: BDEF

DX: 1234

DS:CC20

SP: CD0F

说明:

  1. 添加 [BX+DI], CX

  2. MOV DX, [SP+1652H]

我想知道如何计算上述两条指令的物理地址

对于 1. 添加 [BX+DI], CX 您需要先计算有效地址。

有效寻址=基数+索引+偏移量

那么,物理寻址将是: 物理寻址 = 分段 * 0x10 + 有效寻址

在您的情况下,Base 将是 bx 的值,index 将是 di 的值,offset 将为空。现在自己计算。