|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
题目 CPU几次修改IP,都是在什么时候,IP最后值为多少
MOV AX,BX
SUB AX,AX
JMP AX
MOV AX,BX 假如这条指令为x个字节。
那么这条指令后IP指向的是 x个字节的长度,所以此时IP=x,指向的是下一条指令。(修改的第一次)
SUB AX,AX 此时AX = AX - AX ,如果此条指令为y个字节。
那么这条指令后IP指向的是x+y个字节的长度,所以此时IP= x+y,指向的是下一条指令。(修改的第二次)
这里大家意义最大,我结合大家的作业题写出如下
JUM AX 此时AX = 0, 如果此条指令为z个字节。
那么这条指令IP现在修改了一次,IP=x+y+z,但是没有执行下一条语句而是跳转指令,JUM AX (ax = 0) 指向IP=0的位置。
IP总共修改了4次
第一次MOV AX,BX IP=x
第二次SUB AX,AX IP=x+y
第三次jmp ax 因为有这条指令,已经创建了地址空间,所以IP此时为 x+y+z
第四次jmp ax 因为要执行跳转,ax值为0 所以IP被强制改为0这个地址。
IP最后值为0
|
|