CJNE比较跳转指令以及检测P0口状态程序举例
扫描二维码
随时随地手机看文章
功能:比较二个字节中的值,若不等,则转移。
CINEA,#data,rel
CJNEA,direct,rel
CJNE@Ri,#data,rel
CJNERn,#data,rel
该类指令具有比较和判断双重功能,比较的本质是做减法运算,用第一操作数内容减去第二操作数内容,但差值不回存。
转移目的地址=(PC)+ 3 + rel
若第一操作数内容小于第二操作数内容,则(C)= 1,否则(C)= 0。
该类指令可产生三分支程序:即,相等分支;大于分支;小于分支。
例、设P1口的P1.0 ~ P1.3为准备就绪信号输入端,当该四位为全1时,说明各项工作已准备好,单片机可顺序执行,否则,循环等待。
答案:
MOVA,P1
ANLA,#0FH
CJNEA,#0FH,WAIT;P1.0 ~ P1.3不为全1时,返回WAIT
MOVA,R2