目标:
- 指令的格式
- 指令的作用
- 指令的用法
- 机器指令的格式
- 指令在内存中是如何存储的
- 指令的执行过程
- 寄存器的变化
指令集:汇编指令集,不同的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: