1、在现代,计算机系统中的程序可序设计所追求的重要目标;在现代,计算机系统中的程序可用资源极为丰富,这使得提高用资源极为丰富,这使得提高用资源极为丰富,这使得提高用资源极为丰富,这使得提高系统资源利用率系统资源利用率系统资源利用率系统资源利用率已成为程序设已成为程序设已成为程序设已成为程序设计所追求的重要目标。在计算机技术发展的较早时期,软件计所追求的重要目标。在计算机技术发展的较早时期,软件的规模极为有限,软件技术主要强调的规模极为有限,软件技术主要强调的规模极为有限,软件技术主要强调的规模极为有限,软件技术主要强调个个个个人技艺;在现代,软人技艺;在现代,软件实现了商品化、规模急剧膨胀,工程化
2、开发技术成为主流。件实现了商品化、规模急剧膨胀,工程化开发技术成为主流。这些种种差异的存在导致了现代汇编语言子程序技术与传这些种种差异的存在导致了现代汇编语言子程序技术与传这些种种差异的存在导致了现代汇编语言子程序技术与传这些种种差异的存在导致了现代汇编语言子程序技术与传统间存在极大的不同。为此,本章先讨论:统间存在极大的不同。汇编语言子程序设计基础概论汇编语言子程序设计基础概论&现代汇编语言子程序设计与传统的主要区别现代汇编语言子程序设计与传统的主要区别现代汇编语言子程序设计与传统的主要区别现代汇编语言子程序设计与传统的主要区别uu 以提高计算机应用系统的系统效率为基本出发点以提高计算机应用
3、系统的系统效率为基本出发点以提高计算机应用系统的系统效率为基本出发点以提高计算机应用系统的系统效率为基本出发点uu 实现一个大型信息系统的底层模块实现一个大型信息系统的底层模块实现一个大型信息系统的底层模块实现一个大型信息系统的底层模块uu 可为高级语言程序所调用可为高级语言程序所调用可为高级语言程序所调用可为高级语言程序所调用uu 基于操作系统虚拟机实现基于操作系统虚拟机实现基于操作系统虚拟机实现基于操作系统虚拟机实现uu 追求程序的高质量追求程序的高质量追求程序的高质量追求程序的高质量(可读性(可读性(可读性(可读性、可移植、结构化、可移植、结构化、可移植、结构化、可移植、结构化、)uu
4、追求开发工作的高效率追求开发工作的高效率追求开发工作的高效率追求开发工作的高效率uu 具有可再入性(可再入子程序设计)具有可再入性(可再入子程序设计)具有可再入性(可再入子程序设计)具有可再入性(可再入子程序设计)uu 局部资源的动态分配局部资源的动态分配局部资源的动态分配局部资源的动态分配汇编语言子程序设计基础概论汇编语言子程序设计基础概论&80 x8680 x86系列机的汇编语言子程序设计特征系列机的汇编语言子程序设计特征系列机的汇编语言子程序设计特征系列机的汇编语言子程序设计特征uu 存储器的分段管理存储器的分段管理存储器的分段管理存储器的分段管理(确立了子程序的高效工作模式)(确立了子
5、程序的高效工作模式)(确立了子程序的高效工作模式)(确立了子程序的高效工作模式)uu 堆栈设置的系统特征堆栈设置的系统特征堆栈设置的系统特征堆栈设置的系统特征(“基址指针基址指针基址指针基址指针”的特殊使用规则的特殊使用规则的特殊使用规则的特殊使用规则)uu 子程序的硬件分类(近过程子程序的硬件分类(近过程子程序的硬件分类(近过程子程序的硬件分类(近过程/远过程)远过程)远过程)远过程)uu 主流处理器的流水作业主流处理器的流水作业主流处理器的流水作业主流处理器的流水作业uu 操作系统的硬件支持机制操作系统的硬件支持机制操作系统的硬件支持机制操作系统的硬件支持机制uu 主流操作系统主流操作系统
6、主流操作系统主流操作系统 多任务保护模式下的多任务保护模式下的多任务保护模式下的多任务保护模式下的3232位系统位系统位系统位系统uu 返回指令的返回指令的返回指令的返回指令的“平衡堆栈平衡堆栈平衡堆栈平衡堆栈”功能功能功能功能uu 入口的入口的入口的入口的“结构结构结构结构”对象操作支持对象操作支持对象操作支持对象操作支持汇编语言子程序设计基础概论汇编语言子程序设计基础概论&程序模块的设计信息与汇编语言子程序程序模块的设计信息与汇编语言子程序程序模块的设计信息与汇编语言子程序程序模块的设计信息与汇编语言子程序uu 模块化程序设计与汇编语言子程序模块化程序设计与汇编语言子程序模块化程序设计与汇
7、编语言子程序模块化程序设计与汇编语言子程序uu 程序模块的设计信息程序模块的设计信息程序模块的设计信息程序模块的设计信息:FF 程序模块名程序模块名程序模块名程序模块名FF 程序模块的功能说明程序模块的功能说明程序模块的功能说明程序模块的功能说明FF 模块的参数设计模块的参数设计模块的参数设计模块的参数设计FF 模块所引用的其他模块列表模块所引用的其他模块列表模块所引用的其他模块列表模块所引用的其他模块列表FF 模块的应用说明模块的应用说明模块的应用说明模块的应用说明 当软件的编程语言为当软件的编程语言为当软件的编程语言为当软件的编程语言为C C语言时语言时语言时语言时,通常在相应工程文件中给
8、出其通常在相应工程文件中给出其通常在相应工程文件中给出其通常在相应工程文件中给出其“函数原型函数原型函数原型函数原型”FF 模块的其他设计说明模块的其他设计说明模块的其他设计说明模块的其他设计说明FF 模块的测试数据系列及其设计说明模块的测试数据系列及其设计说明模块的测试数据系列及其设计说明模块的测试数据系列及其设计说明过程与过程调用相关汇编语句过程与过程调用相关汇编语句&80 x8680 x86的子程序支持机制综述的子程序支持机制综述&过程调用与返回指令过程调用与返回指令&子程序的组织与实例子程序的组织与实例作为一个面向数据处理应用设计的系列处理机,作为一个面向数据处理应用设计的系列处理机,
9、作为一个面向数据处理应用设计的系列处理机,作为一个面向数据处理应用设计的系列处理机,80 x8680 x86的的的的子程序支持机制是颇具特色的。它既考虑了子程序作为一个子程序支持机制是颇具特色的。它既考虑了子程序作为一个软件产品的独立组成模块的软件工程需求,也考虑了其作为软件产品的独立组成模块的软件工程需求,也考虑了其作为软件产品的独立组成模块的软件工程需求,也考虑了其作为软件产品的独立组成模块的软件工程需求,也考虑了其作为一个独立模块内部构件的程序实现需求;既考虑了直接的子一个独立模块内部构件的程序实现需求;既考虑了直接的子程序调用的编程需要,也考虑了间接的子程序调用的编程需程序调用的编程需
10、要,也考虑了间接的子程序调用的编程需程序调用的编程需要,也考虑了间接的子程序调用的编程需程序调用的编程需要,也考虑了间接的子程序调用的编程需求;既考虑了子程序返回时的简单控制转移,也考虑了使用求;既考虑了子程序返回时的简单控制转移,也考虑了使用堆栈传递参数情况下返回控制时的堆栈平衡的需要。学生在堆栈传递参数情况下返回控制时的堆栈平衡的需要。学生在掌握这部分相关知识时,应当注意对之的系统把握。本节将掌握这部分相关知识时,应当注意对之的系统把握。本节将讨论以下几个问题:讨论以下几个问题:过程与过程调用相关汇编语句过程与过程调用相关汇编语句&80 x8680 x8680 x8680 x86的子程序支
11、持机制综述的子程序支持机制综述的子程序支持机制综述的子程序支持机制综述uu 近过程近过程近过程近过程与与与与远过程远过程远过程远过程FF 近过程近过程近过程近过程 子程序与主程序的代码在同一代码段内子程序与主程序的代码在同一代码段内子程序与主程序的代码在同一代码段内子程序与主程序的代码在同一代码段内,两者间的控制转移两者间的控制转移两者间的控制转移两者间的控制转移(调用调用调用调用-返回返回返回返回)不改变不改变不改变不改变CSCS内容内容内容内容FF 远过程远过程远过程远过程 子程序与主程序有着各自的代码段,子程子程序与主程序有着各自的代码段,子程子程序与主程序有着各自的代码段,子程子程序与
12、主程序有着各自的代码段,子程序的代码为系统中的序的代码为系统中的序的代码为系统中的序的代码为系统中的“共享代码共享代码共享代码共享代码”,两者间的控制转移,两者间的控制转移,两者间的控制转移,两者间的控制转移(调用调用调用调用-返回返回返回返回)将改变将改变将改变将改变CSCS内容内容内容内容FF 近过程附属于所从属的主程序近过程附属于所从属的主程序近过程附属于所从属的主程序近过程附属于所从属的主程序,不是相应系统中的不是相应系统中的不是相应系统中的不是相应系统中的“共享代码共享代码共享代码共享代码”FF 远过程的调用受到操作系统的监管远过程的调用受到操作系统的监管远过程的调用受到操作系统的监
13、管远过程的调用受到操作系统的监管FF 远过程是可为高级语言程序调用的汇编语言子程序,远过程是可为高级语言程序调用的汇编语言子程序,远过程是可为高级语言程序调用的汇编语言子程序,远过程是可为高级语言程序调用的汇编语言子程序,而近过程不是而近过程不是而近过程不是而近过程不是FF 远过程通常可被独立汇编,而近过程不能远过程通常可被独立汇编,而近过程不能远过程通常可被独立汇编,而近过程不能远过程通常可被独立汇编,而近过程不能过程与过程调用相关汇编语句过程与过程调用相关汇编语句&80 x8680 x8680 x8680 x86的子程序支持机制综述的子程序支持机制综述的子程序支持机制综述的子程序支持机制综述uu 过程的直接调用与间接调用过程的直接调用与间接调用过程的直接调用与间接调用过程的直接调用与间接调用FF 过程的过程的过程的过程的直接调用直接调用直接调用直接调用 在在在在直接给出被调用过程的名来引直接给出被调用过程的名来引直接给出被调用过程的名来引直接给出被调用
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1