《汇编程序设计与计算机体系结构:软件工程师教程》 —1.3.4 为什么要学习汇编语言

华章计算机 发表于 2019/12/03 21:31:18 2019/12/03
【摘要】 本节书摘来自华章计算机《汇编程序设计与计算机体系结构:软件工程师教程》一书中第1章,第1.3.4节,作者是布莱恩·R. 霍尔(Brian R. Hall)[美] 凯文·J.斯隆卡(Kevin J. Slonka),爱飞翔 译。

1.3.4 为什么要学习汇编语言

有一个很关键的问题需要思考,这就是“为什么要学习汇编语言”。既然能用高级语言编写代码,那为什么还要学习底层的细节呢?这可以从多个方面回答:

学习汇编语言可以更好地理解计算机的操作。程序员可以通过汇编这种手段来了解计算机硬件、CPU 组件以及内存布局等细节,并知道计算机体系结构中的这些要素是怎样交互的。

编写汇编代码时,程序员可以频繁使用调试器来排查代码中的错误。它提供了汇编、反汇编等功能,还可以查看寄存器与内存信息,以便在底层单步地执行程序。理解汇编语言与计算机体系结构,能够帮助开发者更好地找到并修复代码中的 bug。

了解汇编语言及计算机操作,能够帮助开发者对高层及底层的实现问题做出更加明智的决策,从而可以充分利用硬件的特征来优化程序的效率。

懂得汇编语言可以令你在完成位操作(bit manipulation)及函数调用(function call,也称为 procedure call,过程调用)等任务时,省去很多抽象环节。

必须非常熟悉汇编才能够进入某些软件开发领域,例如嵌入式设备的编程、设备驱动程序的编程,以及操作系统编程等。

总之,学习汇编语言,可以令你更加全面地理解计算机的操作原理及代码的运行机制,从而能够更好地利用这些知识。此外,对于软件工程师来说,没有什么事情能比直接同处理器对话更令人惬意的了。

      学习指南:参考本章最后的冒泡排序(bubble sort)范例,看看用汇编语言写出来的程序,其文件大小与内存占用量同 C++ 版本的程序有什么区别。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。