上一篇:零基础x64dbg教程大纲
一、前言
看到标题,可能有些人问为什么要学汇编,我们不是来学脱壳破解的么?其实x64dbg中的内存窗口里大部分都是汇编指令,只有掌握了一些汇编基础,才能更好的破解。本课的汇编知识是针对破解的,并未完全是汇编。
二、正文
1、二进制、十进制、十六进制:
二进制:二进制是计算技术中广泛采用的一种数制,由0和1两个数码来表示。进位规则是“逢二进一”,借位规则是“借一当二”。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的,一般在末尾加D表示二进制,如:1110D、0101D等
十进制:十进制数用0、1、2、3.........9 , 这十个数来表示。十进制(计数法)是以10为基础数字系统,满十进一,是我们生活中最常见,也是最常用的。
十六进制:十六进制在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F(或a~f)表示,其中:A~F表示10~15,这些称作十六进制数,十六进制一位可以对应4位二进制数字,在调试器中,内存地址就是以十六进制表示的。
2、通用寄存器:
32位汇编:
在32位汇编中,通用寄存器包括了8个32位的寄存器:EAX、EBX、ECX、EDX、ESP、EBP、EDI及ESI。其中EAX、EBX、ECX、EDX在一般情况下作为通用的数据寄存器,用来暂时存放计算过程中所用到的操作数、结果或其他信息。
如图:
除此之外,这8个寄存器,还有以下作用:
EAX作为累加器用,所以它是算术运算的主要寄存器。在乘除指令中指定用来存放操作数。另外,所有的I/O指令都使用AX或AL与外部设备传送信息。
EBX在计算存储器地址时,可作为基址寄存器使用。
ECX常用来保存计数值,如移位指令、循环指令和串处理指令中用作隐含的计数器。
EDX在作双字长运算时,可把DX和AX组合在一起存放一个双字长数,DX用来存放高16位数据。此外,对某些I/O操作,DX可用来存放I/O的端口地址。
ESI是源变址寄存器
EDI是目的变址寄存器
ESP称为堆栈指针寄存器,用来指出栈顶的偏移地址。
EBP称为基址指针寄存器,在寻址时作为基地址寄存器使用,但它必须与堆栈段寄存器SS联用来确定堆栈段中的存储单元地址
64位汇编:
在破解中32位汇编与64最大不同就体现在寄存器与内存地址上,32位内存的最大值为0xFFFFFFFF,而64位汇编内存最大值是0xFFFFFFFFFFFFFFFF,此外64位汇编中有16个寄存器,是32位汇编的两倍,这些寄存器分别为:RAX、RBX、RBP、RSP、RSI、RDI、R8、R9、R10、R11、R12、R13、R14、R15,用途与32位汇编的寄存器相似,用来暂时存放计算过程中所用到的操作数、结果或其他信息。
如图:
3、标志寄存器(标志位):
用来记录程序中运行结果的状态信息,它们是根据有关指令的运行结果由(CPU)自动设置的。其中记录的状态信息作为后续条跳转指令的控制条件,称为条件码。
如图:
其中,这8个标志位都有不同的作用:
进位标志——CF:记录运算时最高有效位产生的进位值,这里的进位指二进制的无符号数据。
符号标志——SF:记录运算结果的符号。结果为负时为1,否则为0。
零标志——ZF:运算结果为0时ZF位为1,否则为0。
溢出标志——OF:用于判断溢出(注意:溢出这个概念只对于有符号数据而言,就如同进位只对于无符号数据而言)当OF=0时,说明没有溢出;当OF=1时,说明溢出了。
辅助进位标志——AF:记录运算时第3位产生的进位值。
奇偶标志——PF:用来为机器中传送信息时可能产生的代码出错情况提供检验条件。当结果操作数中1的个数为偶数时为1,否则为0。
定时器溢出标志——TF:当cpu在执行完一条指令后,如果检测到TF位的值为1,则产生单步中断,引发中断过程。通过这个位,就可以在debug中对程序进行单步跟踪。
中断允许标志位——IF:中断允许标志位。当IF=1时,cpu在执行完当前指令后响应中断,引发中断过程;当IF=0时,则不响应可屏蔽中断。
方向标志位——DF:当DF=0时,每次操作后,ESI、EDI递增;DF=1时,每次操作后,ESI、EDI递减。
三. 后记
由于这段时间在忙着制作教程配套的破解工具包,所以耽误了很长时间,教程做的比较匆忙,有什么问题可在下面指出。等做完破解工具包时,我会发上来供大家使用。小问题:各个进制的转换方法?请在下面回答,下一节揭晓答案。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月01日
2024年11月01日
- 《欧罗巴》评测:不是所有“禅游”都叫陈星汉
- 苏曼《好久不见》头版限量编号蓝光MQA[低速原抓WAV+CUE]
- 王家卫《繁花》电影原声3CD[低速原抓WAV+CUE]
- 群星《红色经典》限量1:1母盘直刻[低速原抓WAV+CUE]
- 苗子杰.1993-SUN.SHINE【歌林】【WAV+CUE】
- 吕方.1990-不舍得你【华纳】【WAV+CUE】
- 刘若英.2005-一整夜【大熊星】【WAV+CUE】
- 刘锐/王星《牧者影视配乐精选·贰》[FLAC/分轨][271.13MB]
- 林一峰《作业》[320K/MP3][185.25MB]
- 林一峰《作业》[FLAC/分轨][511.47MB]
- 魔兽世界永久60级奶骑天赋怎么点 永久60级奶骑天赋推荐
- 魔兽世界永久60级矮人牧师怎么玩 永久60级矮人牧师玩法指南
- 炉石传说40血卡组代码一览 2024最新全职业40血卡组代码大全
- 《如龙:极》NS实体版确认!35美元 25年3月发货
- 日本离谱忍者游戏将登NS:手柄插进屁股进行对决