若一个子程序起始地址为2K,调用指令CALL的内存地址为K+2,则执行CALL指令所要执行指令的地址为
A.2K
B.2K+I
C.2K-1
D.K+3
第1题:
假设由CALL指令调用的某子程序使用段内返回指令RET4,该子程序执行到RET4指令时( )实现返回操作。
A.返回到CALL指令下面一条指令继续执行主程序
B.按照(SP)和(SP+1)中存放的地址执行返回操作
C.按照(SP+4)和(SP+5)中存放的地址执行返回操作
D.返回到CALL指令下面第4条指令继续执行主程序
第2题:
子程序调用指令包含子程序调用指令CALL,以及条件返回指令CRET。CRET以()的形式表示,CALL以()的形式表示。
A.触点
B.线圈
C.指令盒
D.接触器
第3题:
以下是关于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指令将参数值传送到栈中保存
第4题:
若一个子程序起始地址为3K,调用指令CALL的内存地址为K+1,则执行CALL指令所要执行指令的地址为( )。
A.3K
B.3K+1
C.3K-1
D.K+2
第5题:
19、call指令与jmp指令的功能类似,都将跳转到目标位置继续执行。但call指令执行时,还会将该call指令之后的地址压入堆栈顶端。而这一特性可有效应用于病毒代码的重定位。