单片机技术习题课3、4章.ppt_第1页
单片机技术习题课3、4章.ppt_第2页
单片机技术习题课3、4章.ppt_第3页
单片机技术习题课3、4章.ppt_第4页
单片机技术习题课3、4章.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机技术 习题课 第三 四章 第三章MCS 51指令系统及汇编程序设计 9 已知 A 23H R1 65H DPTR 1FECH 片内RAM 65H 70H ROM 205CH 64H 试分析下列各条指令执行后目标操作数的内容 MOVA R1 MOVX DPTR A MOVCA A DPTR XCHDA R1 A 70H 1FECH 70H A 64H A 60H 12 阅读下面程序段 说明该段程序的功能 MOVR0 40HMOVR7 10CLRALOOP MOV R0 AINCAINCR0DJNZR7 LOOPSJMP 答 把0 1 2 3 9数列送到40H开始的10个单元中 15 编写程序 用位处理指令实现 P1 4 P1 0 P1 1 P1 2 P1 3 的逻辑功能 解 MOVC P1 1ANLC P1 2ORLC P1 0ORLC P1 3MOVP1 4 C 18 编写程序 查找片内RAM的30H 50H单元中出现0的次数 并将查找的结果存入51H单元 解 MOVR0 30HMOV51H 0NEXT CJNE R0 00H NEXT2INC51HNEXT2 INCR0CJNER0 51H NEXTSJMP 22 编写程序 把片外RAM从2000H开始存放的16字节数据 传送到片内从30H开始的单元中 解 MOVDPTR 2000HMOVR0 30HMOVR7 16NEXT MOVXA DPTRMOV R0 AINCDPTRINCR0DJNZR7 NEXTSJMP 第四章单片机C语言及程序设计 18 在某程序中需要定义如下变量 1 定义数码管的显示0 9的共阴极显示代码 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 数组dis code 将其定义在CODE区 答 unsignedcharcodedis code 10 0 x3f 0 x06 0 x5b 0 x4f 0 x66 0 x6d 0 x7d 0 x07 0 x7f 0 x6f 18 在某程序中需要定义如下变量 2 定义定时器 计数器0的赋计数值的高 低字节变量TL0 L和TH0 H 将其定义在DATA区的0 x30 0 x31处 答 unsignedchardataTL0 L at 0 x30 TH0 H at 0 x31 18 在某程序中需要定义如下变量 3 定义长度为20的无符号字符型数组data buf于IDATA区中 答 unsignedcharidatadata buf 20 18 在某程序中需要定义如下变量 4 定义长度为100的无符号字符型数组data array于XDATA区中 答 unsignedcharxdatadata array 100 18 在某程序中需要定义如下变量 5 先定义一个无符号字符型变量status于BDATA区中 再定义8个与status的8个位对应的位变量flag lamp1 flag lamp2 flag machine1 flag machine2 flag port1 flag port2 flag calcu1和calcu2 从低位到高位 答 unsignedcharbdatastatus sbitflag lamp1 status 0 sbitflag lamp2 status 1 sbitflag machine1 status 2 sbitflag machine2 status 3 sbitflag port1 status 4 sbitflag port2 status 5 sbitflag calcu1 status 6 sbitflag calcu2 status 7 21 编写一C51函数 把一整型数按十进制数将其各位分离 分离后放在一无符号数组中 便于显示 要求把高位数作为低下标元素 解 unsignedchardatashu 5 voidINTTOBCD unsignedinttemp unsignedchari for i 4 i 0 i shu i temp 10 temp temp 10 shu 0 temp 22 编写一C51函数 使用专用指针 把片外数据存储器中从0 x100开始的30个字节数据 传送到片内从0 x40开始的区域中 解 voidmain unsignedchardatai dpt unsignedcharxdata xdpt dpt 0 x40 xdpt 0 x100 for i 0 i 30 i dpt i xdpt i 24 在数字滤波中有一种叫做 去极值平均滤波 技术 就是对采集的数据按照从大到小或者从小到大进行排序 然后去掉相同数目的极大值和极小值 对中间部分数据求算术平均值作为采样值 试编写一函数 对存放在片外数据存储器中从0 x150开始的16个单元的采样数据 用选择法进行 去极值平均滤波 把得到的采样数据存放到0 x14f单元中 冒泡排序法 以5个数为例 由小到大排序 54321 43215 32145 21345 12345 共比较4轮 第n轮比较5 n个数 外层循环次数 内层循环次数 试编写一函数 对存放在片外数据存储器中从0 x150开始的16个单元的采样数据 用选择法进行 去极值平均滤波 把得到的采样数据存放到0 x14f单元中 解 voidteaf unsignedcharxdata xptr unsignedchardatatemp i j dptr xptr 0 x150 dptr 0 x14f for j 15 j 0 j 外层循环15次 for i 0 i x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论