51单片机编程求指导。。。3
发布网友
发布时间:2023-11-24 20:05
我来回答
共1个回答
热心网友
时间:2024-11-26 16:43
嘿嘿
楼上的老兄给出的程序也不对呀
看上去挺工整的,错误好几出啊,是得不到正确结果的。
其实算法很简单,只要熟悉一下单片机的加法指令和循环移位指令,自己就可以编写出来。
1
算法:
就是使用指针
连续对20H开始的连续4个单字节二进制数相加,结果存入31H单元,要考虑进位,(进位部分存入31H单元)
求平均值
就是对和除4,可以使用循环右移指令
每移一次
相当于除2
总共2次就行了。
2
楼上的错误:
使用指令
ADD
A,31H
求的和在累加器A里,并没有存入31H
使用指令
MOV
A,31H
;低位送A
RRC
A
;带进位循环右移完成一次除2
同样没有将结果回送给31H单元(保存)
呵呵
满意就选满意回答
(想要正确程序
可以发消息给我)