汇编指令和寄存器

《汇编语言》比较旧的书了,讲的都是实模式下的 8086 cpu

《软件调试》比较新的书

以及分析dump文件的时候的例子。

目的是看懂代码的反汇编,设计到汇编指令,相关的硬件如寄存器存储器等。

有一些寄存器的常用名字还是记住的好,可以快速猜测指令是干嘛的

eax:累加器

ecx:计数器

edi:目的索引寄存器

esi:源索引寄存器

ebp:基址指针

esp:栈顶寄存器

关于中断和异常相关的见另外一篇文章


目录

两个概念:汇编语言和汇编指令

CPU中央处理器

指令和指令集

x86的寻址方式

指令的执行过程:

Intel架构处理器

cpu的模式【软件调试某章节】 

cpu中的寄存器

寄存器常见类型

通用寄存器——AX/EAX,BX/EBX,CX/ECX,DX/EDX,SI/ESI,DI/EDI, SP/ESP,BP/EBP 

段寄存器——CS,DS,SS,ES。

VS中的查看寄存器的值

windbg查看寄存器的值

存储器

RAM 和 ROM

内存——逻辑存储器

内存中字的存储

cpu是如何从内存中读取数据的

一个进程中的栈,代码段、数据段

栈——BP和SS:SP

1.SS:SP——栈空间(高地址 往 低地址 增长)

2.对栈的操作——入栈出栈指令 Push 和 Pop 指令

3.BP

DS——数据段

CS,IP——代码段

装载可执行文件的设置初始的cs和ip:

最简单的转移指令——jmp设置cs和ip

其他寄存器

标志寄存器

在调试器中的标志寄存器

标志寄存器的各个位

cmp指令和大多数条件转移指令

pushf 和 popf

程序计数器PC

指令寄存器IR

常用指令介绍

0)异或指令 xor

1)传送指令 

mov 和 movzx

lea与mov指令

2)运算指令:

add,sub

sbb带借位减法指令

div除法指令

imul乘法指令

2)逻辑(按位)运算指令:

and,or

shl 和shl 移位

4)转移指令(跳转指令)

无条件转移指令jmp

条件转移指令jcxz

循环指令loop

函数调用call和返回ret 

3.rep stos ptr dword es:[edi]

4.rep movs dwords ptr es:[edi],dword ptr [esi]

6.程序返回的汇编指令

7.debug.exe中的一些命令

8.汇编源程序

PS

1.windows查看处理器型号以及几核cpu

2.AT&T汇编格式和Intel汇编格式区别



两个概念:汇编语言和汇编指令

汇编语言

是可以被汇编编译器识别的编译成汇编指令。类似于其他语言,他有一些语法,其是汇编伪指令。《汇编语言》这本书中讲的就是在masm汇编器写汇编源程序。

汇编指令

  • 6
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ivy_0709

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值