《单片机原理》平时作业 一. 基本概念题 附件就是答案,需要的请自助下载 1. 回答问题 ( 每题 2 分,共20分) 1)AT89C51引脚共有多少I/O口线? ( ) 2)AT89C51的ALE信号功能是什么? ( ) 3) 决定程序执行顺序的寄存器是那个? ( ) 4)AT89C51 CPU 中那个中断源在 CPU 响相应后不能自动撤除? ( ) 5) AT89C51中断源分为几个优先级? ( ) 6) AJMP 指令的寻址范围是多少 ( ) 7)-1的补码是多少? ( ) 8) AT89C51中的/PSEN引脚作用是什么? ( ) 9) 机器周期T和Fosc (外加晶振)是什么关系 ? ( ) 10)条件转移指令的转移范围是多少? ( )
2.判别下列指令是否合法, ( 每题 2 分,共20分) 如合法,在题后写合法,无需讲理由;如非法请写非法并讲明理由( 无理由不得分) 1)MOV B, #20H ; 2) MOV @R1, @R0 ; 3) JMP @R0 ; 4) JMP @A+DPTR; 5) DEC @R7; 6) DEC @R0, REL ; 7) XCHD A , @R1 ; 8)CJNE@R1,#30H,REL; 9) JZB, REL ; 10) XRL A,30H ;
3 写出下列指令的源操作数寻址方式 ( 每题 3 分,共15分) 1) MOV DPTR,#1234H ; 2) MOVC A, @A+DPTR 3) MOVC,2BH; 4) CLR PSW.5 5) MOV P0, A
二. 编程与应用 1. (10分)设被加数与加数分别放在以ADR1与 ADR2为初址的片内数据存贮区域中,自低字节起,由低到高依次存放;它们的字节数为L, 要求加的和放回被加数的单元。 请编写子程序, (设L个字节相加后其和为 L 个字节)
2、 (10分)统计自P1口输入的字串中正数、负数、零的个数。设该字符串共20个字符。,(不考虑取数速度匹配问题,即认为每次取出的数都是一个新数)
请编写子程序
3. (10分)设计可多达128路分支出口的转移程序 分支出口的首地址设为 ADDR00, ADDR01……ADDR127 要转移到某分支的信息存放在工作寄存器R2 中 请编出片段散转程序,
4. (15分)将片外RAM首址为 DATA1 的一个数据块传送到片内RAM首址为DATA2的存贮区。数据块最大长度为20个字节。 要求:1. 如果数据中取到0,则停止传送,并统计共传送的个数。 2 . 用子程序编写 3. 子程序出口参数: R6中存放传送个数
|