单片机考试复习_第1页
单片机考试复习_第2页
单片机考试复习_第3页
单片机考试复习_第4页
单片机考试复习_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

精选文库1-1微处理器、微型计算机和微型计算机系统的概念是什么?它们之间的关系如何?微处理器是将中央处理单元(CPU)集成在一块半导体芯片上。包括控制部件、算术逻辑单元和寄存器三个部分,是构成微型计算机的核心部件。微处理器简称MPU微型计算机以微处理器MPU为核心,再配以相应的半导体存储器(RAM和ROM)、I/O接口和中断系统等,并由系统总线连接起来组装在一块或者多块印刷电路板上构成的计算机。微处理计算机系统以微型计算机为核心,再配以相应的外部设备、电源、辅助电路和控制微型计算机工作的软件就构成了完整的微型计算机系统。1-2微处理器分哪几代?各代微处理器的主要特点是什么?第一阶段 电子管计算机(19461957年)主要特点是:(1)采用电子管作为基本逻辑部件,体积大,耗电量大,寿命短,可靠性大, 成本高。(2)采用电子射线管作为存储部件,容量很小, 后来外存储器使用了磁鼓存储信息,扩充了容量。(3)输入输出装置落后,主要使用穿孔卡片,速度慢,容易出去使用十分不便。 (4)没有系统软件,只能用机器语言和汇编语言编程。第二阶段 晶体管计算机 (19581964年)主要特点是:(1)采用晶体管制作基本逻辑部件,体积减小,重量减轻,能耗降低,成本下降,计算机的可靠性和运算速度均得到提高。(2)普遍采用磁芯作为贮存器,采用磁盘/磁鼓作为外存储器。(3)开始有了系统软件(监控程序),提出了操作系统概念,出现了高级语言。3.第三阶段 集成电路计算机 (19651969年)主要特点是:(1)采用中,小规模集成电路制作各种逻辑部件,从而使计算机体积小,重量更轻,耗电更省,寿命更长,成本更低,运算速度有了更大的提高。(2)采用半导体存储器作为主存,取代了原来的磁芯存储器,使存储器容量的存取速度有了大幅度的 提高,增加了系统的处理能力。(3)系统软件有了很大发展, 出现了分时操作系统, 多用户可以共享计算机软硬件资源。(4)在程序设计方面上采用了结构化程序设计,为研制更加复杂的软件提供了技术上的保证。4.第四阶段 大规模、超大规模集成电路计算机 (1970年至今)1-6.程序计数器PC的作用是什么?它依靠什么功能来保证程序的连续执行?在8位机中pc通常有二进制多少位?答案:程序计数器pc的作用是指示微处理器机将要执行的下一条指令的地址,pc靠自动累加1 保证程序的连续运行,在8位机中pc通常有二进制16位。2-3 8051单片机的存储器分哪几个空间?通过什么信号来区别不同空间的寻址?答案:8051单片机的存储器分为片内数据存储器,片外数据存储器,片内程序存储器,片外程序存储器。区分片内,片外数据存储器通过指令MOV和MOVX来区分,EA用来区分片内程序存储器(ROM)和片外程序存储器(ROM), 片内ROM地址为0000H-0FFFH此时/EA=1;片外ROM地址为0000H-0FFFFH此时/EA=0。2-5 在ROM中,0000H、0003H、000BH、0013H、001BH、0023H这6个单元有什么特定含义?答案:(1)0000H:单片机复位后,pc=0000H,程序开始从0000H执行指令,故系统必须从0000H单元开始取指令,执行程序。(2)0003H:外部中断0入口地址(3)000BH:定时器0中断入口地址。(4)0013H:外部中断1入口地址(5)001BH:定时器1中断入口地址 (6)0023H:串行口中断入口地址,在系统中断响应后,将自动转入到各中断入口地址处执行程序。2-6 内部RAM低128单元划分为哪三个主要部分?各部分主要功能是什么?答:分为三部分:工作寄存器去,位寻址区,用户RAM区(堆栈、数据缓冲)。(1) 工作寄存器区(00H-1FH):32个RAM单元共分四组,每组8个寄存单元(R0-R7)。寄存器常用于存放操作数及中间结果等。(2)位寻址区(20H-2FH):此部分16个单元的每一位都有一个8位表示的位地址,位寻址取得每一个单元既可作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行位操作。(3)用户RAM区:也是数据缓冲区,一般用于存放用户数据及作堆栈区使用。27:51单片机/EA信号有何功能?8031的该信号引脚如何处理?答:EA是访问外部ROM的选通信号,低电平有效。用来区分片内程序存储器和片外程序存储器,在使用8031时应接地。2-9.程序状态字的作用是什么?常用的状态位有那几位?作用是什么?答:PSW:主要起着标志寄存器的作用。常用的状态位及作用:(1)CY:进位标志位,在执行某些算术和逻辑指令时,可以被硬件或软件置位或清零。在算术运算中它可作为进位标志,在位运算中,它作累加器使用,在位传送、位与和位或等位操作中,都要使用进位标志位。(2) AC:辅助进位标志,进行加法或减法操作时,当发生低四位向高四位进位或借位时,AC由硬件置“1”,否则AC位被置“0”。在进行十进制调整指令时,将借助AC状态进行判断。(3)用户标志位F0:该位为用户定义的状态标记,用户根据需要用软件对其置位或清零,也可以用软件测试F0来控制程序的跳转。(4)RS1和RS0(工作寄存器组选择位).(5)OV:溢出标志位,它反映运算结果是否溢出,溢出时则由硬件将OV位置”1”;否则置”0”。(6)PSW.1:此位为未定义位。(7)P:奇偶标志位,作用是在每条指令执行完后,单片机根据ACC的内容对P位自动置位或复位,若累加器ACC中有奇数个”1”,则P=1;否则P=0。2-10开机复位后,CPU使用哪一组工作寄存器?它们的地址是什么?如何改变当前工作寄存器组?答案:开机复位后,CPU使用第0组工作寄存器,它们的地址是00H到07H,对程序状态字PSW中的RS1和RS0两位进行编程设置,可指令和改变当前工作寄存器组。RS1,RS0=00H时,当前工作寄存器组被指定为0组;RS1,RS0=01H时,当前工作寄存器组被指定为1组;RS1,RS0=10H时,当前工作寄存器组被指定为2组;RS1,RS0=11H时当前工作寄存器组被指定为3组。2-11.SP表示什么?有几位?作用是什么?复位后SP的内容是什么?答:spB表示堆栈指针,有8位,作用是指示堆栈顶部在内部RAM中的位置,指明栈顶元素的地址,复位后SP初始化为07H,执行PUSH或CALL指令时,在存储 数据前SP自动加1,使堆栈从08H开始。2-12. 程序设计时,为什么有时要对复位后的堆栈指针SP重新赋值?如果在操作中需要使用两组工作寄存器,SP的初值应该是多大?2-18试说明8051的震荡周期,机器周期,指令周期是如何分配的。当震荡脉冲频率为6mhz时,机器周期是多少?答:节拍:P 振荡脉冲周期。状态:用S表示,时钟信号周期,一个状态包含两个节拍。机器周期:一个机器周期等于6个状态周期,一个机器周期由12个振荡脉冲周期组成。指令周期:执行一条指令所需要的时间。当振荡频率为6MHZ时,一个机器周期为(1/6MHZ) *12=2微秒3-1.简述MCS-51有哪几种寻址方式?各有什么特点?答:MCS-51的寻址方式有七种:1.直接寻址:指令中直接给出操作数所在的单元地址或位地址。2.立即寻址:在指令中紧跟在操作码之后的字节是操作数 。 3.寄存器寻址:操作数在指令中给出的寄存器内 。4.寄存器间接寻址:指令中指定的寄存器内存的是操作数的地址 。5.变址寻址:指令中给出由基址加变址形成的16位地址作为操作数的地址 。6.相对寻址:指令中给出相对偏移量,该相对偏移量与PC当前值求和得到转移地址。7.位寻址:指令中给出的位地址或位寄存器里存是所寻的位操作数。3-2.MCS-51指令按指令功能分为哪几类?每类的作用是什么?答:按指令功能分为5类:(1)数据传送指令:用于数据的传送与交换和栈操作。(2)算术运算指令:用来作算术四则运算,增量,减量及二-十进制调整。(3)逻辑运算指令:用作”与“,”或“,”异或“,”清除“,”求反“,”左右移位“等逻辑操作。(4)位操作指令:用来作与,或,清除,置位,求反等布尔操作及位传送操作。(5)控制转移指令:用来改变计数器PC值,以控制程序走向,有转移,调用及返回操作。3-4 指出下面每条指令的寻址方式:30H在不同的指令中代表什么含义?解:要从目的操作数和源操作数两个方面答。(1)MOV A,#30H ;目的操作数为寄存器寻址,源操作数为立即寻址30H 立即数(2)MOV 30H,R1 ;目的操作数为直接寻址,30H是直接字节地址,源操作数为寄存器间接寻址(3)MOV C,30H ;目的操作数为寄存器寻址,源操作数为位寻址 30H 位地址(4)MOV 30H,R5 ;目的操作数为直接寻址,30H是直接字节地址,源操作数为寄存器寻址(5)MOVX A,DPTR ;目的操作数为寄存器寻址,源操作数为寄存器间接寻址(6)MOVC A,A+PC ;目的操作数为寄存器寻址,源操作数为基址加变址寄存器间接寻址(7)JC LAB1 ;相对寻址(8)SJMP LAB2 ;相对寻址3-5 运行下列程序后各单元及A、PSW的内容的变化。机器码。解:本题目的是每条指令执行后对标志位的影响情况。机器码是了解指令的字节数和格式。1、MOV A,#2 ;(A)=02 H 0000 0001(PSW)2.机器码:74H 0F5H75H 30H 9BH78H 30H24H 28H36H1.机器码:74H 02H79H 30H0F7H 89H 35H0C9HMOV R1,#30H ;(R1)=30H 0000 0001MOV R1,A ;(R1)=(30H)=02 H 0000 0001MOV 35H,R1 ;(35H)=30H 0000 0001XCH A,R1 ;(A)=30H, (R1)= 02 H 0000 0000 2. MOV A,#0F5H ;(A)=0F5H 00000000MOV 30H,#9BH ;(30H)=9BH3.机器码:0C3H 75H 40H 7AH74H 92H78H 40H96HMOV R0,#30H ;(R0)=30HADD A,#28H ;(A)=1D H 10000000ADDC A, R0 ;(A)=0B9H 010000013. CLR C ;(CY)=0MOV 40H,#7AH ;(40H)=7AHMOV A,#92H ;(A)=92H 00000001MOV R0,#40H ;(R0)=40HSUBB A,R0 ;(A)=92H-7AH-0=18H,(PSW)=44H=010001004.机器码:74H 79H 75H 30H 89H25H 30H0D4H 0C4H4. MOV A,#79H ;(A)=79H 00000001MOV 30H,#89H ;(30H)=89HADD A,30H ;(A)=02H 11000001 DA A ;(A)=68H 10000001SWAP A ;(A)=86H 100000013-6 写出能完成下列数据传送的指令1 R1内容传送到R0 MOV A,R1;MOV R0,A(2)内部RAM25H单元内容送到 35H单元 MOV 35H,25H 或MOV A,25H ;MOV 35H,A (3)内部RAM25H单元内容送到 P1口 MOV A,25H ;MOV P1,A;MOV P1,25H ;MOV 90H,25H(4)内部RAM40H单元内容送外部RAM 2005H单元 MOV A,40H;MOV DPTR,#2005H;MOVX DPTR,A(5)外部RAM3000H单元内容送内部RAM 25H单元 MOV DPTR,#3000H; MOVX A,DPTR;MOV 25H,A(6)外部ROM1000H单元内容送内部RAM 35H单元MOV DPTR,#1000H; CLR A ;MOVC A,A+DPTR;MOV 35H,A (7)外部ROM4000H单元内容送外部RAM4000H单元MOV DPTR,#4000H; CLR A;MOVC A,A+DPTR;MOVX DPTR,A(8)外部RAM 1000H单元内容送SP堆栈指针 MOV DPTR,#1000H;MOVX A,DPTR; MOV SP,A3-9 试写出完成如下操作的程序(1)外部RAM1000H单元中的低4位变”0”,其余位不变 ORG 0000HMOV DPTR,#1000HMOVX A,DPTRANL A,#11110000B MOVX DPTR,ASJMP $(2) 使内部RAM50H单元中的低4位变”1”,其余位不变。 ORL 50H,#00001111B(3)使内部50H单元中的高3位变反,其余位不变XRL 50H,#11100000B(4)使内部 RAM50H 单元中的高4位变”1”,低4位变0MOV 50H,#11110000B 或ORL 50H,#0F0H ANL 50H,#0F0H(5)使内部RAM50H单元中的所有位变反XRL 50H,#0FFH 3-10 .试编写程序与内部RAM30H位首地址的20个数据传送,目的地址为外部RAM以3000H为首地址的区域ORG 0000HMOV R0,#30HMOV DPTR,#3000HMOV R7,#20LOOP1: MOV A,R0MOVX DPTR,AINC R0INC DPTRDJNZ R7,LOOP1SJMP $END3-12 已知(SP)=53H,(PC)=37FEH ,执行ACALL 3A00H 后SP及程序计数器pc中内容是什么?解:37FEH: ACALL 3A00H 3800H:1)PC当前值:(PC)+2=37FEH+2=3800H,为返回地址2)将PC当前值压入堆栈 (SP+1)=(54H)=00H ;PCL (SP+1)=(55H)=38H ;PCH (SP)=55H 3)将子程序入口地址赋给PC(PC)=3A00H4-1 20H单元的两个BCD码相乘,结果以BCD码的形式存于21H单元当中。 ORG 0000H MOV 20H,#56H mov B,20hanl B,#0Fhmov A,20hanl A,#0F0hswap Amul ABmov B,#10div AB swap Amov 21h,A mov A,Borl 21h,Asjmp $END4-2设一个加数在50H52H单元中,另一个加数在53H55H中,进位存放在位地址00中,试编程实现两数求和。 ORG 0000hONE DATA 50HTWO DATA 53H MOV R0,#ONE MOV R1,#TWO CLR C MOV R2,#3 LOOP: MOV A,R0 ADDC A,R1 MOV R0,A INC R0 INC R1 DJNZ R2,LOOP MOV 00H,C SJMP $ END4-3 试用除法指令将20H单元的两位BCD码变成ASCII码后存入21H和22H单元。ORG 0000HMOV 20H,#67H mov A,20hmov B,#10Hdiv ABorl A,#30hmov 21h,Amov 22h,Borl 22h,#30hsjmp $END4-6.设自变量X为一无符号数,存放在内部RAM的VAX单元,函数Y存放在FUNC单元,请编写出满足如下关系的程序:Y=x x=50,5X 50X=20, 2x X20ORG 0000HVAX EQU 30HFUNC EQU 31HMOV VAX,#55;15;20;25;50;55MOV A,VAXCJNE A,#20,DO1DO1:JNC DO2MOV B,#2Mul ABSJMP MEMDO2:CJNE A,#50,DO3DO3:JNC MEMMOV B,#5MUL ABMEM:MOV FUNC , ASJMP $END5-2什么叫I/O接口?I/O接口的作用是什么?I/O接口是计算机和外设进行数据交换的桥梁。I/O接口的作用:(1)锁存作用:防止由于CPU速度快,外设慢而产生的丢数现象(2)隔离作用:防止DB上的信息重叠(3)变换作用:在CPU与外设之间进行信息类型、电平、传送接收方式变换(4)联络作用:在CPU与外设之间进行联络,READY BUSY5-3 I/O端口有哪两种编址方式?各有什么特点?I/O端口编址方式:统一编址、独立编址。(1)统一编址:I/O接口与内存储器采用一套地址,完全相存储器单元一样处理,使用访问存储器的指令。如:MOVX 类指令。(2)独立编址:采用一套与存储器不同的地址,利用/MREQ(存储器请求)和/IORQ(输入输出请求), CPU 有专门的I/O指令 如:IN, OUT 。5-4 I/O数据有哪四种传送方式?无条件传送方式,条件传送方式(查询方式),中断方式,存储器直接存取(DMA)方式。5-8什么叫中断源?mcs-51有那些中断源?各有什么特点?产生中断的请求源称为中断源。MCS-51中断系统共有5个中断请求源:(1)外部中断请求0,中断请求标志为IE0。(2)外部中断请求1,中断请求标志为IE1。(3)定时器/计数器T0溢出中断请求,中断请求标志为TF0。(4)定时器/计数器T1溢出中断请求,中断请求标志为TF1。(5)串行口中断请求,中断请求标志为TI或RI。特点:2个外部中断源,3个内部中断源。 5-14 8031有几个中断优先级,如何设定? 答: 8031有两个中断优先级,对IP寄存器中的各位进行设定,置1的为设为高级,为0的位设为低级。其中: IP.0 PX0 例:SETB PX0 置(外部中断0)/INT0为高级,CLR PX0 则设为低级;IP.1 PT0 T/C0的中断优先级设置位IP.2 PX1 /INT1的中断优先级设置位 IP.3 PT1 T/C1的中断优先级设置位IP.4 PS 串行口的中断优先级设置位5-12(见资料)5-16.MCS-51响应中断的条件是什么

温馨提示

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

评论

0/150

提交评论