首页 > 应用 > 单片机应用
[导读]
单片机编程:求8个无符号数的平均值。有8个无符号数,存放在内部RAM以20H开始的8个单元中,要求将它们的平均值保存在R2中。;-----------------------------------------------------------------------

单片机编程:求8个无符号数的平均值。
有8个无符号数,存放在内部RAM以20H开始的8个单元中,要求将它们的平均值保存在R2中。
;------------------------------------------------------------------------------
最佳答案:

本文引用地址: http://www.21ic.com/app/mcu/201806/764330.htm

做这个题目,要有两个阶段,先求和,再除以8。程序如下:

;8个无符号数存放在内部RAM以20H开始的8个单元中,先求和:
;
MOV R0, #20H ;设定数据起始地址
MOV R1, #8 ;共有8字节,将循环相加8次
MOV R2, #0 ;R2 R3清零
MOV R3, #0
LOOP:
MOV A, @R0 ;取来一个数字
ADD A, R3 ;和低8位相加
MOV R3, A
JNC QQQ ;无进位转移
INC R2 ;有则高8位加一
QQQ:
INC R0 ;修改地址指针
DJNZ R1, LOOP ;循环8次
;
;至此,求和完毕,和数在R2R3中,下面就要对和数除以8,求得平均值。
;
;除以8,可以编写一段16位数除以8位数的程序,呵呵,那就太长了!
;也可以把这16位数,右移3位,也相当于除以8。
;两个字节,右移1位,就需要6条指令,右移3位,就要用18条指令,还是太长!!!
;
;且看下面,仅仅使用了5条指令,就完成了这个除以8的任务。
;
ANL A, #0F8H
ADD A, R2
RL A
SWAP A
MOV R2, A ;按照要求,把平均值存R2
;
;这是世界上最简捷的16位数(共11个有效位)除以8的程序。
;
SJMP $
END


换一批

延伸阅读

[单片机应用] 单片机I/O口管脚内部结构

单片机I/O口管脚内部结构

学习ARM嵌入式的时候,发现自己对以前学过的数模器件的知识遗忘了不少,按照我的进度本来应该继续学习ARM微处理器控制的课程,但想着后来势必还会遇到相同的问题所以就准备中断一下,杀回来把汇编和一些电路知识再总......

关键字:单片机 I O口管脚 内部结构

[单片机应用] 关于单片机串口发送和接收的问题

关于单片机串口发送和接收的问题

串口初始化过程:    1、确定T/C1的工作方式--TMOD    2、设置T/C初始值----------------------------TH1、TH2    3、启动T/C-----------------------------......

关键字:单片机 串口 发送和接收

[单片机应用] 上位机控制单片机LED

上位机控制单片机LED

整了一天程序,写了个上位机程序和单片机程序。总结下。。。上位机部分:相关参考资料:http://wenku.baidu.com/view/5ea8670403d8ce2f00662322.html1.先添加各控件,添加后的对话框如下图:2.......

关键字:上位机 控制单片机 LED

[单片机应用] 用单片机做一个计算器

用单片机做一个计算器

硬件电路程序#include T89X51.H>#define DIN P1_0#define CLK P1_2#define LOAD P1_1unsigned char key_h,key_l,key_code;unsigned ......

关键字:单片机 计算器

[单片机应用] 串行口异步通信单片机程序设计实例

串行口异步通信单片机程序设计实例

org 0000HAJMP STARTORG 30HSTART:mov SP,#5fh ;mov TMOD,#20h ;T1: 工作模式2mov PCON,#80h ;SMOD=1mov TH1,#0FDH ;初始化波特率(参见表)mov ......

关键字:串行口 异步通信 单片机

[单片机应用] AVR单片机(学习ing)—(十)、ATMEGA16的同步串行接口SPI—02

AVR单片机(学习ing)—(十)、ATMEGA16的同步串行接口SPI—02

1)那就是在之前的介绍中说过,在说一遍~~主机和从机的两个移位寄存器可以被认为是一个公开的16位环形移位寄存器,当数据从主机移向从机时,同时从机饿数据也向相反的放向移向主机。这就意味着在一个以为周期内,主机......

关键字:AVR单片机 ATMEGA16 同步串行接口 SPI

[单片机应用] 单片机轻松入门之三:蜂鸣器

单片机轻松入门之三:蜂鸣器

单片机轻松入门之三蜂鸣器该电路较简单,用PNP型三极管驱动蜂鸣器,当P3.7为低电平时,PN结正向偏置,三极管导通,蜂鸣器发声。程序如下:#include#define uchar unsigned charsbit sounder=P3^......

关键字:单片机 蜂鸣器

[EDA] EDA中的电梯控制器系统的设计技巧分析

EDA中的电梯控制器系统的设计技巧分析

在楼层请求寄存器的置位与复位进程”的设计中,通过楼层选择指示变量DR,电梯所在楼层变量LIFTOR和输入信号UPIN、DOWNIN、ST_CH来判断UR、DR的置位。其判断原则为:若电梯所在楼层为NUM,假设电梯处于运行中,这时若......

关键字:控制器 电梯 技巧

[EDA] 印制电路板的印制图案要宽而短

印制电路板的印制图案要宽而短

印制电路板图上的印制导线是将敷铜板需要的铜箔保存下来,构成连接元器件的导线,本书将这种印制导线称为印制图案。由于电源电路是一种功率电路,因此,主要需根据电路的工作电流决定印制图案的宽度。通常,1mm宽的印......

关键字:电路板 图案

我 要 评 论

网友评论

芯闻号

技术子站

更多

项目外包

更多

推荐博客