用汇编语言编程查找内部RAM的32H~41H单元中是否有0AAH这数据,若有则将50H单元置为0FFH,否则50H单元为0?

来源:百度知道 编辑:UC知道 时间:2024/06/08 19:52:53

程序1:
MOV R0, #32H ;设地址指针的初值
CONT: CJNE @R0,#0AAH , NEXT ;比较查找值与指针所指单元的值,是否相等
MOV A, #0FFH ;相等,赋值0FFH
SJMP DOWN ;跳转到,保存结果
NEXT: INC R0 ;修改地址指针
CJNE R0, #42H, CONT ;指针没有超过范围,则继续
MOV A, #00H ;查找失败,将00H存入结果
DOWN: MOV 50H, A ;将比较结果存入50H单元
SJMP $ ;暂停
END
程序2:
MOV R7, #16 ;计数器赋初值,从20H~30H共16个字节
MOV R0, #32H
CONT: CJNE @R0,#0AAH , NEXT
MOV A, #0FFH
SJMP DOWN
NEXT: INC R0
DJNZ R7, CONT ;计数器减1,非零,则继续查找
MOV A, #00H
DOWN: MOV 50H, A ;将比较结果存入50H单元
SJMP $
END