宏指令和子程序的异同?编程时如何选用?(微机汇编)
1个回答
展开全部
宏与子程序都可以用一个名字定义一段程序,以简化源程序的结构和设计。二者的区别:
1、在源程序中,通过书写宏名来引用宏,而子程序是通过CALL指令来调用;
2、宏调用是通过宏扩展来实现的,宏引用多少次,就相应扩展多少次,所以,引用宏不会缩短目标程序;而子程序代码在目标程序中只出现一次,调用子程序是执行同一程序段,因此,目标程序也得到相应的简化
子程序
优点:模块化,节省内存,可被多次调用,编程效率高。
缺点:额外开销(保存返回地址,计算转向地址,传递参数等)大,增加了执行时间。适用于子功能代码较长、调用比较频繁的情况。
宏调用:
优点:参数传送简单,执行效率高。
缺点:不节省空间,适用于子功能代码较短、传参较多的情况。
1、在源程序中,通过书写宏名来引用宏,而子程序是通过CALL指令来调用;
2、宏调用是通过宏扩展来实现的,宏引用多少次,就相应扩展多少次,所以,引用宏不会缩短目标程序;而子程序代码在目标程序中只出现一次,调用子程序是执行同一程序段,因此,目标程序也得到相应的简化
子程序
优点:模块化,节省内存,可被多次调用,编程效率高。
缺点:额外开销(保存返回地址,计算转向地址,传递参数等)大,增加了执行时间。适用于子功能代码较长、调用比较频繁的情况。
宏调用:
优点:参数传送简单,执行效率高。
缺点:不节省空间,适用于子功能代码较短、传参较多的情况。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询