目录
汇编的本质
指令
能够指示处理器执行某种运算的命令称为指令(如加、减、乘 ...) 指令在内存中以机器码(二进制)的方式存在 每一条指令都对应一条汇编 程序是指令的有序集合
指令集
处理器能识别的指令的集合称为指令集 不同架构的处理器指令集不同 指令集是处理器对开发者提供的接口
汇编
每条汇编都会唯一对应一条机器码,且CPU能直接识别和执行即汇编中所有的指令都是CPU能够识别和执行的
汇编中寄存器的使用、栈的分配与使用、程序的调用、参数的传递等都需要自己维护
C语言
每条C语句都要被编译器编译成若干条汇编指令才能被CPU识别和执行即C语句中的指令CPU不一定能直接识别,需要编译器进行“翻译”
C中寄存器的使用、栈的分配与使用、程序的调用、参数的传递等 都是编译器来分配和维护
学习目的
底层开发可能会读/写汇编代码
理解CPU是怎样执行程序的
理解C的本质,用汇编的思想写出高效的C代码
汇编编码
.text @当前为代码段 .global_start @将start定义为全局符号 _start: @汇编的入口
MOV R1,#1 @汇编指令,往寄存器R1中放一个数
MOV R2,#2 @汇编指令
MOV R3,#3 @汇编指令
.end @汇编的结束