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

控制/MCU

1843人已加入

描述

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

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

MMS: 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 MMSE
MOV R1,A
PUSH DPL
PUSH DPH
MMS1: INC DPTR
MOVX A,@DPTR
MOV B,A
SETB C
SUBB A,R6
JZ MMS4
JNB OV,MMS2
CPL ACC.7
MMS2: JB ACC.7,MMS4
MOV R6,B
MOV R2,DPH
MOV R3,DPL
SJMP MMS7
MMS4: MOV A,B
CLR C
SUBB A,R7
JNB OV,MMS6
CPL ACC.7
MMS6: JNB ACC.7,MMS7
MOV R7,B
MOV R4,DPH
MOV R5,DPL
MMS7: DJNZ R1,MMS1
POP DPH
POP DPL
MMSE: RET   

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分