假设P为调用过程,Q为被调用过程,程序在IA-32处理器上执行,以下有关过程调用的叙述中,错误的是()
A: C语言程序中的函数调用就是过程调用
B: 从P传到Q的实参无需重新分配存储空间
C: 从P跳转到Q执行应使用CALL指令
D: 返回地址是CALL指令下一条指令的地址,被保存在栈中
A: C语言程序中的函数调用就是过程调用
B: 从P传到Q的实参无需重新分配存储空间
C: 从P跳转到Q执行应使用CALL指令
D: 返回地址是CALL指令下一条指令的地址,被保存在栈中
B
举一反三
- 假设P为调用过程,Q为被调用过程,程序在IA-32处理器上执行,以下关于过程调用的叙述,错误的是() A: C语言程序中的函数调用就是过程调用 B: 从P传到Q的实参无需重新分配空间存放 C: 从P跳转到Q执行应使用CALL指令 D: 从Q跳回到P执行应使用RET指令
- 假设P为调用过程,Q为被调用过程,程序在IA-32处理器上执行,以下关于过程调用的叙述中,错误的是( )。
- 中国大学MOOC: 假设P为调用过程,Q为被调用过程,程序在IA-32处理器上执行,以下关于过程调用的叙述,错误的是( )
- 有关调用指令(过程、函数调用)的叙述中,错误的是: A: 与高级语言源程序中的过程调用相对应,一次过程调用对应一条指令 B: 指令执行时必须保留返回地址,调用指令随后一条指令的地址是返回地址 C: 嵌套调用时,返回地址通常保存在栈中,非嵌套调用时,可以保存在特定寄存器中 D: 指令执行时,无条件转移到目标地址处,转移目标地址不需要在指令中明显给出
- IA-32处理器使用CALL指令调用子程序时,返回地址被保存到______。
内容
- 0
执行返回指令时,从堆栈中弹出的是 A: 调用指令的首地址 B: 调用指令的末地址 C: 调用指令下一条指令的首地址 D: 返回指令的末地址
- 1
C语言使用函数名(含参数)就是调用函数,IA-32处理器需要使用“CALL”调用指令实现调用。
- 2
以下是关于IA-32/Linux中call指令和int$0x80指令比较的叙述,其中错误的是()。 A: call指令为同一特权级过程调用,而int$0x80指令实现对内核服务例程的调用 B: call指令和int$0x80指令执行过程中,都会将下一条指令的地址保存在栈中 C: call指令和int$0x80指令都有对应返回指令,前者是ret指令,后者是iret指令 D: call指令和int$0x80指令执行前,都会由mov指令将参数值传送到栈中保存
- 3
中国大学MOOC: IA-32处理器使用CALL指令调用子程序时,返回地址被保存到______。
- 4
C语言使用函数名(含参数)就是调用函数,IA-32处理器需要使用“CALL”调用指令实现调用。 A: 正确 B: 错误