试比较无条件转移指令、条件转移指令、调用指令和中断指令有什么异同?
无条件转移指令的操作是无条件地使程序转移到指定的目标地址,并从该地址开始执行新的程序段,其转移的目标地址既可以是在当前逻辑段,也可以是在不同的逻辑段;条件转移指令是在满足一定条件下使程序转移到指定的目标地址,其转移范围很小,在当前逻辑段的-128~+127地址范围内。调用指令是用于调用程序中常用到的功能子程序,是在程序设计中就设计好的。根据所调用过程人口地址的位置可将调用指令分为段内调用(入口地址在当前逻辑段内)和段间调用。在执行调用指令后,CPU要保护断点。对段内调用是将其下一条指令的偏移地址压人堆栈,对段间调用则要保护其下一条指令的偏移地址和段基地址,然后将子程序人口地址赋给IP(或CS和IP)。中断指令是因一些突发事件而使CPU暂时中止它正在运行的程序,转去执行一组专门的中断服务程序,并在执行完后返回原被中止处继续执行原程序。它是随机的。在响应中断后CPU不仅要保护断点(即INT指令下一条指令的段地址和偏移地址),还要将标志寄存器FLAGS压入堆栈保存。
举一反三
内容
- 0
下列不属于程序控制类指令的是()。 A: 无条件转移指令 B: 条件转移指令 C: 算术移位指令 D: 子程序调用指令
- 1
()包括条件转移指令,无条件转移指令,停止指令和复位指令。 A: 运算指令 B: 控制指令 C: 传送指令 D: 特殊指令
- 2
一般条件转移指令有转移指令、转移指令、转移指令等。
- 3
条件转移指令可分为三大类,它们分别是: 条件转移指令、 条件转移指令和 条件转移指令。
- 4
()包括条件转移指令,无条件转移指令,停止指令和复位指令。 A: A运算指令 B: B控制指令 C: C传送指令 D: D特殊指令