实验一 数据传送实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 数据传送实验
实验指导书40页1数据传送程序
编写一个数据传送程序,使AT89C51的片内RAM的30H~3FH单元置初值10H~1FH,然后传送到片外RAM的2000H~200FH单元中,再将2000H~200FH单元中的内容传送到片内RAM 的50H~5FH单元中。
ORG 0000H
AJMP START
ORG 0030H
START:MOV A,#10H
MOV R0,#30H
MOV R7,#10H
LOOP1:MOV @R0,A
INC A
INC R0
DJNZ R7,LOOP1
MOV R0 ,#30H
MOV DPTR ,#2000H
MOV R7,#10H
LOOP2:MOV A,@R0
MOVX @DPTR,A
INC R0
INC DPTR
DJNZ R7,LOOP2
MOV DPTR,#2000H
MOV R0,#50H
MOV R7,#10H
LOOP3:MOVX A,@DPTR
MOV @R0, A
INC DPTR
INC R0
DJNZ R7,LOOP3
END
94页第三题
从片内RAM的20H单元开始,有15个数据。试编程将其中的正数,负数分别送到片内RAM 41H和61H开始的存储单元,并分别将正数,负数的个数送片内RAM 40H和60H单元ORG 0000H
AJMP START
ORG 0030H
START:MOV A,#05H
MOV R0,#20H
MOV R7,#0FH
LOOP0:MOV @R0,A
DEC A
INC R0
DJNZ R7,LOOP0
MOV R0,#20H
MOV R2,#0FH
MOV R3,#00H
MOV R4,#00H
MOV 40H,#41H
MOV 60H,#61H
LOOP1:MOV A,@R0
JB ACC.7,LOOP3
LOOP2:MOV R1,40H
MOV @R1,A
INC 40H
INC R3
AJMP LOOP4
LOOP3:MOV R1,60H
MOV @R1,A
INC 60H
INC R4
LOOP4:INC R0
DJNZ R2,LOOP1
MOV 40H,R3
MOV 60H,R4
END