,主程序用数据传送指令将入口参数存入入口参数的存储单元中。调用子程序后,子程序按照约定从入口参数存储单元中取出这些参数进行处理。子程序完成处理,将处理结果送入指定的出口参数存储单元中,返回后主程序可从这些特定存储单元中获取需要的处理结果。约定存储器法传送速度比约定寄存器法要慢些,适合于传递参数较多的情况。3堆栈法堆栈法使用堆栈来完成数据传递。在调用子程序之前将参数压入堆栈,转入子程序后通过sP指针获得压入堆栈的参数地址,从而将其取出。子程序的处理结果亦送入堆栈保存。返回主程序后再通过出栈指令取出结果。使用该方法时应明了堆栈的变化情况,特别注意参
4
f数入栈与出栈顺序。堆栈法适合于参数较多且子程序有嵌套、递归调用的场合。
3简述外部中断和软件中断的中断过程。
中断是用以提高计算机工作效率、增强计算机功能的一项重要技术。外部中断:当中断源向CPU发出中断请求,CPU接受请求在一定条件下暂停执行原程序进行中断处理,执行完中断服务程序后再返回断点继续执行原程序。软件中断:是一条CPU指令,用以自陷一个中断。由于软中断指令通常要运行一个切换CPU至内核态的子例程,它常被用作实现系统调用
4简述循环程序结构的一般组成。初始化部分:在循环程序的开头,先执行。设置地址指针的初值、计数器的
初值及程序中用到的某些寄存器和某些内存单元的初值,只执行一遍。工作
部分:从初始化部分设置的初值开始,动态地反复执行相同的操作,实现循环
程序的功能。修改部分:对参加运算的数据或地址指针和记过单元地址指针修改控制部分:按预定循环次数的执行和正常退出循环。
5简述多分支程序实现的一般步骤与常用处理方法。
使用条件转移JCC指令和无条件专题JMP指令实现分支程序结构。获得条件变量对应转换为地址表入口偏移BXBX入口偏移JMPBX跳转到相应位置。常用地址表的方法。无法使用地址表,只能通过多条条件转移指令实现。
6简述完整子程序结构所包含的内容。
子程序也是一段程序,由文字说明和子程序本身构成。一般由子程序名、子程序的功能。子程序选用的寄存器名和存储单元分配、子程序入口参数、子程序出口参数。
5
f三编写程序,计算两个64位数的和,不考虑和的进位。(20分)
由于64位数占用的寄存器比较多,故适合于用约定存储单元法来进行处理。程序中将64位加数mMl和M.M2存放在两个双字单元内。由于不考虑和的进位,所以和也可用两个双字单元来存放。程序如下r