汇编语言基础知识总结(一)

362 阅读2分钟

「这是我参与11月更文挑战的第13天,活动详情查看:2021最后一次更文挑战」。

介绍

汇编是一类编程语言,每种cpu对应一种cpu语言,这些语言语法大同小异,指令集有所不同,

那么这些cpu语言统称为汇编语言,与java,c++,python等高级语言无异, 只不过汇编更加接近硬件,代码执行效率高

二进制>汇编>c>java

所有编程语言都有相应语法,汇编也不例外, 语法是人定的,只是一套公共协议,目的是方便程序员进行程序开发

为什么要学汇编

  • 了解程序的本质, 利于日常开发
  • 从事硬件相关开发工作
  • 进行反编译逆向
  • 装X

常见的cpu架构

  • x86 架构 : PC 端主流 高性能高功耗

  • ARM 架构: 移动端主流 体积小低功耗

  • MIPS 架构: 龙芯3号 国产cpu

不同架构使用的指令集也不一样, X86使用了CISC复杂指令集 ARM采用了RISC精简指令集

RISC可以说是从CISC中取其精华去其糟粕,简化指令功能,让指令的平均执行周期减少,达到提升计算机工作主频的目的,同时引入大量通用寄存器减少不必要的读写过程,提高子程序执行速度,这样一来程序运行时间缩短并且减少了寻址,提高了编译效率,最终达到高性能目的

不同cpu架构所对应的汇编语法大致相同, 只是指令集不同

寄存器

顾名思义, 寄存器可以理解为是寄生在cpu上存放数据的容器, 在计算机当中,用于存放数据的容器有很多,比如内存条,硬盘等等, 那寄存器有什么不一样呢?

  • 寄存器靠近cpu,读写数据速度远大于内存
  • 进行数据的临时存储

当然 cpu内部除了有寄存器之外,还有运算器和控制器, 对于我们程序员来讲,只需要学习寄存器即可