单片机上机试题1.doc

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机上机试题1.doc

1.片内RAM 40H、41H单元中分别存放着两个8位二进数,要求取出两个单元中的低半字节合并成一个字节存放在42H。(40H的低半字节在高位上) 常用直接寻址方式: ORG 0000H START: MOV A,40H ANL A,#0FH SWAP A MOV 42H,A MOV A,41H ANL A,#0FH ORL 42H,A SJMP $ END 采用间址: ORG 0000H START: MOV R1,#40H MOV A,@R1 ANL A,#0FH SWAP A INC R1 XCH A,@R1 ANL A,#0FH ORL A,@R1 INC R1 MOV @R1,A SJMP $ END 使用变量: BUF EQU 40H ORG 0000H MOV R1, #BUF MOV A, @R1 ANL A, #0FH SWAP A INC R1 XCH A, @R1 ANL A, #0FH ORL A, @R1 INC R1 MOV @R1, A SJMP $ END 2. 编制程序使y按下式赋值: VAR EQU 30H FUNC EQU 31H START: MOV A,VAR JZ COMP JNB ACC.7,POSI MOV A,#0FFH SJMP COMP POSI: MOV A,#01H COMP: MOV FUNC,A SJMP $ END 3. 求无符号数累加和。 片内RAM从60H开始的连续8个单元数据之和,放在R3R4中 ORG 0000H LJMP ADD1 ORG 0100H ADD1: MOV R3,#00H MOV R4,#00H MOV R2,#8 MOV R0,#60H LOOP: MOV A,R4 ADD A,@R0 MOV R4,A CLR A ADDC A,R3 MOV R3,A INC R0 DJNZ R2,LOOP SJMP $ END 4已知数据0~9的平方,设变量x的值在工作寄存器R0中,查表后求x2的值放回累加器,试编制程序。 ORG 0000H MOV A,R0 MOV DPTR,#TABLE MOVC A,@A+DPTR SJMP $ TABLE:DB 00H,01H,04H,09H,16H,25H,36H,49H,64H,81H END 5. 用程序实现c a2+b2。设a、b均小于10,a存在片内RAM31H单元中,b存在32H单元中,把c存入33H单元中。 ORG 0000H MOV SP,#60H MOV A,31H LCALL SQR MOV R1,A MOV A,32H LCALL SQR ADD A,R1 MOV 33H,A L: SJMP L ;子程序 SQR: MOV DPTR,#TAB MOVC A,@A+DPTR RET TAB: DB 0,1,4,9,16,25,36,49,64,81 END 6. P1.0~P1.3为输出口, P3.0~P3.3 为输入口,使LED灯显示开关的状态。 ORG 0000H L1:MOV C, P3.0 MOV P1.0,C MOV C, P3.1 MOV P1.1, C MOV C, P3.2 MOV P1.2, C MOV C, P3.3 MOV P1.3, C SJMP L1 END 7. 使用外部中断0,以P1口的8个LED灯显示外部中断次数。每中断一次,LED指示灯显示按照二进制加1。同时,采用P3.4~P3.7控制4个LED灯进行“跑马灯” 循环显示,来模拟CPU执行主程序。 ORG 0000H LJMP MAIN

文档评论(0)

书屋 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档