什么是程序控制指令?
计算机指令始终存储在连续的内存位置。这些指令从连续的内存位置获取以进行处理和执行。
当从内存中获取指令时,程序计数器会递增 1,以便它指向内存中下一条连续指令的地址。一旦执行了数据传输和数据操作指令,程序控制以及保存要获取的下一条指令地址的程序计数器将返回到取指令周期。
数据传输和操作指令指定数据处理操作的条件,而程序控制指令指定可以更改程序计数器内容的条件。
程序计数器内容的更改可能会导致指令执行中断/断点。但是,程序控制指令控制程序执行的流程,并且能够分支到不同的程序段。
表中列出了一些程序控制指令。
程序控制指令
名称 | 助记符 |
---|---|
分支 | BR |
跳转 | JMP |
跳过 | SKP |
调用 | 调用 |
返回 | RET |
比较(通过减法) | CMP |
测试(通过与运算) | TST |
分支是一条一地址指令。它表示为 BR ADR,其中 ADR 是地址的助记符。分支指令将 ADR 的值传输到程序计数器。分支和跳转指令可互换使用,表示相同的意思。但是,有时它们表示不同的寻址模式。
条件分支指令(如“如果为正则分支”或“如果为零则分支”)指定了转移执行流程的条件。当满足条件时,分支地址将加载到程序计数器中。
该图描述了条件分支指令。
比较指令执行算术减法。此处,操作结果不会保存;相反,状态位条件被设置。测试指令对两个操作数执行逻辑与运算并更新状态位。
广告