《嘉应学院电子信息工程系单片机原理及应用》考试题主要涵盖了单片机的基础操作,包括指令系统、数据处理、内存寻址以及控制逻辑等方面的知识点。以下是对这些知识点的详细解释:
一、填空题:
1. `MOV A, R0`:将寄存器R0的内容移动到累加器A中,所以(A)=30H。
2. `MOV A, 30H`:直接将片内RAM(30H)的内容移动到A中,所以(A)=11H。
3. `MOVX A, R0`:这个指令不正确,因为不能用A作为目标地址,应该用MOVX @R0, A来写入片外RAM。
4. `MOV 30H, #30H`:将立即数30H写入片内RAM(30H),所以(30H)=30H。
5. `ADDC A, R0`:累加器A与R0相加并考虑进位,C=1,所以(A)=85H+30H+1=116H=74H。
6. `SUBB A, R0`:A减去R0并考虑借位,C=1,所以(A)=85H-30H-1=54H。
7. `INC @R0`:增加R0指向的片外RAM(30H)的值,所以(30H)=22H+1=23H。
8. `XCH A, 30H`:交换A和片内RAM(30H)的值,所以(A)=11H,(30H)=23H。
9. `CPL A`:取反累加器A,所以(A)=11H的反码,即0EBH。
10. `RLC A`:循环左移,最高位移入C,所以(A)=0ECH,C=0。
11. `ORL A, R0`:按位或操作,所以(A)=85H|30H=85H。
12. `ANL A, R0`:按位与操作,所以(A)=85H&30H=20H。
二、选择题:
1. 二进制数10000101转换为十进制数是133。
2. 补码11111001对应的真值是-7。
3. 微机中堆栈指针的作用是指明栈顶位置。
4. MCS-51单片机地址锁存有效信号输出端是ALE。
5. MCS-51单片机可寻址范围是64KB。
6. 如果RS0=0,RS1=1,工作寄存器单元地址为08H~0FH。
7. 定时器/计数器0用作定时器,工作于方式2,无关位取0,则TMOD=02H。
8. 12根地址线的存储芯片有4KB的存储单元数。
9. 8255A控制字寄存器地址是01H。
10. 错误的语句是"CPL A",因为CPL指令不能用于直接寻址。
三、程序分析:
1. POP指令用于从堆栈弹出数据,所以执行后(DPTR)=(SP)=32H,(30H)=23H,(31H)=20H,(32H)=01H,然后SP减1。
2. ORG 1000H表示起始地址,(7401H)是START的地址,(F8H)是A的地址,(90H)是R0的地址,(CF01H)是DPTR的值,REL是相对地址,根据SJMP指令,REL=1017H-1000H=17H,START=(DPTR)=CF01H,LOOP=90H。
四、编程题:
这部分涉及编写单片机汇编语言程序,例如实现两个内存单元相加并将结果存入特定地址,以及位运算和条件判断等。
1. 要求将30H和31H的内容相加,结果存入32H,并传送到1234H。这可以通过简单的加法指令和数据传送指令实现。
2. 题目要求将位地址01H、02H、03H的内容进行某种运算,并将结果存入04H。具体运算没有给出,但通常涉及位操作,如位与、位或、位异或等。
这些题目覆盖了单片机的基本操作,包括寄存器操作、内存访问、算术运算、逻辑操作、条件跳转和程序结构,这些都是学习单片机原理及应用时必须掌握的基础知识。