fds2.asm

来自「通过调试的有用的单片机控制程序」· 汇编 代码 · 共 25 行

ASM
25
字号
;入口条件:查找内容在R4、R5中,表格首址在DPTR中,数据总个数在R7中。
;出口信息:OV=0时顺序号在累加器A中,地址在DPTR中	;OV=1时未找到。
;影响资源:PSW、A、R2、R6、DPTR    堆栈需求:  2字节

FDS2:	MOV	A,R7		;保存表格中数据的个数
	MOV	R6,A
	MOV	R2,#0		;顺序号初始化(指向表首)
FD21:	CLR	A		;读取表格内容的高字节
	MOVC	A,@A+DPTR
	XRL	A,R4		;与待查找内容的高字节比较
	JNZ	FD22
	MOV	A,#1		;读取表格内容的低字节
	MOVC	A,@A+DPTR
	XRL	A,R5		;与待查找内容的低字节比较
	JNZ	FD22
	CLR	OV		;相同,查找成功
	MOV	A,R2		;取对应的顺序号
	RET 	
FD22:	INC	DPTR		;指向下一个数据
	INC	DPTR
	INC	R2		;顺序号加一
	DJNZ	R6,FD21		;查完全部数据
	SETB	OV		;未查找到,失败
	RET

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?