操作数指示符

操作数指示符

指令通常由操作码(例如movb(传送字节))与操作数组成的

  • 操作数指示出一个操作中要使用的源数据的,以及放置结果的目的位置
  • 源数据值可以以常数的形式给出,或是从寄存器或是内存之中读出。

操作符分为三类:

  1. 立即数
  2. 寄存器
  3. 内存引用

立即数:

  • 书写方法是‘$’之后+c语言可以表示的整数
  • 立即数表示一个常数

寄存器:

  • 表示某个寄存器的内容
  • 在以下用ra来表示任意寄存器a
  • 用R[ra]表示其代表的数值
  • 将一个个寄存器想象成一串数组R,R[ra] 就代表具体 寄存器储存具体的值

内存引用

  • 将内存想像成为一个连续的数组,当我们知道地址add时,便可以访问具体的值Mb[add],b代表从add开始的b个字节(因为内存是一个空间)
  • 内存寻址可以分为计算地址与寻找地址对应的值两部分

注意,ra是寄存器,代表其储存的值
而(ra)是引用,寄存器储存 的值是地址,其值是地址指向的值

操作数格式

格式操作数值
$ImmImm
raR[ra]
ImmM[Imm]
(ra)M[R[ra]]
Imm(rb,ri,s)M[Imm+R[rb]+R[ri]*s]

s主要有 1 2 4 8由其数据类型决定

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值