A-A+

下面程序是将片内RAM______开始的单元内10个二进制数 找出其中最大值并存于单元中。S

2022-08-06 10:49:05 问答库 阅读 179 次

问题详情

下面程序是将片内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

考点:最大值,单元