汇编基础一日一学习1
来源:互联网 发布:usb加密狗复制软件 编辑:程序博客网 时间:2024/04/30 10:13
寄存器是什么?大致说寄存器是cpu的部件(一般用于信息储存)。也可以说寄存器是我们可以进行指令读写的部件。 我们目前80386的cpu的每个寄存器是4个字节的。也就是32位。(也可以说80386cpu有32条地址线)。8个通用寄存器eax ebx ecx edx esp ebp esi edi 。 也就是我们cpu每次读取内存中二进制数据的时候,每次只能读取32个二进制位的数据。因为我们cpu是通过数据总线去读取的。80386数据总线32根。。
1.lea指令。
此指令是将源操作数(也就是存储单元)的有效地址(也可以叫做偏移地址)传送到目的操作数。。 举例
lea eax, [ebp-4C]
目的操作数 源操作数
这里有两个注意的地方:
(1)源操作数必须是一个存储单元。不能是立即数。
(2)目的操作数必须是8个通用的寄存器。eax ebx ecx edx esp ebp esi edi
讲解:此示例表示的存储单元的有效地址是 ebp-4c 这个结果被传送到eax寄存器中。
课外知识:这个指令一般被用于我们程序中子程序堆栈分配来确定存储单元的有效地址。因为我们局部变量分配内存,我们不可能确定其相应的地址,因为堆栈分配是按照你声明局部变量的大小来分配的。所以我们只能采用lea指令来获取相应内存单元的有效地址并传送到相应的目的操作数中。
小作业:
判断是否正确
1.lea eax,edx
2.lea eax, 50H
3.lea esp,[ebp-30]
0 0
- [学习]汇编基础一日一学习1
- 汇编基础一日一学习1
- [学习]汇编基础一日一学习2
- 汇编基础一日一学习2
- 汇编基础一日一学习3
- 汇编基础一日一学习4
- 汇编基础一日一学习5
- 汇编基础一日一学习6
- 字符串处理相关的指令: MOVSB, MOVSW, MOVSD 汇编基础一日一学习25
- 有符号整数除法指令 IDIV 汇编基础一日一学习33
- 汇编一日一学(1)--Hello World!
- win32汇编基础学习一
- 汇编学习(一)基础扫描
- 汇编一日一学(7)--输入输出字串
- 汇编一日一学(10)--正负数组
- 汇编一日一学(11)--输出十进制
- 我的大学--汇编一日一学
- 汇编学习--汇编基础
- NYOJ 613免费馅饼
- ubuntu 与虚拟机virtualbox中的xp怎么样实现文件共享
- DLL注入技术
- Spring AOP 常用的四种实现方式
- 各种音视频编解码学习详解
- 汇编基础一日一学习1
- openerp数据备份与恢复
- 汇编基础一日一学习2
- ubuntu virtualbox启动USB
- drupal how to install ckfinder.
- 展示广告-广告特征提取
- uva 10651 - Pebble Solitaire
- 汇编基础一日一学习3
- 一段Untiy3d数据加密解密的代码