执行的顺序结果为: (1)mov ax,6622H (2)jmp 1000:3 (3)mov ax,0000 (4)mov bx,ax (5)jmp bx (6)mov ax,0123H 最后又跳回第三步循环下来
(1)此时告诉编译器去执行段地址为2000H偏移地址为0000H上的指令 ,通过地址加法器得到的物理地址为:20000H;此时就执行
mov ax,6622H 执行后因为数据与寄存器间传递是三个字节的,因此IP加3执行下一条指令
(2)此时的CS = 2000, IP = 0003H,经地址加法器得到物理地址为:20003H;此时执行
jmp 1000:3 此时CS = 1000H; IP = 0003H
(3)此时CS = 1000H; IP = 0003H ;通过地址加法器相加得到物理地址为:10003H,此时执行
mov ax,0000 这里是把0000送到ax寄存器中,CS的值没有变,IP值执行完指令后加3 此时CS=1000H,IP = 0006H
(4)此时CS=1000H,IP = 0006H通过地址加法器相加得到物理地址10006H,此时执行
mov bx,ax 把ax中的值送到bx中,CS值没变,IP值执行完指令后加2(寄存器间传递加2) 此时CS=1000H,IP=0008H
(5)此时把CS=1000H,IP=0008H通过地址加法器相加得到物理地址10008H,此时执行
jmp bx 这里只修改IP的值(不懂得看上面得jmp指令格式),因此CS值不变,IP值变为bx中的值 CS=1000,IP=0000H
(6)此时CS=1000,IP=0000H通过地址加法器相加得到物理地址10000H,此时执行
mov ax,0123H 把0123H的值送入ax寄存器中,执行完该指令后CS不变,IP加3 CS = 1000H,IP= 0003H