试编写程序,将内部RAM单元中DATA1开始的20个单字节数依次与DATA2单元为起始地址的20个单字节数据进行交换。
正确答案
2 DATA2 EQU #50H
3 LEN EQU #16
4 ORG 0H
0000 7830 5 MOV R0,DATA1
0002 7950 6 MOV R1,DATA2
0004 7A10 7 MOV R2,LEN
0006 E6 8 EXC:// MOV A,@R0
0007 C7 9 XCH A,@R1
0008 F6 10 MOV @R0,A
0009 08 11 INC R0
000A 09 12 INC R1
000B DAF9 13 DJNZ R2,EXC
14 END
答案解析
相似试题
(简答题)
试编写一程序,将外部数据区DATA1单元开始的50个单节数逐一依次移动到内部RAM中DATA2单元开始的数据区中。
(简答题)
试编写一程序,查找内部RAM单元的20H~50H中是否有0AAH这一数据,若有,则将51H单元置为01H,若没有,则使51H单元置0。
(简答题)
若DATA1与DATA2都是内存单元的地址,编写一段程序实现将DATA1单元开始的100个数传送到DATA2开始的存储区内的功能。
(简答题)
在以3000H为首地址的外部RAM中,存放了14个以ASCII码表示的0~9的数,试编写程序将它们转换成BCD码,并以压缩BCD形式存放在以2000H为首地址的外部RAM中。
(简答题)
假设数据项定义如下: DATA1DB‘HELLO!GOODMORNING!’ DATA2DB20DUP(?) 用串操作指令编写程序段,使其分别完成以下功能: 从左到右将DATA1中的字符串传送到DATA2中。 传送完后,比较DATA1和DATA2中的内容是否相同。 把DATA1中的第3和第4个字节装入AX。 将AX的内容存入DATA2+5开始的字节单元中。
(简答题)
试编写程序,将BUFFER中的一个8位二进制数转换为ASCII码,并按位数高低顺序存放在ANSWER开始的内存单元中。
(简答题)
在外部RAM中BLOCK开始的单元中有一数据块,数据长度为LEN,试编程统计其中的正数、负数和零的个数分别存入内部RAM的Pcount、Mcoun和Zcount单元。
(简答题)
设变量单元A、B、C存放有3个数,若3个数都不为零,则求3个数的和,存放在D中;若有一个为零,则将其余两个也清零,试编写程序。
(简答题)
请编写程序使在本地磁盘上建立文件data1.dat,随机写入10个大写字母和10个小写字母,然后将其中的大写字母转换成小写字母,小写字母转换成大写字母后仍保存在该文件中。