班级: 学号: 姓名: 成绩:
实验二 拆字、拼字程序
一 实验目的 掌握汇编语言设计和调试方法,熟悉键盘操作。二 实验内容 1.把2000H的内容拆开,高位送2001H低位,低位送2002H低位,2001H、2002H高位清零,一般本程序用于把数据送显示缓冲区时用。2. 把2000H、2001H的低位分别送入2002H高低位,一般本程序用于把显示缓冲区的数据取出拼装成—个字节
三 实验步骤 ⑴将存储器单元的D0~D7总线接口用8芯排线或8芯扁平线与数据总线单元D0~D7的任一接口相连,存储器单元的A0~A7地址接口与地址总线单元(低8)A0~A7的任一接口相连,存储器单元的A8~A15地址接口与地址总线单元(高8)A8~A15的任一接口相连。 ⑵存储器单元的MWR与控制总线单元的IOW相连。 ⑶存储器单元的MRD与控制总线单元的IOR相连。 ⑷存储器单元的MACS与地址总线单元的A15相连。
编译、装载程序,以连续或单步方式运行程序,检查2000~20FFH中执行程序前后的 变化。
四 思考 1.将2000的高低位分别送入3000H、3001H的高位, 3000H、3001H低位清零;
;拆字程序
ORG 0660H
SE02: MOV DPTR,#2000H
MOVX A,@DPTR
MOV B,A
SWAP A
ANL A,#0F0H
MOV DPTR,#3001H
MOVX @DPTR,A ;
MOV DPTR,#3000H
MOV A,B
ANL A,#0F0H
MOVX @DPTR,A
SJMP $
END
2.把片内20H,21H的高位拼在一起送到片内30H单元。
如何修改程序。请把修改之后的程序和运行的结果截图。
拼字程序
ORG 0680H
SE03: MOV R0,#20H
MOV A,@R0
ANL A,#0F0H
SWAP A
MOV B,A
INC R0
MOV A,@R0
ANL A,#0F0H
ORL A,B
MOV R1,#30H
MOV @R1,A
SJMP $
END
展开阅读全文