组原4_指令寻址

目录

1. 数据存放和对齐

2. 指令寻址

3. 数据寻址铺垫知识

4. 数据寻址方式

4.1 立即寻址

4.2 直接寻址

4.3 间接寻址

4.4 寄存器寻址

4.5 寄存器间接寻址

4.6 隐含寻址


 

1. 数据存放和对齐

 

按字节编址,可以有不同的寻址方式  ===> 按字节寻址、按半字寻址、按字寻址;
按字编址,最小取出的单元就是一个字,没办法直接取一个字节出来。若要拆出一个字节的话,需要软件来实现。

存储单元和数据都有自己的高位和低位。 ==> 两种存放方式:大端方式,小端方式   点我

 

不管是大端法还是小端法存储,计算机在内存中存放数据的顺序都是从低地址到高地址,所不同的是首先取低字节的数据存放在低地址还是取高字节数据存放在低地址。

  • 若首先取高字节的数据存放在低地址,则是大端法;【12345678H 中,12 是高字节数据,78 是低字节数据】
  • 若首先取低字节的数据存放在低地址,则是小端法。

 

字节序还是位序
大端法和小端法指的是字节在内存中存储时的排列规则,而不是数据中的位的排列规则。也有以位序排列的机器,但很少见。另外,再次明确一下,大端法或小端法是数据在存储时的表现,而不是在寄存器中参与运算时的表现。

 

机器字长、指令字长、存储字长 三者之间没有固定的大小关系,但必须都是字节的整数倍。
其中,存储字长一般去字节的偶数倍,方便硬件的设计。

 

早期,习惯上会将存储字长和机器字长做成一样,方便两者之间的数据交流。
所以 单字长指令、半字长指令、双字长指令定义是跟机器字长去比,而不是存储字长。
如果三者的长度设计成一样,那么刚好取出一条指令只需一次访存,取出一个数据也是一次访存,可以减少多次访存的时间消耗

 

 

 

 

因为取数据是一行一行取的。所以对齐不对齐影响的是访存次数。

对于4个字节的数据来说,对齐存储的情况下,每一次的起始地址都是自身长度(字节数量)的整数倍。
边界对齐 ==> 数据存放的起始地址(和字地址同),是它字节数量的整数倍。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值