C51语言复习题参考标准答案
51单片机c语言考试题目及答案

51单片机c语言考试题目及答案一、选择题(每题2分,共10分)1. 下列关于51单片机的描述,错误的是()。
A. 51单片机是一种8位微控制器B. 51单片机具有丰富的I/O端口C. 51单片机的内部RAM是256字节D. 51单片机的时钟频率不能超过12MHz答案:D2. 在51单片机中,下列哪个寄存器用于存储当前正在执行的指令的地址?()A. SPB. PCC. DPTRD. PSW答案:B3. 51单片机的定时器/计数器可以工作在以下哪种模式?()A. 定时模式B. 计数模式C. 定时和计数模式D. 以上都是答案:D4. 51单片机的中断向量表中,外部中断0的中断向量地址是()。
A. 0003HB. 000BHC. 0013HD. 001BH答案:B5. 在51单片机的C语言编程中,下列哪个关键字用于定义一个函数?()A. intB. voidC. functionD. define答案:A二、填空题(每题2分,共10分)1. 51单片机的内部RAM分为______区和______区。
答案:工作寄存器;位寻址2. 51单片机的定时器/计数器0和定时器/计数器1的中断优先级分别是______和______。
答案:低;高3. 在51单片机的C语言编程中,使用______关键字可以定义一个全局变量。
答案:extern4. 51单片机的EA位是______位,它控制着______中断的总开关。
答案:总中断;所有5. 51单片机的定时器/计数器溢出时,会自动向______寄存器写入______。
答案:计数器;1三、简答题(每题5分,共20分)1. 简述51单片机的中断系统是如何工作的?答案:51单片机的中断系统由中断向量表、中断优先级和中断服务程序组成。
当一个中断事件发生时,单片机会自动将当前程序的地址存入堆栈,然后跳转到中断向量表中对应的中断服务程序地址执行中断服务程序。
中断服务程序执行完毕后,单片机会从堆栈中恢复程序的地址,继续执行被中断的程序。
C51语言复习题参考答案.

一、单项选择题:(每小题2分,共10分。
在每小题备选答案中选出一个正确答案,并将正确答案的代码填在题中括号内。
选对得分,不选、选错均不得分。
)1.利用下列( D )关键字可以改变工作寄存器组A、interruptB、sfrC、whileD、using2.C51中一般指针变量占用( C )字节存储。
A、一个B、两个C、三个D、四个3.使用宏来访问绝对地址时,一般需包含的库文件是(B)A、reg51.hB、absacc.hC、intrins.hD、startup.h4.执行#define PA8255 XBYTE[0x3FFC];PA8255=0x7e;后存储单元0x3FFC的值是(A )A、Ox7eB、8255HC、未定D、7e5.设有int i;则表达式i=1,++i,++i||++i,i的值为(C)A、1B、2C、3D、46.设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是(C)A、10,11,12B、11,12,12C、10,12,12D、11,11,127.设有int i;则表达式i=1,++i,i||++i,i的值为(B)A、1B、2C、3D、4二、判断题:(每小题1分,共10分。
正确的在括号内打“√”,错误的打“×”。
判对得分,不判、判错均不得分。
)1.若一个函数的返回类型为void,则表示其没有返回值。
(√)2.特殊功能寄存器的名字,在C51程序中,全部大写。
(√)3.“sfr”后面的地址可以用带有运算的表达式来表示。
(×)4.#include <reg51.h>与#include “reg51.h”是等价的。
(√)5.sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。
(×)6.Continue 和break都可用来实现循环体的中止。
C51语言复习题参考答案

一、单项选择题:(每小题2分,共10分。
在每小题备选答案中选出一个正确答案,并将正确答案的代码填在题中括号。
选对得分,不选、选错均不得分。
)1.利用下列( D )关键字可以改变工作寄存器组A、interruptB、sfrC、whileD、using2.C51中一般指针变量占用( C )字节存储。
A、一个B、两个C、三个D、四个3.使用宏来访问绝对地址时,一般需包含的库文件是( B )A、reg51.hB、absacc.hC、intrins.hD、startup.h4.执行#define PA8255 XBYTE[0x3FFC];PA8255=0x7e;后存储单元0x3FFC的值是(A )A、Ox7eB、8255HC、未定D、7e5.设有int i;则表达式i=1,++i,++i||++i,i的值为(C)A、1B、2C、3D、46.设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是(C)A、10,11,12B、11,12,12C、10,12,12D、11,11,127.设有int i;则表达式i=1,++i,i||++i,i的值为(B)A、1B、2C、3D、4二、判断题:(每小题1分,共10分。
正确的在括号打“√”,错误的打“×”。
判对得分,不判、判错均不得分。
)1.若一个函数的返回类型为void,则表示其没有返回值。
(√)2.特殊功能寄存器的名字,在C51程序中,全部大写。
(√)3.“sfr”后面的地址可以用带有运算的表达式来表示。
(×)4.#include <reg51.h>与#include “reg51.h”是等价的。
(√)5.sbit不可以用于定义部RAM的可位寻址区,只能用在可位寻址的SFR上。
(×)6.Continue 和break都可用来实现循环体的中止。
C51单片机复习题及答案

C51程序设计基础单项选择练习题一、基本概念1. C语言程序是由 C 构成的。
A)一些可执行语言 B)main函数 C)函数 D)包含文件中的第一个函数2.( A )是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程3.C语言程序从 C 开始执行。
A) 程序中第一条可执行语句 B) 程序中第一个函数C) 程序中的main函数 D) 包含文件中的第一个函数4.C语言程序从main()函数开始执行,所以这个函数要写在_D___。
A) 程序文件的开始 B) 程序文件的最后C) 它所调用的函数的前面 D) 程序文件的任何位置5、以下说法中正确的是( C )。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分6. 下列方法中错误的是(D )。
A.主函数可以分为两个部分:主函数说明部分和主函数体。
B.主函数可以调用任何非主函数的其它函数。
C.任何非主函数可以调用其它任何非主函数。
D.程序可以从任何非主函数开始执行。
7. 下列说法错误的是:( B )A.C程序运行步骤是编辑、编译、连接、执行。
B.C语言的变量名必须用小写,常量用大写。
C.C语言的三种基本结构是顺序、选择、循环。
D. C程序一定由函数构成的。
8.下列关于C语言的说法错误的是( B )。
A) C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。
C) C程序的三种基本结构是顺序、选择、循环D) C程序从main函数开始执行9. 系统默认的C语言源程序扩展名为.C,需经过 C 之后,生成.exe文件,才能运行。A) 编辑、编译 B )编辑、连接 C) 编译、连接 D) 编辑、改错二、数据类型、运算符与表达式1. 不是C语言提供的合法关键字是(B )。
A.switchB.cherC.caseD.default2.C语言中的简单数据类型包括(D )。
C51单片机试题及参考答案

C51单片机习题及答案第一章1-1选择1.计算机中最常用的字符信息编码是( A )A ASCIIB BCD码C 余3码D 循环码2.要MCS-51系统中,若晶振频率屡8MHz,一个机器周期等于(A ) μsA 1.5B 3C 1D 0.53.MCS-51的时钟最高频率是( A ).A 12MHzB 6 MHzC 8 MHzD 10 MHz4.以下不是构成的控制器部件(D ):A 程序计数器、B指令寄存器、C指令译码器、D存储器5.以下不是构成单片机的部件(D )A 微处理器(CPU)、B存储器C接口适配器(I\O接口电路) D 打印机6.下列不是单片机总线是(D )A 地址总线B 控制总线C 数据总线D 输出总线7.-49D的二进制补码为.( B )A 11101111B 11101101C 0001000D 111011008.十进制29的二进制表示为原码(C )A 11100010B 10101111C 00011101D 000011119. 十进制0.625转换成二进制数是( A )A 0.101B 0.111C 0.110D 0.10010 选出不是计算机中常作的码制是( D )A 原码B 反码C补码 D ASCII1-2填空1.计算机中常作的码制有原码、反码和补码2.十进制29的二进制表示为000111013.十进制数-29的8位补码表示为.111000114.单片微型机CPU、存储器和I\O接口三部分组成.5.若不使用MCS-51片内存器引脚EA必须接地.6.输入输出设备是计算机与外部世界交换信息的载体.7.十进制数-47用8位二进制补码表示为.110100018.-49D的二进制补码为.111011019.计算机中最常用的字符信息编码是ASCII10.计算机中的数称为机器数,它的实际值叫真值。
1-3判断1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。
(√)2.MCS-51上电复位时,SBUF=00H。
51单片机c语言考试题目及答案

51单片机c语言考试题目及答案一、单项选择题(每题2分,共20分)1. 51单片机中,以下哪个寄存器用于存储程序计数器(PC)?A. R0B. SPC. DPTRD. PC答案:D2. 在51单片机中,哪个寄存器用于存储堆栈指针?A. R0B. SPC. DPTRD. PC答案:B3. 51单片机的定时器/计数器有几种工作模式?A. 2种B. 3种C. 4种D. 5种答案:C4. 51单片机中,哪个指令用于将累加器A的内容送入外部数据存储器?A. MOV A, #dataB. MOV A, @R0C. MOVX @DPTR, AD. MOVX A, @DPTR答案:C5. 51单片机中,哪个指令用于将累加器A的内容送入寄存器R0?A. MOV A, R0B. MOV R0, AC. MOV A, #dataD. MOVX @DPTR, A答案:B6. 51单片机中,哪个指令用于将立即数送入累加器A?A. MOV A, R0B. MOV A, #dataC. MOVX @DPTR, AD. MOVX A, @DPTR答案:B7. 51单片机中,哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑“或”操作?A. ORL A, R0B. ORL A, #dataC. ORL @R0, AD. ORL A, @R0答案:A8. 51单片机中,哪个指令用于将累加器A的内容与立即数进行逻辑“与”操作?A. ANL A, R0B. ANL A, #dataC. ANL @R0, AD. ANL A, @R0答案:B9. 51单片机中,哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑“异或”操作?A. XRL A, R0B. XRL A, #dataC. XRL @R0, AD. XRL A, @R0答案:A10. 51单片机中,哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑“非”操作?A. CPL AB. CPL R0C. CPL @R0D. CPL A, R0答案:A二、填空题(每题2分,共20分)1. 51单片机的内部RAM共有______字节。
大二第一学期C51习题答案

1.1 单项选择题(1)MCS-51系列单片机的CPU主要由————组成。
AA.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器(2)单片机中的程序计数器PC用来————。
CA.存放指令B.存放正在执行的指令地址C.存放下一条指令地址D.存放上一条指令地址(3)单片机8031的EA引脚————。
AA.必须接地B.必须接+5V电源C.可悬空D.以上三种视需要而定(4)外部扩展存储器时,分时复用做数据线低8位地址线的是—————。
AA.P0口B.P1口C.P2口D.P3口(5)PSW中的RS1和RS0用来—————。
AA.选择工作寄存器组B.指示复位C.选择定时器D.选择工作方式(6)单片机上电复位后,PC的内容为—————。
AA.0000HB.0003HC.000BHD.0800H(7)Inter 8051单片机的CPU是—————位的。
CA.16B.4C.8D.准16位(8)程序是以—————形式存放在程序存储器中的。
CA.C语言源程序B.汇编语言C.二进制编码D.BCD码(9)8051单片机的程序计数器PC为16位计数器,其寻址范围是——————。
DA.8KBB.16KBC.32KBD.64KB(10)单片机的ALE引脚是以晶振振荡器频率的——————固定频率正脉冲,因此它可作为外部时钟或外部定时脉冲使用。
CA.1/2B.1/4C.1/6D.1/122.1单项选择题(1)仿真器的作用是__CA 能帮助调试用户设计的软件 B能帮助调试用户设计的硬件C能帮助调试用户设计的硬件和软件 D只能做各种模拟实验(2)使用单片机开发系统调试程序时,对源程序进行汇编的目的是__AA将源程序转换目标程序 B将目标程序转换成源程序‘C将低级语言转换成高级语言 D连续执行(3)在运用仿真系统调试程序时,观察函数内部指令的执行结果,通常采用_B_调试方法。
A单步调试(F8) B跟踪调试(F7)C快速运行到光标处调试(F4) D断点调试(F2)(4)使用单片机开发系统调试C语言程序时,首先应新建文件,该文件的扩展名是A_。
单片机c51复习题及答案

一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。
(每小题2分,共10分)1.MCS-51单片机有片内ROM容量( A )A. 4KBB. 8KBC. 128BD. 256B2.MCS-51单片机的位寻址区位于内部RAM的( d)单元。
A. 00H—7FHB. 20H—7FHC. 00H—1FHD. 20H—2FH3.MCS-51单片机的串行中断入口地址为( C)A. 0003HB. 0013HC. 0023HD. 0033H4.MCS-51单片机的最小时序定时单位是( B)A. 状态B. 拍节C. 机器周期D. 指令周期5.若MCS-51单片机的晶振频率为6MHZ,定时器/计数器的外部输入最高计数频率为(C)A. 2MHzB. 1MHzC. 500KHzD. 250KHz6在80C51单片机应用系统中,可以作为时钟输出的是(C)引脚。
A、EAB、RSTC、ALED、7当CPU响应外部中断1 的中断请求后,将自动转向(B)。
A、0003HB、0013HC、000BHD、001BH88031单片机的定时器T1用作定时方式时是(A、B )。
A、以内部时钟频率为定时基准,12个时钟周期加1B、以内部时钟频率为定时基准,1个机器周期加1C、以外部脉冲为定时基准,12个脉冲加1D、以外部脉冲为定时基准,每个脉冲加19家用电器中使用的单片机应属于计算机的(B)。
A、辅助设计应用 B.测量、控制应用 C.数值计算应用 D.数据处理应用10下列说法正确的是(A、B)。
A、立即数寻址方式是操作数本身就在指令中,而不是它的地址在指令中。
B、指令周期是执行一条指令的时间。
C、指令中直接给出的操作数称为直接寻址。
D、内部寄存器Rn(n=0~7)可作为间接寻址寄存器。
11.MCS-51单片机在访问外部数据存储器时,其地址指针可采用( )A.DPTRB.PCC.PSWD.SP12指令MOV A,30H源操作数的寻址方式是(c)A.寄存器寻址方式 B.寄存器间接寻址方式C.直接寻址方式 D.立即寻址方式13Jz rel指令中,是判断(A )中的内容是否为0。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单项选择题:(每小题2分,共10分。
在每小题备选答案中选出一个正确答案,并将正确答案的代码填在题中括号内。
选对得分,不选、选错均不得分。
)
1.利用下列( D )关键字可以改变工作寄存器组
A、interrupt
B、sfr
C、while
D、using
2.C51中一般指针变量占用( C )字节存储。
A、一个
B、两个C、三个D、四个
3.使用宏来访问绝对地址时,一般需包含的库文件是( B)
A、reg51.h B、absacc.hC、intrins.hD、startup.h
4.执行#define PA8255 XBYTE[0x3FFC];
PA8255=0x7e;
后存储单元0x3FFC的值是(A )
A、Ox7e B、8255H C、未定D、7e
5.设有int i;则表达式i=1,++i,++i||++i,i的值为 (C)
A、1
B、2
C、3
D、4
6.设有int a[ ]={10,11,12},*p=&a[0];则执行完*p++;*p+=1;后a[0],a[1],a[2]的值依次是(C)
A、10,11,12
B、11,12,12
C、10,12,12
D、11,11,127.设有int i;则表达式i=1,++i,i||++i,i的值为 (B)
A、1B、2C、3 D、4
二、判断题:(每小题1分,共10分。
正确的在括号内打“√”,错误的打“×”。
判对得分,不判、判错均不得分。
)
1.若一个函数的返回类型为void,则表示其没有返回值。
( √)
2.特殊功能寄存器的名字,在C51程序中,全部大写。
(√)
3.“sfr”后面的地址可以用带有运算的表达式来表示。
( ×)
4.#include <reg51.h>与#include“reg51.h”是等价的。
(√)
5.sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。
(×) 6.Continue和break都可用来实现循环体的中止。
(×)
7.若一个函数的返回类型为void,则表示其没有返回值。
(√)
8.所有定义在主函数之前的函数无需进行声明。
( ×)
9.int i,*p=&i;是正确的C说明。
( √)
10.7&3+12的值是15。
( × )
11.一个函数利用return不可能同时返回多个值。
(√)
三、填空(每空1分,共20分。
在空白处填上正确的内容)
1.KeiL C51软件中,工程文件的扩展名是____UV2______,编译连接后生成可烧写的文件扩展名是_____HEX_______。
2.C51支持的指针有一般指针和存储器指针。
3.C51中,没有专门的循环语句,我们可以用函数______crol_______完成一个字节的循环左移,用____irol_____完成二个字节的循环左移。
4.函数是C语言的基本单位。
5.C语言中输入和输出操作是由库函数scanf和printf 等函数来完成。
6.若有说明int i,j,k;则表达式i=10,j=20,k=30,k*=i+j的值为__ 900______。
7.数组是一组有固定数目和相同类型成分分量的有序集合。
8.变量的指针就是变量的地址;指针变量的值是指针。
9.在C语言中,把多个不同类型的变量结合在一起形成的一个组合型变量,称为结构变量,简称结构。
10.C51的数据类型有基本类型、构造类型、指针类型、空类型。
11.C51的基本数据类型有位型、字符型、整形、长整形、浮点型、双精度浮点型。
12.C51的构造数据类型有数组类型、结构类型、共用体型、梅举型。
13.C51的存储类型有data 、bdata 、idata 、pdata、xdata、code。
14.C51的存储模式有SMALL、COMPACT 和LARGE 。
15.C51程序与其他语言程序一样,程序结构也分为顺序结构、选择结构(或分支结构) 、循环结构三种。
16.数组的一个很重要的用途就是查表。
17.
四、问答题(共20分)
1.简述C51语言和汇编语言的比较(5分)
使用C51语言进行嵌入式系统的开发,有着汇编语言所不可比拟的优势:
①编程调试灵活方便;
②生成的代码编译效率高;
③模块化开发;
④可移植性好;
⑤便于项目的维护;
2.简述单片机的C语言的特点(7分)
单片机的C语言的特点主要体现在以下几个方面:
①无需了解机器硬件及其指令系统,只需初步了解MCS-51的存储器结构;
②C51能方便的管理内部寄存器的分配、不同存储器的寻址和数据类型等细节问题,但对硬件控制有限;而汇编语言可以完全控制硬件资源;
③C51在小应用程序中,产生的代码量大,执行速度慢;但在较大的程序中代码效率高;。