《教学课件微机原理(第2版)3.11 转移指令应用ppt(全).pptx》由会员分享,可在线阅读,更多相关《教学课件微机原理(第2版)3.11 转移指令应用ppt(全).pptx(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、教学课件微机原理(第2版)3.11 转移指令应用22.3 存储器结构与地址空间学习内容:转移指令应用目标:掌握编程中转移指令的使用方法第2章 8051微控制器硬件结构33.3 典型指令的应用第3章 8051指令系统和汇编程序设计3.3.6 散转指令与程序 散转指令:JMP A+DPTR例:利用散转指令,根据按键键值实现转移到各按键的处理程序。设16个按键的键值为00H-0FH(存放在A中),设定一个入口地址,表中依次存放16个键的无条件转移指令LJMP KPRGi(i=015)。根据A的内容散转到表格的不同位置,再由LJMP KPRGi指令转移到相应的按键处理程序中。KJMP:MOV DPTR
2、,#KPRG ;散转入口地址表的首地址赋给基址寄存器DPTR MOV B,#03H ;给每个入口地址展宽3字节,以便放3字节LJMP指令 MUL AB JMP A+DPTR ;散转到入口地址表中KPRG:LJMP KPRG0 ;散转入口地址表,依次存放16个键盘操作程序的转移指令 LJMP KPRG1 LJMP KPRG15KPRG0:;0号按键操作程序KPRG1:;1号按键操作程序KPRG15:;15号按键操作程序53.3 典型指令的应用第3章 8051指令系统和汇编程序设计3.3.7 比较指令的分支转移(2)数值比较转移指令(4条):CJNE A,direct,rel 利用比较指令对进位标
3、志C的影响,可以实现两操作数大小的比较转移。若Cy=1表示第2操作数大于第1操作数,若Cy=0表示第1操作数大于第2操作数。例例3-19:某温度控制系统,A中是实际温度Ts,(20H)=温度下限值T20,(30H)=温度上限值T30。若TsT30,程序转降温JW,若TsT20,程序转升温SW,若T30TsT20程序转保温BH。3.3.7 比较指令的分支转移第3章 8051指令系统和汇编程序设计PROG:CJNE A,30H LOOPSJMP BH ;等于T30,保温LOOP:JNC JW ;大于T30,降温CJNE A,20 H,LOOP1SJMP BH ;等于T20,保温LOOP1:JC S
4、W ;小于T20,升温BH:-;保温JW:-SW:-83.3 典型指令的应用3.3.7 比较指令的分支转移例3-20:已知内部RAM的M1和M2单元中各有一个8位二进制无符号数。试比较它们的大小,大数送入MAX单元,小数送入MIN单元,若两数相等,则将内部RAM的00H置位。第3章 8051指令系统和汇编程序设计COMP:MOV A,M1 ;(A)(M1)CJNEA,M2,LOOP ;若(M1)(M2),转向LOOP,Cy位将变化SETB00H ;若(M1)=(M2),则00H位置位LJMPLOOP1LOOP:JCLESS ;若(Cy)=1,表示(M1)(M2),;M1送MAX单元MOVMIN,M2 ;M2送MIN单元LJMP LOOP1;LESS:MOVMIN,A ;(M1)(M2),M1送MIN单元MOVMAX,M2 ;M2送MAX单元LOOP1:RET