ARM学习day2-->ARM体系结构

本文详细介绍了ARM体系结构中数据传输指令的格式和用法,包括算术、逻辑、比较和跳转指令。讲解了汇编指令的机器表示,以及立即数的合法性判断。同时,阐述了三级流水线的工作原理,帮助读者深入理解ARM指令执行的过程。

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

目标:

  1. 指令的格式
  2. 指令的作用
  3. 指令的用法
  4. 机器指令的格式
  5. 指令在内存中是如何存储的
  6. 指令的执行过程
  7. 寄存器的变化

指令集:汇编指令集,不同的CPU架构指令也会不同,所以不同CPU架构程序在编译时所使用的编译器也是不一样的,也就是说使用不同的编译器生成的汇编指令是不一样的。

使用的编译器为:交叉编译工具链

------->一个编译器,编译器是在PC机上运行的,使用它编译后的代码又是在板子上运行的

如何理解交叉?(一件事前半部是A-finished,另一部分为B完成)

交易编译环境:在PC机上编辑并编译,在板子上运行

汇编指令:机器指令的助记符,机器指令的文本形式,CPU不认识,需要使用编译器编译成对应的机器指令,然后交给CPU去执行

注意:汇编程序的可移植性比较差,因为不同的CPU架构汇编指令是不一样的,而C的可移植性就比较好,因为C代码可以使用不同的编译器生成不同架构的汇编

伪指令:(本质上不是指令)不是汇编指令,是用来指导编译过程的,编译之后,不会生成对应的机器指令

立即数:类似于C语言中的常量 

例如:0x11  88        汇编中: #0x11   #88

数据传输指令

.text        @告诉编译器一下的代码放在代码段

Mov r0,#1        @r0,1

汇编指令格式:<opcode> {<cond>} {s} <rd> , {rn}, {<operand2>}

<> 是必须要有的

 {}  是可以选择的

opcode:汇编指令         比如:mov

cond:条件编码        moveq

s:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值