(32位汇编 六)内存读写及寻址方式

本文介绍了32位汇编语言中关于内存的内存格式、数据读写及寻址方式。内容包括每个内存单元8位宽度、如何通过不同寻址公式进行数据读写,并详细讲解了5种寻址公式及其应用实例。
摘要由CSDN通过智能技术生成

我们称计算机CPU是32位或者64位,有很多书上说之所以叫32位计算机是因为寄存器的宽度是32位,这样说是不准确的,因为还有很多寄存器是大于32位的。多少位的机器和寄存器的宽度没有关系,和计算机的寻址宽度有关系,所能查找的内存编号的范围。

内存格式

  1. 每一个内存单元的宽度为8位。
  2. [编号]称为地址。
  3. 内存单元:字节 每个字节有个编号,称为内存地址

从指定的内存中写入/读取数据

mov dword ptr ds:[0x0012FF34], 0x12345678
mov eax, dword ptr ds:[0x0012FF34]

dword: 要读/写多少字节(byte == 1字节,word == 2字节,dword == 4字节)
ptr: Point 代表后面是一个指针
ds: 段寄存器
0x0012FF34: 内存编号,必须是32位的(对于32位汇编),前面的0可以省略
注意:地址编号不要随便写,因为内存是有保护的,并不是所有的内存都是可以直接读写(需要特别处理)。做练习时,建议地址编号写成esp的值。

寻址公式

  1. 寻址公式一:[
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值