有关单片机编程的2道题目。希望各位大神可以为我解答,在每一步后标上解释,谢谢!

1、 有两个16位无符号数,放在BLOCK开始的四个单元内,编写程序,求他们的和,并放在接下去的三个单元内。
2、 单片机片内RAM中,自BLOCK单元开始有一组无符号数,数据长度放在BLOCK-1单元,编写程序,把其中大于100的数送到片外STOCK开始的单元中去。

;启动入口========================
ORG 0000H ;复位启动
AJMP START ;
;主程序========================
START: MOV A,#BLOCK ;数据开始地址
MOV R0,A
ADD A,#4 ;存放结果单元低字节
MOV R1,A
;
MOV A,@R0 ;第一个数低字节
INC R0
MOV B,@R0 ;第一个数高字节
INC R0 ;指向第二个数低字节
;
ADD A,@R0 ;加第二个数低字节
MOV @R1,A ;存结果单元第一字节
INC R0 ;指向第二个数高字节
INC R1 ;指向结果单元第二字节
MOV A,B ;第一个数高字节
ADDC A,@R0 ;加第二个数高字节
MOV @R1,A ;存结果单元第二字节
INC R1 ;指向结果单元第三字节
ADDC A,#0 ;存结果单元第三字节
MOV @R1,A ;存入指定单元
END ;结束

;启动入口========================
ORG 0000H ;复位启动
AJMP START ;
;主控程序========================
START: MOV R0,#BLOCK ;数据开始地址
DEC R0 ;BLOCK-1
MOV B,@R0 ;得到数据个数
;
MOV R0,#BLOCK ;数据开始地址
MOV R1,#STOCK ;用来存放结果的地址
;
LOOP: MOV A,@R0 ;取得一个数据
CLR C ;准备比较
SUBB A,#101 ;比较
JC NOS ;不大于100
;
MOVX @R1,A ;存结果
INC R1 ;指向下一单元
;
NOS: INC R0 ;指向下一个数据
DJNZ B,LOOP ;搜索完所有数据
END ;结束
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-04-26
正确程序如下:

1、有两个16位无符号数,放在BLOCK开始的四个单元内,
编写程序,求他们的和,并放在接下去的三个单元内。

MOV A, BLOCK
ADD A, BLOCK + 2
MOV BLOCK + 4, A

MOV A, BLOCK + 1
ADDC A, BLOCK + 3
MOV BLOCK + 5, A

CLR A
ADDC A, #0
MOV BLOCK + 6, A

END

2、单片机片内RAM中,自BLOCK单元开始有一组无符号数,
数据长度放在BLOCK-1单元,
编写程序,把其中大于100的数送到片外STOCK开始的单元中去。

MOV DPTR, #STOCK
MOV R0, #BLOCK
MOV R2, BLOCK - 1
LP:
MOV A, @R0
CLR C
SUBB A, #101
JC NEXT
MOV A, @R0
MOVX @DPTR, A
INC DPTR
NEXT:
INC R0
DJNZ R2, LP

END
第2个回答  2015-04-26
1、
MOV R0,#BLOCK ;被加数低字节地址
MOV R1,#BLOCK+1; 加数地址
CLR C ;进位清零
MOV A,@R0 ;取被加数
ADDC A,@R1 ;相加
INC R0 ;指针+1
INC R1 ;
MOV A,@R0 ;
ADDC A,@R1 ;
MOV @R1,A ;存入
JMP $
END
每次只能给你一道题,你别那么贪追问

还是谢谢你

是室友怂恿我的……

求解释下下面单片机程序的每一步是什么意思,谢谢了
既然你还没学汇编,我就不用专业术语给你解释了,用好理解的方法帮你简单解释下,如果有必要我们再讨论 org 0000h ;表示下一条指令的地址是0000h ljmp 0030h ;跳转到30h处的指令 org 0030h cword:mov a,#0c5h ;cword:人为定义的标号,mov a,#0c5h :把0c5h放入a寄存器里 mov...

在华中科技大学当学渣是一种怎样的体验?
1、比如你看到宿舍都起床去图书馆了,你也不好意思一个人还睡觉吧,也自然跟着早起学习了。虽然人家比你聪明又比你努力。就是骑自行车追别人的飞机,能追多少是多少了啊。2、而且,如果你是学渣,那你前面就有无限的进步空间了啊,碰到问题解决不了,身边的大学霸们还很热心给你解答,获益良多。不...

紧急求助高分200。关于在深圳找工作的问题,请认真看完我的问题...
客户经理职位,可以说和我这个专业是丝毫没有关系了,不过中国银行的发展前景是十分远大的,提供的平台是国际化的,因此我选择了它。当时光投简历的人都排成了几条长队,而我在短短几分钟的投递简历面试中当场获得了OFFER——一张写有第二轮面试时间和地点的通知条。看到旁边那些西装革履的中山大学、厦门大学金融和经济...

相似回答
大家正在搜