首页 单片机程序 天津农学院

单片机程序 天津农学院

举报
开通vip

单片机程序 天津农学院1.统计以片外300H开始的8个字节存储单元中偶数的个数,并将结果存于片内30H中。 2.统计以TAB开始的6个字存储单元中奇数的个数。并将结果存于片外30H中。 3.统计以片内40H开始的十个字节存储单元中正数、负数和零的个数,并将其分别存入X (30H)、Y(50H)和Z(60H)三个变量中。 4.找出以片外40H开始的6个单元中第一个7的数的地址,并将其存入片内30H中。 5.求TAB表中班上16位同学的平均成绩,并将结果存入片外300H中 6.求TAB表中6个BCD码的和,并将结果存于片内30...

单片机程序 天津农学院
1.统计以片外300H开始的8个字节存储单元中偶数的个数,并将结果存于片内30H中。 2.统计以TAB开始的6个字存储单元中奇数的个数。并将结果存于片外30H中。 3.统计以片内40H开始的十个字节存储单元中正数、负数和零的个数,并将其分别存入X (30H)、Y(50H)和Z(60H)三个变量中。 4.找出以片外40H开始的6个单元中第一个7的数的地址,并将其存入片内30H中。 5.求TAB表中班上16位同学的平均成绩,并将结果存入片外300H中 6.求TAB表中6个BCD码的和,并将结果存于片内30H和31H中。 7.片内40H开始10H单元中,统计每个单元1的位数,并将位数存于50H开始的单元中 8.统计以片外3000H开始的十个字节存储单元中大于100数的个数。 9.将片内200H开始的十个字节存储单元中数为8的清零。 10.实现将存于片外30H开始的5个字节存储单元中的非组合型BCD码分别转换成ASCII码, 结果存于以片内40H开始的单元中。(不能用查表法) 11.实现将存于TT表中的5个字节存储单元中的组合型(压缩型)BCD码分别转换成ASCII 码,结果存于以片外2000H开始的单元中。 12.求班上30名同学的平均成绩(只保留整数),并将结果存入片内30H(整数)中。 13.在片内30H开始的存储区中,存放14H个带符号数。 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 找出其中最小的一个数,并存 到片外30H单元中。 14.在片内30H开始的存储区中,存放14H个无符号数。要求找出其中最大的一个数,并存 到片外30H单元中。 15.用软件实现1S定时。 16.将存于片外3000H开始的5个字节存储单元中的数从小到大排序后,存于以片外4000H 开始的单元中。 17.统计片外4000H开始的单元中1的个数。 18.求以片内40H开始的十个字节存储单元中偶数的和。 19.求以片外2000H开始的十个字节存储单元中BCD码的和 20.将存于3000H开始的字符串移动到以4000H开始的单元中,并测试字符串的长度。 21.用查表法完成Y=X3 例:将内部RAM单元中20H单元到2FH单元的数传到外部RAM中的2000H到200FH单元中. R2 ← 10H, R0 ←20H DPTR ←2000H A ←@R0 @DPTR ←A R0 ←(R0)+1 DPTR←(DPTR)+1 (R2)-1=0? END ?源程序: ORG 0000H MOV R0,#20H MOV DPTR,#2000H MOV R2,#10H LOOP:MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R2,LOOP SJMP $ END ?设置进行数据传送的内部和外部RAM的首地址?设定循环次数 ?RAM地址加“1” 传送类程序设计 注:被传送数的大小,格式判断存在于片内还是片外 要取数据的大小 传递字或字符串长短及类型的不同 ?片内→片内? 例:将片内40H 单元中的数传到片内60H 中 MOV 60H, 40H ?片内?片外? 例1:将片内40H 传送到片外100H 单元中 MOV A, 40H MOV DPTR, #0100H MOVX @DPTR,A 例2:将片外60H 单元中的数传送到片内40H 单元中 MOV R0,#60H MOVX A,@R0 MOV 40H,A 注;片外必须用指针。用累加器做中间传输。 ?片外→片外? 例1:将片外40H 单元中的数传送到片外60H 中 MOV R0, #40H MOV R1, #60H MOVX A, @R0 MOVX @R1,A 例2:将片外60H 单元中的数传送到片内40H 单元中 MOV R0,#60H MOVX A,@R0 MOV 40H,A 注;片外必须用指针。用累加器做中间传输。 ?片外→片外? 例1:将片外40H 单元中的数传送到片外60H 中 MOV R0, #40H MOV R1, #60H MOVX A, @R0 MOVX @R1,A 例2:将片外400H 单元中的数传送到片外600H 中 MOV DPTR, #0400H MOVX A, @DPTR MOV DPTR , #0600H MOVX @DPTR,A 例3:把以片外400H 开始的十个数传送到以片外600H 开始的十个数中 MOV R2, #06H MOV R3, #00H MOV DPTR,#0400H MOV R7, #10 L1: MOV A, @DPTR INC DPTR MOV R0, DPL MOV R1, DPH MOV DPL, R3 MOV DPH, R2 MOV @DPTR,A INC DPTR MOV R2, DPH MOV R3, DPL MOV DPL, R0 MOV DPH, R1 DJNZ R7, L1 统计程序的设计 ?个数统计? ①统计正数 负数 及 0的个数 例:统计以片内10H 开始的十个字节存储单元中正数,负数和0的个数。并将其分别存入X,Y,Z 三个变量中。 ORG 3000H X EQU R5 Y EQU R6 Z EQU R7 MOV R0,#0AH MOV R1,#10H L1:CLR C MOV X,#0 MOV Y,#0 MOV Z,#0 MOV A,@R1 RLC A JZ L3 JC L2 INC X SJMP L4 L2:INC Y SJMP L4 L3:INC Z L4: INC R1 DJNZ R0,L1 END ②统计奇数及偶数的个数 例:统计以片外2000H开始的十个字节存储单元中偶数的个数,存于片内30H中。 ORG 1000H MOV DPTR,#2000H MOV R0,#0AH CLR R1 L1:MOVX A,@DPTR RRC A JC L2 INC R1 L2: INC DPTR DJNZ R0,L1 END ③统计符合某类型的一类数的个数 例:将片内20H开始的十个字节存储单元中数为8的清零 ORG 1000H MOV R0,#0AH MOV R1,20H L1:MOV A,@R1 CJNE A,#8,L2 MOV @R1,#0 L2:INC R1 DJNZ R0,L1 END ?分类统计? 例:将片内以30H开始的十个字节存储单元中的正数取出,放入40H开始的单元中,负数放入50H开始的单元中,零放在60H开始的单元中。 ORG 1000H MOV R0,#30H MOV R2,#0AH MOV R3,#60H MOV R4,#40H MOV R5,#50H L1:CLR C MOV A,@R0 CJNE A,#0,L2 MOV 43h,R3 MOV R1,43h MOV @R1,A INC R3 SJMP L4 L2:JC L3 MOV 43h,R4 MOV R1,43h MOV @R1,A INC R4 SJMP L4 L3:MOV 43h,R5 MOV R1,43h MOV @R1,A INC R5 L4:INC R0 DJNZ R2,L1 END ·代码转换类程序设计 ?数值进制转换? 二进制数,八进制数,十进制数,十六进制数,BCD 码及ASCII 码之间的转换。 例:实现将存于TT 表中的5个字节存储单元中的组合型(压缩型)BCD 码分别转换成ASCII 码,结果存于以片内50H 开始的单元中。 ORG 1000H MOV DPTR,#TT MOV R2,#05H MOV R1,#50H L1:MOVC A,@A+DPTR MOV 40H,A ANL A,#0FH OR A,#30H MOV @R1,A INC R1 ANL 40H,#0F0H SWAP A OR A,#30H MOV @R1,A INC R1 INC DPTR DJNZ R2,L1 TT:DB 27H,36H,58H… END 求和求平均值 ?求和? 例:求以片外2000H 开始的十个字节单元中BCD 码的和,将和存于片内30H 和31H 中。 ORG 1000H MOV R1,#30H MOV R0,#09 MOV DPTR,#2000H MOVX A,@DPTR CLR C L1: INC DPTR ADDC A,@DPTR DA A MOV @R1,A JNC L2 INC R2 MOV 31H,R2 L2: DJNZ R0,L1 END 求最大最小值 例:在片内30H 开始的存储区中,存放14H 个带符号数。要求找出其中最小数,并存到片外30H 单元中。 ORG 2000H MOV R0,#30H MOV DPTR,#30H MOV R2,#13H MOV A,@R0 L1:INC R0 CLR C SUBB A,@R0 JC L2 MOV A,@R0 L2:DJNZ R2,L1 MOVX @DPTR,A END 例:在片内30H 开始的存储区中,存放14H 个无符号数。要求找出其中最大的个数。并存到片外30H 单元中。 ORG 2000H CLR C MOV R0,#30H SUBB A,R1 MOV DPL,#30H JC L2 MOV R2,#13H MOV A,@R0 MOV A,@R0 MOV R1,A MOV R1,A L2:DJNZ R2,L1 L1:INC R0 MOVX @DPTR,A MOV A,@R0 END 排序 例:将存于片外3000H开始的5个字节存储单元中的数从小到大排序。 ORG 1000H MOV R7,#5 L2:MOV DPTR,#3000H DEC R7 CLR F0 L1:MOVX A,@DPTR INC DPTR MOVX A,@DPTR MOV 2BH,A CLR C SUBB A,2BH JC NEXT XCH A,2BH DEC DPTR MOVX @DPTR,A INC DPTR MOV A,2BH MOVX @DPTR,A SETB F0 NEXT:DJNZ R7,L1 JBC F0,L2 END 查表法 用查表 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 求函数Y= X3( 0≤x≤6),设自变量x存放在R0中Y值存放在R1中。 ORG 1000H X EQU R0 Y EQU R1 MOV A ,X LCALL L1 MOV Y,A RET ORG 1200H L1: INC A MOVC A,@A+PC RET TAB:DB 0,1,8,27,64,125,198 END 定时程序 例:用软件实现1S定时。 ORG 1000H MOV R2,#20 L1:MOV R3,#200 L2:MOV R7,#3EH L3:NOP NOP DJNZ R7,L3 DJNZ R3,L2 DJNZ R2,L1 END 测字符串长度 例:测试40H开始的单元中字符串的长度。(回车符0DH) ORG 0000H MOV R2,#0 MOV R0,#40H L1:CJNE @R0,#0DH,L2 SJMP L3 L2:INC R2 INC R0 LJMP L1 L3:END
本文档为【单片机程序 天津农学院】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_882336
暂无简介~
格式:doc
大小:30KB
软件:Word
页数:15
分类:互联网
上传时间:2019-02-24
浏览量:96