通用寄存器和初识汇编
2018-12-12 本文已影响20人
豆瓣奶茶
title: 通用寄存器
date: 2018-12-11
tags:
- 滴水逆向
- 汇编
- 32位通用寄存器
categories:
- 滴水逆向三期视频教程
寄存器
不论如何存储,在计算机中,我们存储的都是0和1。
再熟悉一点计算机的组成,我们就会知道,cpu和硬盘中都可以存储,我们可以理解为cpu和硬盘中都有一些容器。
cpu中比较通用的就是 32位通用寄存器
32位通用寄存器的功能如下

这个需要我们牢牢的记住,但是我们也应该知道两点
- 说是寄存器,其实就是一个容器
- 这里所说的寄存器的主要功能,其实是操作系统给我们的建议功能。就像我们买一个牙刷钢,建议的功能肯定是刷牙。但是你非要用来喝茶,也是没有关系的。
学习汇编
准备开发工具
我们谁用滴水推荐的DTdebug工具。
https://pan.baidu.com/s/1ck1ii_lsV9ZsAs-4FdjLmA
这个是绿色软件,下载解压后直接打开就可以。
注意两点
1.以管理身份运行
-
需要配置一下options
image.png
这两个存储目录分别对应,我们解压后udd和plugin目录。
DTdebug界面
file -> open ,打开一个.exe文件,就可以看到各种汇编代码。

看右边,registers界面,就可以看到我们刚才说的32位通用寄存器中的几个容器。
EIP寄存器

我们可以看到,左边黑色就表示cpu当前执行的位置,右边的EIP中位置和左边的相同,说明EIP中存储的就是当前程序的执行位置。
发送指令
我们在左边的随意一个命令中双击,就会跳出操作指令的窗口。

输入指令后,点击
Assemble
,就会执行相应的指令。
mov指令
汇编指令都是由 操作码+操作数
组成。
mov,* 0x12
就是把十六进制数0x12
移动到寄存器*
中。
汇编学习,往后继续