Fork me on GitHub

8086汇编:前言

为什么要学习汇编

我觉得,对于一个合格的、资深的程序员来说,学习汇编和理解汇编是必不可少的。这里的汇编不特指某一平台的汇编,但其实核心内容都一样。

原因如下:

  • 学习汇编帮助你理解高级语言的运行
  • 深度调试时的需要
  • 编译器不总是对的

尤其是 C/C++ 这类的编程语言,有很多坑,而一些书或者人只告诉你不能这样做,但是为什么不能这样做,只有汇编才能告诉你。

还有比如程序优化,只有通过反汇编,你才能确定,程序优化的结果。

以及一些编译器的坑,编译器也是人写的,不能100%正确,那你怎么确定是你的问题还是编译器的问题?只有汇编能救你。

学习汇编的好处

@Skogkatt这个回答 说:

学汇编不是说一定要用这玩艺做多牛鼻的事情, 问题的关键在于, 学透了汇编会使你真正理解计算机

另外一方面, 如上面所说, 在工作中你迟早会在某个阴暗的角落遇到汇编. 不管你承认不承认, 现在的CPU没有直接跑高级语言的, 哪怕是虚拟机也都是类似汇编的指令集.

当遇到崩溃分析, 性能优化甚至编译器抽风等等的时候, 汇编是你最后一根救命稻草.

-------------------------------- 全文完 感谢您的阅读 --------------------------------
「写的那么辛苦,连一块钱都不打赏吗/(ㄒoㄒ)/~~」