电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>C语言|源代码>汇编语言编程艺术PDF电子书免费下载

汇编语言编程艺术PDF电子书免费下载

2020-06-15 | pdf | 4.30 MB | 次下载 | 5积分

资料介绍

  考虑到这是一本教汇编语言编程的书,是为大学水平的学生写的,由一个似乎知道他在说什么的人写的,你的自然倾向是相信某些东西,如果它出现在印刷品上。刚读了上面的内容,您就开始假设程序集一定很糟糕。亲爱的朋友,这是汇编语言百分之八十的问题。也就是说,人们根据从朋友、导师、文章和书籍中听到的信息,对汇编语言产生了一些非常强烈的误解。哦,汇编语言当然不完美。它确实有许多真正的缺点。然而,这些错误被那些不熟悉汇编语言的人完全夸大了。下一次当有人开始鼓吹汇编语言的坏处时,问“你有多少年的汇编语言编程经验?”当然,如果你不知道,汇编是很难理解的。令人惊讶的是,有多少人愿意只根据他们的对话或读过的文章就公开反对汇编语言。汇编语言用户也使用高级语言(HLLs);汇编语言最直言不讳的反对者很少使用HLLs。你相信谁,一个精通这两种编程语言的专家,或者一个从来没有花时间学习汇编语言并对其能力形成诚实看法的人?在与某人的谈话中,我会不遗余力地解决上述每一个问题。事实上,在这一章的草稿中,我花了大约十页的时间来解释上面每一个陈述的错误。然而,这本书已经够长了,我觉得在这些问题上继续下去所获得的收获是微乎其微的。尽管如此,对上述每一点进行简短的反驳是有必要的,如果不是因为其他原因,只是为了让你不要认为这些言论没有正当的辩护理由。

  组装很难学。你不知道的语言也是。尝试学习(真正的学习)APL、Prolog或Smalltalk。一旦学习了Pascal,学习另一种语言(如C、BASIC、FORTRAN、Modula-2或Ada)就相当容易了,因为这些语言与Pascal非常相似。另一方面,学习像Prolog这样不同的语言并不是那么简单。汇编语言也与Pascal有很大不同。它将比其他类似帕斯卡语的语言更难学习。然而,学习汇编并不比学习第一门编程语言困难多少。汇编很难阅读和理解。当然,如果你不知道的话。大多数发表这一声明的人根本不了解assembly。当然,编写不可能读懂的汇编语言程序是很容易的。编写不可能读取的C、Prolog和APL程序也很容易。有了经验,你会发现汇编和其他语言一样容易阅读。程序集很难调试。与上述论点相同。如果你没有太多调试汇编语言程序的经验,那就很难调试它们。还记得在你的第一个Pascal(或其他HLL)程序中发现bug是什么感觉吗?每当你学习一种新的编程语言时,在获得经验之前,你在调试该语言的程序时都会遇到问题。装配很难维护。C程序很难维护。事实上,程序很难维持一段时间。缺乏经验的汇编语言程序员往往编写难以维护的程序。编写可维护的程序不是一种天赋。这是你通过经验发展出来的技能。汇编语言很难。这句话其实是有道理的。很长一段时间以来,汇编语言程序员完全从头开始编写程序,通常是“重新发明轮子”。HLL程序员,特别是C、Ada和Modula-2程序员,长期以来一直享受着标准库包的好处,该包解决了许多常见的编程问题。另一方面,众所周知,汇编语言程序员每次需要整数输出例程时都会重写它。这本书不采用这种方法。相反,它利用了加州大学河滨分校(University of California,Riverside)为80x86汇编语言程序员提供的UCR标准库所做的一些工作。这些子程序简化了汇编语言,就像C标准库帮助C程序员一样。图书馆的源代码列表可以通过互联网和各种其他通信服务以及配套的软盘以电子方式获得。汇编语言编程很费时。软件工程师估计开发人员只花了大约百分之三十的时间编写问题的解决方案。即使用汇编语言编写一个程序比用HLL语言编写一个程序花了两倍的时间,项目的总完成时间也只有15%的差异。事实上,好的汇编语言程序员不需要两倍的时间来实现汇编语言。使用HLL确实会节省一些时间;但是,节省的时间不足以抵消使用汇编语言的好处。改进的编译器技术消除了对汇编语言的需求。这不是真的,也许永远不会是真的。优化编译器每天都在变得更好。然而,汇编语言程序员通过编写不同于使用HLL的代码来获得更好的性能。如果汇编语言程序员用C语言编写程序,然后手工将它们翻译成汇编语言,那么一个好的C编译器将产生等效的,甚至更好的代码。那些宣称编译器技术的人正在比较他们手工编译的代码和编译器生成的代码。编译器在编译方面比人类做得好得多。再说一遍,你永远不会发现汇编语言程序员在写“带MOV指令的C代码”,毕竟,这就是你使用C编译器的原因。今天,机器太快了,我们不再需要组装了。令人惊讶的是,人们会花很多钱买一台比自己拥有的机器稍快的机器,但他们不会花额外的时间在汇编中编写代码,因此它在同一硬件上运行得更快。关于机器的速度和软件的速度有很多激烈的争论,但有一个事实仍然存在:用户总是想要更高的速度。在任何给定的机器上,最快的程序都将用汇编语言编写。如果你需要更快的速度,你应该使用更好的算法,而不是切换到汇编语言。为什么你不能在汇编语言中使用这个更好的算法呢?如果你已经在使用你能找到的最好的算法,而且它仍然太慢呢?这是一个完全错误的反对汇编语言的论点。

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1电子电路原理第七版PDF电子教材免费下载
  2. 0.00 MB  |  1490次下载  |  免费
  3. 2单片机典型实例介绍
  4. 18.19 MB  |  92次下载  |  1 积分
  5. 3S7-200PLC编程实例详细资料
  6. 1.17 MB  |  27次下载  |  1 积分
  7. 4笔记本电脑主板的元件识别和讲解说明
  8. 4.28 MB  |  18次下载  |  4 积分
  9. 5开关电源原理及各功能电路详解
  10. 0.38 MB  |  10次下载  |  免费
  11. 6基于AT89C2051/4051单片机编程器的实验
  12. 0.11 MB  |  4次下载  |  免费
  13. 7蓝牙设备在嵌入式领域的广泛应用
  14. 0.63 MB  |  3次下载  |  免费
  15. 89天练会电子电路识图
  16. 5.91 MB  |  3次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234313次下载  |  免费
  3. 2PADS 9.0 2009最新版 -下载
  4. 0.00 MB  |  66304次下载  |  免费
  5. 3protel99下载protel99软件下载(中文版)
  6. 0.00 MB  |  51209次下载  |  免费
  7. 4LabView 8.0 专业版下载 (3CD完整版)
  8. 0.00 MB  |  51043次下载  |  免费
  9. 5555集成电路应用800例(新编版)
  10. 0.00 MB  |  33562次下载  |  免费
  11. 6接口电路图大全
  12. 未知  |  30320次下载  |  免费
  13. 7Multisim 10下载Multisim 10 中文版
  14. 0.00 MB  |  28588次下载  |  免费
  15. 8开关电源设计实例指南
  16. 未知  |  21539次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935053次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537791次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420026次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234313次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233045次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191183次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183277次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138039次下载  |  免费