文档详情

控制转移与类指令(17条) .ppt

发布:2017-10-03约字共35页下载文档
文本预览下载声明
开头的话 一个计算机“智商”的高低,取决于它的转移类指令的多少,特别是条件转移指令的多少。计算机运行过程中,有时因为操作的需要,程序不能按顺序逐条执行指令,需要改变程序的运行方向,即将程序跳转到某个指定的地址再顺序执行下去。某些指令具有修改程序计数器PC内容的功能,因为PC内容是将要执行的下一条指令的地址,所以计算机执行这类指令就能够控制程序转移到新的地址上去执行。 1. 无条件转移 (4条) 无条件转移指令是当程序执行到该指令时,程序无条件的转移到指令所提供的地址处执行。无条件转移指令有长转移、短转移、相对转移和间接转移4条指令。 对于编程者:目标地址可以在这条指令的前128B到后127B之间。助记符后通常仍然直接写目标行号。 对与汇编程序:汇编后它有两个字节,操作码是80H,而其余一个字节表明转移的相对偏移量,用rel表示。 汇编时rel=目标地址-(源地址+2) 对与CPU:当它取得操作码为80H后,紧跟着获取的一个字节rel被用来计算新的PC值。 执行时新的PC=(PC)当前+2+rel =源地址+2+目标地址-(源地址+2) =目标地址 相对寻址 相对寻址是以程序计数器PC的当前值(指读出该2字节或3字节的跳转指令后,PC指向的下条指令的地址)为基准,加上指令中给出的相对偏移量 rel 形成目标地址的寻址方式 。该类寻址方式主要用于跳转指令。 2. 有条件转移指令(8条) 指令字面上会用助记符给出一个判决规则,如(A)=0等。 CPU执行时会依据当前的条件作出真/假判断,是真--则转移;是假--则继续顺序执行。 指令中最后一个操作数表明转移的目标地址,通常是标号地址。 所有的有条件转移均为短转移。 本指令前要有意识地构建判决条件。 3. 调用和返回指令(4条) 4 . 空操作指令(1条) 3.4.5 位操作指令(17条) 位寻址空间 在进行位操作时,进位标志位CY——布尔累加器(位累加器),简写成C。 位寻址区: 片内RAM字节地址20H~2FH单元中连续的128位(位地址00H~7FH) 部分特殊功能寄存器SFR(通常用位名来访问,如RS0、OV) 点操作符号: 如PSW.4(D0H).4 位名称方式: 如RS1 直接写位地址: 如D4H 用户定义名方式:如用伪指令bit flag bit 10H SETB flag ;(10H)=1 1、位传送指令(2条) 2、位置位复位指令(4条) 2010-04-01作业 P63 13、14、17、18 测试 1.根据你所理解的逻辑关系,写出五大类指令。 这些指令对CY及可寻址位进行置位或复位操作,共有四条指令。 CLR ?C?????????? ?; 0→CY,清CY。 ????CLR ?bit???????? ??; 0→bit,清某一位。 ????SETB ?C????????? ?; 1→CY,置位CY。 SETB ?bit??????? ??; 1→bit,置位某一位。 例如:CLR P3.0 指令,就是将P3.0清零。 3.4.5 位操作指令(17条) 3、位运算指令(6条) ANL ?C,bit????????;(CY)∧(bit)→CY。 ????ANL ?C,/bit????????;(CY)∧(/bit)→CY。 ????ORL ?C,bit????????;(CY)∨(bit)→CY。 ????ORL ?C,/bit????????;(CY)∧(/bit)→CY。 ????CPL ?C???????????;(/CY)→CY。 ????CPL ?bit??????????;(/bit)→bir。 位运算包括与、或、非三种逻辑运算,与字节逻辑运算比较,没有异或。与、或运算,位累加器C一定参与。 3.4.5 位操作指令(17条) JC rel ;判决规则 C = 1 JNC rel ;判决规则 C = 0 4、位控制转移指令(5条) JB ?bit, rel???????? ;判决规则 位状态为1转移。 JNB ?bit, rel???????;判决规则 位状态为0转移。 JBC ?bit, rel???????;判决规则 位状态为1时先清“0”再转移 3.4.5 位操作指令(17条) * * 第七课 复习 3.4.4 控制转移类指令(17条) 3.4.5 位操作指令(17条) 3.4 MCS-51指令系统的分类介绍 ORG 0100H LOOP:MOV
显示全部
相似文档