A-A+
下面程序是将片内RAM______开始的单元内10个二进制数 找出其中最大值并存于单元中。S
问题详情
下面程序是将片内RAM______开始的单元内10个二进制数,找出其中最大值并存于单元中。
START: MOV R0,#40H
MOV R7,#09H
MOV A,@R0
LOOP: INC R0
MOV 30H,@R0
CJNE A,30H,NEXT
NEXT: JNC BIE1
MOV A,30H
BIE1: DJNZ R7,LOOP
MOV 50H,A
RET
参考答案
正确答案:
40H 50H[解析]
START:MOV R0,#40H ;设置片内开始单元
MOV R7,#09H ;十个存储数据
MOV A,@R0 ;第一个数据传送至A
LOOP: INC R0 ;R0指向下一个数据
MOV 30H,@R0 ;假定该数据为最大
CJNE A,30H,NEXT ;A和该数据比较
NEXT: JNC BIE1 ;如果A大转移到LOOP
MOV A,30H ;如果A小,将该数据送入A
BIE1: DJNZ R7,LOOP ;数据个数减1,不为0转移到LOOP
MOV 50H,A ;A中为最大数据,送入50H单元
RET