. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->自由讨论区
主题 : :  汇编语言为什么比高级语言的执行效率高?  [待解决] 回复[ 5次 ]   点击[ 674次 ]  
zyc969
[帖 主] [ 发表时间:2012-05-26 21:04 ] 
荣誉值:0
信誉值:0
注册日期:2012-04-30 21:05
汇编语言为什么比高级语言的执行效率高?也就是“为什么汇编语言运行更快?”
目前我只知道两个原因:一是汇编的寻址速度快,二是如果高级语言编译器不够智能的话,会产生垃圾代码。
还有什么原因?
mengdana
[第5楼] [ 回复时间:2013-01-01 21:39 ] 
荣誉值:0
信誉值:0
注册日期:2013-01-01 17:35
其实高级语言最后也是编译成机器指令来执行的,也可以反汇编出汇编语言程序,但因为高级语言不清楚它需要具体用到哪些寄存器和内存,往往把不需要的寄存器也压栈保存操作,当然也要有相应的出栈恢复操作,这就花费了额外的机器时间,而汇编写的程序只保存用到的寄存器不做多余的操作,申请的空间也是用多少字节申请多少字节。所以效率比较高。节省时间和空间,所以执行效率高。

比喻来说,汇编语言要出门钓鱼,就带鱼竿,而高级语言把瓶瓶灌灌都带上了。
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved