于 Power 体系结构的汇编语言,第 2 部分: PowerPC 上加载和存储的艺术

本文从计算机内存的基础概念出发,详细介绍了寻址模式及其重要性。包括主存的地址编号方式、字节的组合使用以及寄存器的长度等内容。文中还提到了立即寻址和寄存器寻址两种不直接访问内存的寻址模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

寻址模式以及寻址模式之所以重要的原因

在开始讨论寻址模式之前,让我们首先来回顾一下计算机内存的概念。您可能已经了解了关于内存和编程的一些事实,但是由于现代编程语言正试图淡化计算机中的一些物理概念,因此复习一下相关内容是很有用的:

主存中的每个位置都使用连续的数字地址 编号,内存位置就使用这个地址来引用。


每个主存位置的长度都是一个字节。


较大的数据类型可以通过简单地将多个字节当作一个单位实现(例如,将两个内存位置放到一起作为一个 16 位的数字)。


寄存器的长度在 32 位平台上是 4 个字节,在 64 位平台上是 8 个字节。


每次可以将 1、2、4 或 8 个字节的内存加载到寄存器中。


非数字数据可以作为数字数据进行存储 —— 惟一的区别在于可以对这些数据执行哪些操作,以及如何使用这些数据。
新接触汇编语言的程序员有时可能会对我们有多少访问内存的方法感到惊奇。这些不同的方法就称为寻址模式。 有些模式逻辑上是等价的,但是用途却不同。它们之所以被视为不同的寻址模式,原因在于它们可能根据处理器采用了不同的实现。

有两种寻址模式实际上根本就不会访问内存。在立即寻址模式 中,要使用的数据是指令的一部分(例如 li 指令就表示 “立即加载”,这是因为要加载的数字就是这条指令本身 的一部分)。在寄存器寻址模式 中,我们也不会访问主存的内容,而是访问寄存器。

。。。。。。

                                                                                                    点击此处查看全文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值