学习嵌入式的第三十九天——ARM——汇编

1、什么是立即数?如何判断某数是否是12位立即数?

立即数是在指令段中,无需存取直接使用的数,是指令的内置常量

判断:由于在32位arm架构中,立即数只占12位,其中高4位为旋转位(实际旋转次数位旋转位值*2),低8位为无符号数,

那么判断标准,一个数可不可以由一个8位数经过偶数次循环右移得到

2、b,bl,bx指令的区别是什么?

b是直接修改pc值进行跳转

bl是将下一条指令的地址保存在lr寄存器后再修改pc值进行跳转

bx是用lr中的值来修改pc值进行跳转

3、ARM内核采用的栈是哪种栈?

满减栈

满:栈顶指针指向的位置有值

减:栈底在高地址处,往低地址处生长

4、CPSR中条件标志位,分别在什么情况下被置位

N:当上一次算术逻辑运算结果的第32位为1时,N置1

Z:当上一次算术逻辑运算结果为0(所有bit位都是0)时,Z置1

C:无符号数,当上一次算术逻辑运算发生进位或者没有借位时置1

V:有符号数,当上一次算术逻辑运算的最高位有溢出时(两个正数相加得负数,两个负数相加得正数)置1

相关推荐
奕鼎竜瑆19 分钟前
无监督学习:聚类与降维
学习·数据挖掘·聚类
听风若依1 小时前
函数栈帧的创建与销毁-重置版
c语言·学习
Wang's Blog2 小时前
Java 项目部署之 Docker工具快速入门: 学习路径与命令速查导引
java·学习·docker
程序猿阿森2 小时前
Warmup 学习率预热详解:为什么训练初期要“先热身再加速”?
深度学习·学习·语言模型
en.en..2 小时前
8086、x86、ARM 结构化详解
arm开发
水饺编程2 小时前
第2章:Linux 基础,pwd 命令
linux·c语言·汇编
lisw052 小时前
人类认知和语言学习中的控制论!
人工智能·学习·数学建模
鱼很腾apoc2 小时前
【MySQL】 第1期 从核心概念到表约束全解析
linux·c语言·数据库·学习·mysql
妖精的羽翼2 小时前
Web3D(Three.js)应用分级 + 学习路线规划(由浅入深,贴合接单 + 求职)
学习·three.js
andrsted3 小时前
练题簿在线免费刷题:Excel、CSV 批量导题与章节整理,把现成表格变成日常题库
学习·微信小程序·小程序·刷题·在线刷题