×
单片机 > 单片机程序设计 > 详情

51单片机汇编语言:控制转移指令有哪些?

发布时间:2020-05-28 发布时间:
|

跳转指令

短跳指令       AJMP   addr11

                   PC←addr11,跳转范围2k

长跳指令       LJMP   addr16

                   PC←addr16,跳转范围64k

间接跳转指令   JMP  @A+DPTR

                   PC←(A)+(DPTR)

相对转移指令   SJMP   rel


条件转移指令

JZ      rel   ;(A)=0,转移

JNZ     rel   ;(A)≠0,转移

JC      rel            ;如 C=1,    转移

JNC     rel            ;如 C=0,    转移

JB      bit,rel    ;如 bit=1,    转移

JNB     bit,rel    ;如 bit=0,    转移

JBC     bit,rel    ;如 bit=1,    转移并 bit=0


比较不相等转移指令

CJNE A,#data,rel;(A)=#data,继续C←0 (A)>#data,转C←0 (A)<#data,转C←1

                    特点:只有<时, C←1

CJNE  A,direct,rel

CJNE  Rn,#data,rel

CJNE  @Ri,#data,rel


减 1 不为 0 转移指令

DJNZ  Rn,rel ;

DJNZ  direct,rel


例:延时子程序

    delay: MOV  R7,   #03H

    delay0: MOV  R6,   #19H

    delay1: DJNZ  R6,  delay1 

    DJNZ  R7,  delay0

    RET

 

调用子程序指令

短调用指令     ACALL   addr11

长调用指令     LCALL   addr16

子程序返回指令  RET

中断返回指令    RETI

空操作指令      NOP



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
浅谈AVR中定时器几种工作模式