C/C++教程

汇编程序设计-18-修改CS和IP寄存器的汇编指令

本文主要是介绍汇编程序设计-18-修改CS和IP寄存器的汇编指令,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

可以通过转移指令来修改CS和IP寄存器的汇编指令
jmp 转移指令,是jump的缩写,也可以叫作跳转指令,使用方法如下:
jmp 段地址:偏移地址
jmp 2AE3:0003 CS = 2AE3H IP = 0003H
2AE3H * 10H + 0003H = 2AE33H–cpu从这里读取指令

使用a命令可以查看下一条执行的命令
在这里插入图片描述
同时a命令也可以修改
在这里插入图片描述
从结果可以看出下一条指令执行 JMP 2AE3:0003,注意观察CS,IP两个寄存器的值。
然后使用t命令,执行。结果如下:
在这里插入图片描述
接下来再来练习一个:
使用a命令可以查看到命令为073F:0105
在这里插入图片描述
但,cpu不会执行073F:0105.
可以使用a 命令,修改2AE3:0003地址中的内容
在这里插入图片描述
然后执行后如下(注意CS、IP的内容):
在这里插入图片描述
jmp 某个寄存器后会改变IP寄存器的内容。

接着讲0003:0B16所指的内容改为:mov ax,2000

改了之后,下一条名利就为如下:
在这里插入图片描述
和我们刚刚设置的相同。
接下来执行,并且继续使用a命令,然后使用jmp ax,结果应该是 IP=2000H
在这里插入图片描述
在这里插入图片描述

这篇关于汇编程序设计-18-修改CS和IP寄存器的汇编指令的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!