1、一、 数据传送1实验目的(1) 熟悉 51 单片机的开发环境 Keil C51(2) 掌握 8051 单片机内部数据存储器、外部数据存储器的数据传送特点和应用(3) 掌握 MOV, MOVX 和 MOVC 类指令的用法及区别2实验内容(1) 将内部数据存储器 20H 为首地址的十六个字节传送到30H 为首地址的数据区,即:20H2FH 送 30H3FH。ORG 0000HLJMP MAINORG 0030HMAIN: MOV R0 , #20HMOV R1 , #30HMOV R2 , #16LOOP: MOV A , R0MOV R1 ,AINC R0INC R1DJNZ R2 , LOOP
2、SJMP $END(2) 将外部数据存储器 2000H200FH 单元的十六个数传送至内部数据存储器的 30H3FH。ORG 0000HLJMP MAINORG 0030HMAIN: MOV DPTR , #2000HMOV R0 , #30HMOV R2 , #16LOOP: MOVX A , DPTRMOV R0 , AINC DPTRINC R0DJNZ R2 , LOOPEND(3) 建立一个数字 09 的 ASCII 码表,表格放在程序存贮器区首址为 1000H 的十个单元内,编程根据 R0 中的内容来查表,所得结果存放在寄存器 B 中,注意 R0 中的内容不在 09 范围时的处理。ORG 0000HLJMP MAINORG 0030HMAIN: MOV R0,#9MOV DPTR,#TABLEMOV A,R0CJNE A,#10,MAIN1MAIN1: JNC MAINMOVC A,A+DPTRMOV B,ASJMP MAINORG 1000HTABLE: DB 30H,31H,32H,33H,34H,DB 35H,36H,37H,38H,39HEND