1.单片机的指令有几种表示方法?单片机能直接执行的是什么指令格
式?
答:单片机的指令表示方法有两种: <1>用汇编语言的助记符表示; <2>是用机器语言表示。
单片机能够直接执行的是机器语言指令形式的机器码。
2.什么是寻址方式?MCS-51单片机有几种寻址方式?各自有什么特点?各涉及到那些存储空间?
答:指令寻找操作数地址的方式称为寻址方式。MCS-51单片机共有7中寻址方式,包括:立即数寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址和位寻址。
立即数寻址是将操作数直接写在指令中,不需要从其他的存储空间中寻找和获取。它不占用存储空间;
直接寻址是把存放操作数的内存单元的地址直接写在指令中。占用的存储空间为内部RAM区和特殊功能寄存器区;
寄存器寻址是将操作数存放于寄存器中。占用的存储空间为工作寄存器R0-R7、累加器A、通用寄存器B、地址寄存器DPTR和C; 寄存器间接寻址是将存放操作数的内部RAM地址放在特定的寄存器中,指令中只有该寄存器。其占用的存储空间为R0、R1和DPTR。 变址寻址是将基址寄存器与变址寄存器的内容相加,结果作为操作数的地址。DPTR或PC是基址寄存器,A是变址寄存器。
相对寻址是指程序计数器PC以当前值为基准与指令中的相对偏移量(rel)相加,形成新的有效地址。该类寻址方式主要用于跳转指令。 位寻址是指令中直接给出位地址,可以对有位地址的存储单元进行操作。其占用空间为内部RAM中的两个特殊区域:一是内部RAM的位寻址区,二是特殊功能寄存器(SFR)区。
6.试编制程序段,实现把外部RAM2000H单元的内容传到内部RAM20H中的操作。
答:MOV DPTR,#2000H MOVX A,@DPTR MOV 20H,A
8.给出三种交换内部RAM20H单元和30H单元的内容的操作方法。 答(1)MOV A,20H MOV R0,30H XCH A,R0 (2)MOV A,20H XCH A,30H (3)MOV R0,20H MOV 20H,30H MOV 30H,R0
16.若内部RAM(20H)=5EH,指出下列指令的运行结果。
(1)MOV A,20H;将内部RAM20H单元中的内容5EH传给A (2)MOV C,04H;将0组工作寄存器R4中的内容传给Cy (3)MOV C,20H.3;等同于MOV C,bit即将地址03H中的内容传给Cy
19.R1中存放有一个BCD码数,试将其转换成ASC2码,兵存入外部
RAM的1000H单元中。 答:BINASC:
PUSH PSW ANL R1,#0FH ADD R1,#30H MOV DPTR,#1000H MOVX @DPTR,R1 POP PSW RET
20.用查表法编一个子程序,将R3中的BCD码转换成ASC2码。 答:TRANS: PUSH DPH PUSH DPL
MOV DPTR,#TABLE MOV A,R3 MOVC A,@A+DPTR MOV R3,A POP DPL POP DPH RET
TABLE: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H