您现在的位置是:首页 > 单片机

求单字节十六进制无符号数据块的极值

2020-03-26 05:00:58

求单字节十六进制无符号数据块的极值

入口条件:数据块的首址在DPTR中,数据个数在R7中。
出口信息:最大值在R6中,地址在R2R3中;最小值在R7中,地址在R4R5中。
影响资源:PSW、A、B、R1~R7 堆栈需求: 4字节

MM: MOV B,R7
MOVX A,@DPTR
MOV R6,A
MOV R7,A
MOV A,DPL
MOV R3,A
MOV R5,A
MOV A,DPH
MOV R2,A
MOV R4,A
MOV A,B
DEC A
JZ MME
MOV R1,A
PUSH DPL
PUSH DPH
MM1: INC DPTR
MOVX A,@DPTR
MOV B,A
SETB C
SUBB A,R6
JC MM2
MOV R6,B
MOV R2,DPH
MOV R3,DPL
SJMP MM3
MM2: MOV A,B
CLR C
SUBB A,R7
JNC MM3
MOV R7,B
MOV R4,DPH
MOV R5,DPL
MM3: DJNZ R1,MM1
POP DPH
POP DPL
MME: RET