设计有256路分支出口的转移程序
编程如下:
MOV DPTR,#TAB
MOV A , R2
CLR C
RLC A
JNC LOW
INC DPH
LOW:MOV R3,A
MOVCA,@A+DPTR
PUSHA
MOV A,R3
INCA
MOVCA,@A+DPTR
PUSHA
RET
TAB: DWaddr00
DWaddr01
.
.
.
DW addrFF
以上程序中INC A
MOVCA,@A+DPTR
两条是什么意思?书上说A加1后在用MOVCA,@A+DPTR是查找出口地址的高8位。我不明白是什么意思?还有执行JNCLOW 的时候若C=1,则执行INC DPH,执行完这条指令后是继续往下执行呢,还是到这就结束了? 我指的是C=1的时候?
R2是信息编号,INC A, MOVCA,@A+DPTR 为什么A加1就查找地址的高八位,A不是0-127么?
加1不是变成1-128么,那就不能查找地址的高八位了。
|