历安毛子代枝大” 4.6.1子程序调用和返回指令 XIDIAN UNIVERSITY 3.子程序(过程)的调用与返回 子程序调用指令CALL 子程序调用指令CALL(Call procedure).有两种格式: CALL LABEL ;直接调用,调用入口地址为标号 LABEL的子程序 CALL OPR ;间接调用,调用入口地址为操作出OPR 的内容 CALL指令与JMP指令本质都为无条件跳转指令
4.6.1 子程序调用和返回指令 3.子程序(过程)的调用与返回 7 • 子程序调用指令CALL 子程序调用指令CALL(Call procedure)有两种格式: CALL LABEL ;直接调用,调用入口地址为标号 LABEL的子程序 CALL OPR ;间接调用,调用入口地址为操作出OPR 的内容 CALL指令与JMP指令本质都为无条件跳转指令
三 历些毛子种枚大” 4.6.1子程序调用和返回指令 XIDIAN UNIVERSITY ●3.子程序(过程) 的调用与返回 子程序调用指令CALL 对于以下格式: CALL LABEL ;调用入口地址为标号LABEL的 子程序 微机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 8
4.6.1 子程序调用和返回指令 3.子程序(过程)的调用与返回 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 8 • 子程序调用指令CALL 对于以下格式: CALL LABEL ;调用入口地址为标号LABEL的 子程序
历粤毛子代枝大 4.6.1子程序调用和返回指令 XIDIAN UNIVERSITY ●3.子程序(过程) 的调用与返回 分两种情况: (1)指令的寻址方式为段间直接寻址,即当标号LABEL与 CALL指令不在同一个段内时,子程序调用在段间进行; 其完成的操作有: CS入栈,IP入栈; (IP)←一LABEL的偏移地址; (CS)←LABEL的段地址。 徽机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn
4.6.1 子程序调用和返回指令 3.子程序(过程)的调用与返回 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 9 分两种情况: (1)指令的寻址方式为段间直接寻址,即当标号LABEL与 CALL指令不在同一个段内时,子程序调用在段间进行; 其完成的操作有: CS入栈,IP入栈; (IP)←LABEL的偏移地址; (CS)←LABEL的段地址
历安毛子种枝大” 4.6.1子程序调用和返回指令 XIDIAN UNIVERSITY ●3.子程序(过程) 的调用与返回 分两种情况: (2)指令的寻址方式为段内直接寻址,也称为相对寻址。即 当标号LABEL与CALL指令在同一个段内,且可以采用8位 /16位有符号数表示其相对位移量时,则子程序调用在段内 进行; 其完成的操作有: P入栈; (IP)←(IP)+DISP8/DISP16。 徽机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 10
4.6.1 子程序调用和返回指令 3.子程序(过程)的调用与返回 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 10 分两种情况: (2)指令的寻址方式为段内直接寻址,也称为相对寻址。即 当标号LABEL与CALL指令在同一个段内,且可以采用8位 /16位有符号数表示其相对位移量时,则子程序调用在段内 进行; 其完成的操作有: IP入栈; (IP)←(IP)+DISP8/DISP16
历安毛子代枝大” 4.6.1子程序调用和返回指令 XIDIAN UNIVERSITY ●3.子程序(过程)的调用与返回 子程序调用指令CALL 对于以下格式: CALL OPR ;调用子程序,其入口地址为操 作数OPR的内容 徽机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 11
4.6.1 子程序调用和返回指令 3.子程序(过程)的调用与返回 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 dminghao@xidian.edu.cn 11 • 子程序调用指令CALL 对于以下格式: CALL OPR ;调用子程序,其入口地址为操 作数OPR的内容