为什么现代计算机系统中还有中断处理程序是用汇编语言编写?

[复制链接]
查看11 | 回复5 | 2015-7-5 11:59:59 | 显示全部楼层 |阅读模式
主要是出于效率方面的考量。中断处理程序需要在尽量短的时间内完成所需的必要处理,尽量减少对线程/程序流造成的影响,因此大部分情况下用汇编直接编写,跳过了通用编译过程中冗余的适配部分。 汇编语言是汇编指令集、伪指令集和使用它们规则的统称,使用具有一定含义的符号为助记符。由于汇编语言是完全依赖于硬件的,因此通过适当的汇编程序设计,能够充分发挥出硬件的潜力,产生高效率的运行代码。 不光是中断处理程序,有许多软件系统的内核(例如操作系统内核)都是用汇编语言编写的。...
回复

使用道具 举报

千问 | 2015-7-5 11:59:59 | 显示全部楼层
效率问题,汇编语言直接对硬件操作,用汇编语言编写在生成机器语言时比一般的高级语言(如C、C++等)效率都要高;还可以尽可能的减少指令条数,这样占用的存储容量也就越小。...
回复

使用道具 举报

千问 | 2015-7-5 11:59:59 | 显示全部楼层
没有了,因为汇编语言开发效率很低所以现在的终端处理都已经是 c语言了...
回复

使用道具 举报

千问 | 2015-7-5 11:59:59 | 显示全部楼层
因为汇编语言可以直接对硬件进行操作,而且速度更快;其实c语言在编译过程中也是有个变成汇编的过程的。...
回复

使用道具 举报

千问 | 2015-7-5 11:59:59 | 显示全部楼层
硬件只认汇编。即使提供C接口,底层也是汇编。就像windows开发 只认winapi一样。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行