【汇编笔记】初识汇编

您所在的位置:网站首页 汇编读写内存 【汇编笔记】初识汇编

【汇编笔记】初识汇编

2024-07-13 12:37| 来源: 网络整理| 查看: 265

汇编语言的由来: CPU是计算机的核心,由于计算机只认识二进制,所以CPU执行的指令是二进制。 我们要想让CPU工作,就得给他提供它认识的指令,这一系列的指令的集合,称之为指令集。 指令集: 不同的体系的CPU使用的是不同的指令集,常见的有intel、AMD的X86结构CPU使用的是X86/X64指令集,ARM结构CPU使用的是ARM指令集。 汇编指令和机器指令的差别在于指令的表示方法上,汇编指令与机器指令是一一对应的。 理解CPU工作方式: CPU整体的工作分为3类:

读取指令指令译码执行单元(计算、读写内存、设置寄存器、跳转)

读取指令、内存读写都需要CPU控制其他硬件,比如:内存、显卡等

指令格式: 指令由操作码和操作数两部分组成。 操作数是指令执行的参与者,分三种 寄存器、内存地址、立即数 例如: MOV EAX,0X123 MOV 操作码,目的操作数,源操作数

寄存器: CPU不仅仅只能进行运行,它还有许多存储器,具有存储功能,可以存储一些diam运行时 的临时信息,他们被称为寄存器。 32位通用寄存器: image.png 4个数据寄存器(EAX、EBX、ECX和EDX) 2个变址和指针寄存器(ESI和EDI) 2个指针寄存器(ESP和EBP) 打开OD工具 随便打开一个exe文件 查看右则寄存器窗口 image.png EIP 表示程序该执行哪一行 对应左侧被标记的地址 image.png 操作八个通用寄存器 双击地址后的汇编代码 编辑 image.png 修改后 点击步过按钮 或 按F8执行 image.png image.png 寄存器的值被修改 被标记的地址进入下一行 EIP同步

内存读写

其他寄存器 image.png image.png 只有AX、CX、DC、BX相当于32位的砍一半 再砍一半分为8位的 前一半AH、后一半AL 演示: 初始值 image.png 后半变成5555 image.png 5555的前一半变成22 image.png 5555的后一半变成33 image.png 注意编辑时取消保持大小复选框 image.png

取寄存器的值 image.png image.png

内存大小 BYTE 一字节 WORD 两字节 DWORD四字节 读内存地址的值给寄存器 image.png 生成的汇编 image.png PTR表示数据段 执行结果(右下角可看到内存地址的数值) image.png 读取两个字节 image.png image.png 写内存 演示 image.png 不能全部都是内存地址 image.png 直接插入数值 演示 image.png image.png image.png



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3