C51比较两个无符号数的大小
问题描述:
C51比较两个无符号数的大小
两个8位无符号数分别存放在外部RAM DATA1和DATA2单元中,将找出的较大数存放在DATA3单元中(DATA1,DATA2,DATA3为三个连续的存储单元).ORG 8000H
CLR C
MOV DPTR,#DATA1
MOVX A,@DPTR
MOV R3,A
INC DPTR
MOVX A,@DPTR
SUBB A,R3
JNC BIG2
XCH A,R3
SJMP BIG1
BIG2:MOVX A,@DPTR
BIG1:INC DPTR
MOVX @DPTR,A
END
A里存放的是相减后的结果,要将较大数存到DATA3,DPTR不是还应该加1么?
答
;ORG 8000HCLR CMOV DPTR,#DATA1MOVX A,@DPTRMOV R3,AINC DPTRMOVX A,@DPTRSUBB A,R3 ;(DATA2)-(DATA1)JNC BIG2 ;(DATA2)较大则转移XCH A,R3SJMP BIG1BIG2:MOVX A,@DPTR ;重新读取DATA2BIG1:INC DPTR ;指向DATA3MOVX...