第十二课_用OD学习第一条汇编指令

前言

学了第十一课,应该记住了那几个32位的通用寄存器了。这篇文章讲第一条汇编指令:mov。会讲到如何下载、安装ODOllyDbg),然后在OD里面练习mov指令,往寄存器中填入数据。

装OD前的准备工作

为了避免大家乱操作影响本地安装的软件,建议大家在虚拟机中练习。装虚拟机,可以参考本id之前写的这两篇文章《VMware12的安装》、《虚拟机VMware15安装图文教程》。建议装VMware15,因为这个可以装win10。操作系统装win10吧,不过装win7XP也没关系,可能还有点好处,后面可能会用到VC++6.0,这些操作系统兼容比较好。至于怎么装系统,可以参考这几篇文章《虚拟机上安装win7操作系统图文教程》《用硬盘重装操作系统图文教程(win10)》《如何下载正版的操作系统》:

下载、安装OD

1、网址:http://www.ollydbg.de/ ,在DownLoad下的最下面。看图就好。当然你也可以到网盘中下载,地址在文末。

2、解压到当前文件夹。

3、运行OLLYDBG.EXE。

4、点是

5、点是

6、然后界面是这样的。

如何使用及简单配置

1、用OD打开一个exe程序。可以点File->Open,或者快捷键F3

2、随便在里面找一个exe程序。记住是exe程序。然后点打开。

3、打开后就会出现这样的界面。

4、如果觉得字体比较小,不是那么好看,可以用下图的流程修改字体。是在OD中右键。

5、这样的字相对好看一些。当然​你也可以设置自己喜欢的字体。

如何在OD上练习

可能有同学看到这样的界面就晕了,不要慌,跟着本id慢慢来,本id都不怕,你怕啥。以后一部分一部分的介绍,慢慢的就会了。并不难。

里面有一个窗口,今天只讲右上角的窗口。这个就是寄存器窗口

看上图箭头所指的,是不是很熟悉,就是上一节课让大家记32位寄存器

再看左上角的窗口,是反汇编窗口,你暂时也不用管是什么,只要知道左边那个变黑的那行,说明exe程序运行到这一行。也不用管为什么?只要知道exe程序运行到这一行就暂停下来了

我们练习汇编指令在左上角这个窗口的第3列。

双击第3列黑色行(即第1列是黑色那行),在弹出的窗口中输入mov EAX,0x11111111注意:中间有逗号,mov后面有一个空格),然后点Assemble按钮。

看我们的指令就写到对应的行中。

如何运行,在键盘中按F8,这是单步运行的快捷键,可以理解为只运行一行。

运行一行后,左边的黑色向下走了一行,我们还可以发现,寄存器窗口中EAX中的内容改变了,变成我们设置的值11111111。可能有人也发现它是红色的,在OD中,红色表示上次操作改变了值。

解说

汇编指令:mov EAX,0x11111111中,mov是操作码,EAX是目标操作数,0x11111111是源操作数。这条指令的意思是把十六进制的0x11111111放到寄存器EAX中。

在OD中数字用十进制时前面要加0x

 

格式:mov + 目标操作数 ,” 源操作数。这条就是汇编中的移动指令,这条指令很重要,计算机中,无非就是把各种数据移来移去。

可能有一个点大家会不习惯,就是源操作数在后,目标操作数在前,好像跟我们正常的习惯相反的。慢慢就会习惯的。

 

之后就是大家练习了,用mov指令向那些寄存器中写入数据,然后按F8单步运行,看看写到寄存器中的结果。

最好不要写到EIP中,其实写也没关系,你可以试着写一下会发生什么。

你也可以试一下写入的数据大于32位的,看看最后的结果是怎么样的。

如果各位在练习的时候不知道程序跑哪里去了,关掉OD,重新来过就好。

关键是练习了。多练吧。本id再写也是废话。

写于2020.3.23 23:07

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值