《单片机》编程题题库答案_第1页
《单片机》编程题题库答案_第2页
《单片机》编程题题库答案_第3页
《单片机》编程题题库答案_第4页
《单片机》编程题题库答案_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、单片机原理及应用编程问题题库参考了答案六、编程(每个主题10分)1、内部RAM 30H和31H单元中保存2个0-9的ASCII代码(高位字节之前)。 请转换为压缩BCD代码(高位字节之前),保存到外部RAM 2300H单元中。解: ORG 0HPS的开始ORG 30H开始: mov a,30HANL A、#0FHSWAP A公司PR PR 0,aPS、31HANL A、#0FHPS,PSMOV DPTR、#2300HMOVX DPTR,a结束评分方法:不需要写程序的评论。 编程的想法正确得了5分,命令写得完全得了10分。 只要写少量的命令,可以适当地给出1-3分。如果有微小的命令书错误,可以适

2、当地减去13分。2 .将内部RAM 30H-35H单元中保存的压缩型BCD代码转换为相应的ASCII代码,并依次保存到从外部RAM 2100H开始的单元区域中。ORG 0HPS的开始ORG 30H开始: mov r0、#30HMOV R2,#06HMOV DPTR、#2100HLOOP:MOV A、R0SWAP A公司ANL A、#0FHORL A,#30HMOVX DPTR,aINC DPTRMOV A、R0ANL A、#0FHORL A,#30HMOVX DPTR,aINC DPTRINC R0DJNZ R2,LOOPSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命

3、令完全写得10分。 只要写少量的命令,就可以适当地给出1-3分。如果有微小的命令书错误,就可以适当地减去13分。3、内部RAM 20H和从30H开始的单元中分别保存16进制数,因此,请将对应的单元的内容相加(与溢出无关),保存在从外部RAM 2000H开始的单元中。解: ORG 0PS的开始ORG 30H开始: mov r0、#20HMOV R1、#30HMOV DPTR、#2000HMOV R2、#08H; 因为每个单元存储两个十六进制数,所以十六进制数占用八个单元LOOP: MOV A、R0ADD A、R1MOVX DPTR,aINC R0PS PS K 1INC DPTRDJNZ R2,

4、LOOPSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命令完全写得10分。 只要写少量的命令,就可以适当地给出1-3分。如果有微小的命令书错误,就可以适当地减去13分。4、请编制无多字节符号减法程序。 被减数请存储在来自内部RAM 20H的8个单元中,减数请存储在来自内部RAM 30H的8个单元中,差请存储在来自外部RAM 2000H的8个单元中,借位请存储在OV标志中。 注:所有数据都以从低字节到高字节的顺序存储。PS 0PS的开始ORG 30H开始: mov r0、#20HMOV R1、#30HMOV DPTR、#2000HMOV R2、#08HCLR CLOOP:

5、 MOV A、R0SUBB A、R1MOVX DPTR,aINC R0PS PS K 1INC DPTRDJNZ R2,LOOPPR R,PSSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命令完全写得10分。 只要写少量的命令,就可以适当地给出1-3分。如果有微小的命令书错误,就可以适当地减去13分。5 .内部RAM 40H和41H的单元中,保存了2个0-9的ASCII代码(高位字节前),因此请转换为压缩BCD代码(高位字节前),并保存在外部RAM 2000H的单元中。解: ORG 0HPS的开始ORG 30H开始: mov a,40HANL A、#0FHSWAP A公

6、司PR PR 0,aPS、41HANL A、#0FHPS,PSMOV DPTR、#2000HMOVX DPTR,a结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命令完全写得10分。 只要写少量的命令,只要有可以适当地给出1-3分的微小的命令书错误,就可以适当地减去13分。6 .将内部RAM 20H-2FH单元中存储的压缩型BCD代码(上位上位上位)转换为相应的ASCII代码,并依次保存在来自外部RAM 1000H的单元区域中。ORG 0HPS的开始ORG 30H开始: mov r0、#20HMOV R2、#10HMOV DPTR、#1000HLOOP: MOV A,R0SWAP A

7、公司ANL A、#0FHORL A,#30hz (或ADD A,#30hz )MOVX DPTR,aINC DPTRMOV A、R0ANL A、#0FHORL A,#30hz (或ADD A,#30hz )MOVX DPTR,aINC DPTRINC R0DJNZ R2,LOOPSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命令完全写得10分。 只要写少量的命令,可以适当地给出1-3分。如果有微小的命令书错误,可以适当地减去13分。7、内部RAM 30H和38H开始的单元中,分别存储了8个压缩BCD代码,将对应的单元的内容相加(不考虑溢出),存储在外部RAM 1000H

8、开始的单元中。解: ORG 0PS的开始ORG 30H开始: mov r0、#30HPS R1、#38HMOV DPTR、#1000HMOV R2、#08LOOP: MOV A、R0ADD A、R1PSMOVX DPTR,aINC R0PS PS K 1INC DPTRDJNZ R2,LOOPSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得了5分,命令写得完全得了10分。 只要写少量的命令,可以适当地给出1-3分。如果有微小的命令书错误,可以适当地减去13分。8 .请编制一个无多字节符号的加法程序。 被加数保存在内部RAM 20H到8个单元中,附加数保存在内部RAM 30H到8

9、个单元中,外部RAM 2000H到8个单元中,请进位到F0标志中进行保存。 注:所有数据都以从低字节到高字节的顺序存储。PS 0PS的开始ORG 30H开始: mov r0、#20HMOV R1、#30HMOV DPTR、#2000HMOV R2、#08HCLR CLOOP: MOV A、R0ADDC A、R1MOVX DPTR,aINC R0PS PS K 1INC DPTRDJNZ R2,LOOPPR K 0,cSJMP $结束评分方法:不需要写程序的评论。 编程的想法正确得5分,命令完全写得10分。 如果只写少量的命令,可以适当地给出1-3分,如果有微小的命令书错误,可以适当地减去13分。请将2个9、8字节压缩BCD代码存储在从内部RAM 30H和40H开始连续的单元(低位字节之前)中,将两者合计(与溢出无关),并从外部RAM 1000H开始存储在单元中。解: ORG 0MOV R0、#30HMOV R1,#40HMOV DPTR、#1000HMOV R2、#8PS SLOOP: MOV A、R0ADDC A、R1PSMOVX DPTR,aINC R0PS PS K 1INC DPTRDJNZ R2,LOOPSJMP $结束评分方法:程序的设计构想可以正确地得到5分,可以给只写了一部分命令的学生适当的14分,程序的编制可以正确地得到满分,如果有

温馨提示

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

评论

0/150

提交评论