关于ARM处理器中“8位位图”的理解分析

本文深入解析ARM处理器中8位位图的概念,指出8位位图必须由一个8位常数循环移位偶数位得到。通过讨论指令格式和编码限制,解释了这种规定的必要性,并举例说明了不合规的位图。此外,还介绍了如何通过循环移位实现特定数值的表示,以及在指令编码中的应用。
摘要由CSDN通过智能技术生成

ARM处理器的汇编语言中,对指令语法格式中的<shifter_operand>的常数表达式有这样的规定:该常数必须对应8位位图,即常数是由一个8位的常数循环移位偶数位得到的。

首先从ARM指令系统的语法格式说起。

一条ARM指令语法格式分为如下几个部分:

<opcode>{<cond>}{S} <Rd>,<Rn>{,<shifter_operand>}

其中,<>内的项是必须的,{}内的项是可选的,如<opcode>是指令助记符,是必须的,而{<cond>}为指令执行条件,是可选的,如果不写则使用默认条件AL(无条件执行)

Opcode   指令助记符,如LDRSTR

Cond       执行条件,如EQNE

        S           是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响

       Rd          目标寄存器

Rn          第一个操作数的寄存器

shifter_operand       第二个操作数

 

其指令编码格式如下:

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值