单片机C语言期末考精彩试题

合集下载

单片机期末考试试题

单片机期末考试试题

单片机期末考试试题一、选择题(每题2分,共20分)1. 下列哪种设备不属于单片机的典型外围设备?A. 串行通信接口B. 并行打印机C. A/D转换器D. 网络适配器2. 在8051单片机中,以下哪个寄存器用于存储当前执行指令的地址?A. PCH(程序计数器高字节)B. PCL(程序计数器低字节)C. ACC(累加器)D. B(寄存器B)3. 以下哪种中断源在8051单片机中具有最高优先级?A. 外部中断INT0B. 外部中断INT1C. 定时器/计数器T0D. 串行口中断4. 在C语言中,定义一个8位单片机端口的语句是什么?A. volatile unsigned char *port = 0x01;B. volatile signed char *port = 0x01;C. volatile unsigned int *port = 0x01;D. volatile signed int *port = 0x01;5. 以下哪个指令可以将8051单片机的P1端口的所有引脚设置为高电平?A. P1 = 0xFF;B. P1 = 0x00;C. P1 |= 0xFF;D. P1 &= 0x00;6. 在单片机系统中,串行通信最常用的协议是什么?A. I2CB. SPIC. UARTD. CAN7. 下列哪种数据类型在8051单片机中通常用于存储8位二进制数?A. bitB. byteC. wordD. int8. 在8051单片机中,定时器/计数器T1用于什么?A. 产生定时中断B. 计数外部事件C. 产生串行通信波特率D. A和B9. 以下哪个C语言关键字用于声明一个可被中断服务程序访问的全局变量?A. volatileB. staticC. registerD. const10. 在8051单片机中,以下哪个指令用于将累加器A的值与寄存器B 的值相加?A. ADD A, BB. ADD B, AC. A ADD BD. B ADD A二、填空题(每题2分,共20分)1. 在8051单片机中,一个机器周期包含__个振荡周期。

51单片机c语言考试题目及答案

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单片机的中断系统由中断向量表、中断优先级和中断服务程序组成。

当一个中断事件发生时,单片机会自动将当前程序的地址存入堆栈,然后跳转到中断向量表中对应的中断服务程序地址执行中断服务程序。

中断服务程序执行完毕后,单片机会从堆栈中恢复程序的地址,继续执行被中断的程序。

51单片机c语言考试题和答案

51单片机c语言考试题和答案

51单片机c语言考试题和答案一、单项选择题(每题2分,共20分)1. 51单片机中,以下哪个寄存器是用于存储程序计数器(PC)的值?A. DPTRB. SPC. PCD. ACC答案:C2. 在51单片机中,以下哪个指令用于将累加器A的内容传送到外部数据存储器?A. MOV A, @R0B. MOV @R0, AC. MOV A, #dataD. MOV DPTR, #address答案:B3. 51单片机的定时器/计数器有几种工作模式?A. 2种B. 3种C. 4种D. 5种答案:C4. 51单片机中,以下哪个指令用于将立即数传送到累加器A?A. MOV A, #dataB. MOV A, @R0C. MOV A, R0D. MOV A, DPTR答案:A5. 51单片机的串行通信中,以下哪个寄存器用于存储串行数据?A. TCONB. SCONC. PCOND. IE答案:B6. 51单片机中,以下哪个指令用于将累加器A的内容与寄存器R0的内容进行异或操作?A. XOR A, R0B. ORL A, R0C. ANL A, R0D. CPL A答案:A进行逻辑与操作?A. ANL A, #dataB. ORL A, #dataC. XRL A, #dataD. CPL A答案:A8. 51单片机中,以下哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑或操作?A. ORL A, R0B. ANL A, R0C. XRL A, R0D. CPL A答案:AR0的内容进行逻辑异或操作?A. ORL A, R0B. ANL A, R0C. XRL A, R0D. CPL A答案:C10. 51单片机中,以下哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑非操作?A. ORL A, R0B. ANL A, R0C. XRL A, R0D. CPL A答案:D二、填空题(每题2分,共20分)1. 51单片机的外部中断有______个,分别是INT0和INT1。

单片机期末考试

单片机期末考试

单片机期末考试1、以下关于C语言描述错误的是()。

[单选题]*A —个C程序总是从main函数开始执行B每个语句和数据声明的最后必须有一个分号C C语言的注释符是以“/*”开始并以“*/”结束的D —个C程序可以包含多个main函数(正确答案)2、C 语言源程序文件后缀为()。

[单选题]*A .EXEB .OBJC .C(正确答案)D .ASM3、下列不是C语言基本数据类型的是()。

[单选题]*A字符型(正确答案)B整型C浮点型D结构体4、一个C程序的执行是从()。

[单选题]*A本程序的main函数开始,到main函数结柬(正确答案)B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束D本程序文件的第一个函数开始,到本程序main函数结束5、以下程序的输出结果是()。

int x=10,y=10; print("%d %d\n",x--,--y);[单选题]*A 10 10B 9 9C 9 10D 10 9(正确答案)6、若x=5,y=3则y*=x+5; y的值为()。

[单选题]*A 10B 20C 15D 30(正确答案)7、下列程序段的输出结果是()。

char c1 ,c2;c=65; c2=c1+32+1;printf("%c,%c",c1,c20;[单选题]*A 65 98(正确答案)B 64 98C 98 65D 98 648、以下选项中属于C 语言的数据类型是()[单选题]*A字符串型B双精度型(正确答案)C逻辑型D布尔型9、设整型变量a, b的值分别为1, 0,那么!(a = = b)的结果是()。

[单选题]*A 0B 1(正确答案)C 2D都不对10、下列属于分支结构的是()。

[单选题]*A whileB switch(正确答案)C forD以上都不是11、以下for循环的次数为()。

51单片机c语言考试题目及答案

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共有______字节。

c语言单片机期末试题及答案

c语言单片机期末试题及答案

c语言单片机期末试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strncpyD. strcmp答案:A3. 下列关于单片机的描述,哪一项是不正确的?A. 单片机是一种集成了CPU、存储器和I/O接口的微控制器。

B. 单片机通常用于嵌入式系统。

C. 单片机的编程语言只能是汇编语言。

D. 单片机的运行速度通常高于个人计算机。

答案:C4. 在C语言中,下列哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A5. 在单片机编程中,下列哪种方式用于控制单片机的I/O端口?A. 直接操作内存地址B. 使用中断C. 通过操作系统调用D. 通过串口通信答案:A二、填空题(每题2分,共20分)1. C语言中,表示逻辑与的运算符是____。

答案:&&2. 在单片机中,用于定义变量存储类型的关键字是____。

答案:volatile3. C语言中,用于定义数组的关键字是____。

答案:数组4. 在单片机编程中,用于控制定时器的函数是____。

答案:定时器函数5. C语言中,用于定义函数的关键字是____。

答案:函数三、简答题(每题5分,共30分)1. 请简述C语言中指针的概念。

答案:指针是一种变量,其值是另一个变量的内存地址。

2. 描述单片机的中断系统是如何工作的。

答案:单片机的中断系统允许外部或内部事件打断CPU当前的执行流程,以处理紧急任务。

3. 解释C语言中函数的原型声明和定义的区别。

答案:函数原型声明只包含函数的返回类型、名称和参数列表,而定义则包括函数原型和函数体。

4. 在单片机编程中,如何使用循环结构?答案:循环结构用于重复执行一段代码,直到满足特定条件。

单片机C语言期末考试题

单片机C语言期末考试题

单片机C语言期末考试题..(总12页)-本页仅作为预览文档封面,使用时请删除本页-单片机C语言期末考试题(A)一、单项选择题:40 分1、MCS-51系列的单片机中片内RAM的字节大小可能的是()A、128MB、128KC、128D、642、C51语言提供的合法的数据类型关键字是()。

A、sfrB、BITC、CharD、integer r3、片内RAM的位寻址区,位于地址()处。

A、00H~1FHB、20H~2FHC、30H~7FHD、80H~FFH4、间接寻址片内数据存储区(256字节),所用的存储类型是()A、dataB、bdataC、idataD、xdata5、MCS-51单片机上电复位的信号是()A、下降沿B、上升沿C、低电平D、高电平6、可以将P1口的低4位全部置高电平的表达式是()A、P1&=0x0fB、P1|=0x0fC、P1^=0x0fD、P1=~P17、一般单片机C51程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不能够超过()A、1B、2C、3D、48、需要扩展一片外部RAM,大小32K字节,需要的地址线是()A、15B、14C、13D、129、如果将中断优先级寄存器IP中,将IP设置为0x0A,则优先级最高的是()A、外部中断1B、外部中断0C、定时/计数器1D、定时/计数器010、单片机C51中用关键字()来改变寄存器组A、interruptB、unsignedC、usingD、reentrant11、红外线遥控码由发射电路经()Hz的载频调制后发射。

A、38KB、 12MC、6MD、 32。

768K212、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()决定的。

A、电平B、宽度C、频率D、形状13、DS1302内的时钟寄存器是以()的数据格式定义的。

A、十进制B、十六进制C、BCD码D、压缩BCD码14、设MCS-51单片机晶振频率为12MHz,定时器作定时器使用时,其最高的输入计数频率应为()A、2MHzB、1MHzC、500kHzD、250kHz15、使用_nop_()函数时,必须包含的库文件是()A、 B、 C、 D、16、ADC0809的启动转换的信号是()A、ALEB、EOCC、CLOCKD、START17、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()A、有键被按下B、一定只有一个键被按下C、一定有多个键被按下D、没有键被按下18、DS18B20的总线方式是()A、SPIB、I2CC、ONE—WIRED、SP219、24C02采用的总线形式是()A、CANB、SPIC、I2CD、PWM20、串行口每一次传送()字符。

c语言51单片机试题及答案

c语言51单片机试题及答案

c语言51单片机试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,正确的是()。

A. C语言是一种汇编语言B. C语言是一种高级语言C. C语言是一种面向对象的编程语言D. C语言是一种面向过程的编程语言答案:D2. 在C语言中,用于定义一个结构体的关键字是()。

A. structB. unionC. enumD. typedef答案:A3. 51单片机中,下列哪个寄存器用于存储程序计数器的值()。

A. SPB. PCC. PSWD. ACC答案:B4. 在C语言中,用于定义一个函数的关键字是()。

A. structB. unionC. functionD. int5. 51单片机中,下列哪个寄存器用于存储累加器的值()。

A. SPB. PCC. PSWD. ACC答案:D6. 在C语言中,用于定义一个全局变量的关键字是()。

A. staticB. externC. registerD. auto答案:B7. 51单片机中,下列哪个寄存器用于存储程序状态字的值()。

A. SPB. PCC. PSWD. ACC答案:C8. 在C语言中,用于定义一个静态变量的关键字是()。

A. staticB. externC. registerD. auto答案:A9. 51单片机中,下列哪个寄存器用于存储堆栈指针的值()。

B. PCC. PSWD. ACC答案:A10. 在C语言中,用于定义一个寄存器变量的关键字是()。

A. staticB. externC. registerD. auto答案:C二、填空题(每题2分,共20分)1. C语言中,定义一个整型变量的关键字是______。

答案:int2. 在C语言中,用于声明一个函数的关键字是______。

答案:extern3. 51单片机中,用于存储当前工作寄存器的寄存器是______。

答案:R0-R74. C语言中,用于声明一个静态变量的关键字是______。

单片机c语言期末考试答案

单片机c语言期末考试答案

单片机c语言期末考试答案一、单选题1. 单片机中,独立运行的程序段叫作()A.主程序B.子程序C.函数D.存储A. 主程序2. 单片机中通常采用查询类型进行WINCE启动过程,即()A. 菜单B. 文本C. 命令D. 函数C. 命令3. 在printf()函数中,\t 的作用是()A.换行B.清屏C.走格D.断句C. 走格4. 将 r4变量的值增加 0x1234 ,需要使用()指令完成A.MOVB.ADDC.INCD.PUSHB. ADD二、多选题1. 单片机的性能指标可以有()。

A.存储容量B.最高速度C.工作电源D.分辨率A. 存储容量B. 最高速度C. 工作电源2. 关于单片机PLC,正确的是()A.集成度高,性能低B.集成度低,功能多C.主控单元多,性能低D.集成度低,性能也一般A. 集成度高,性能低B. 集成度低,功能多3. 关于C语言,正确的是()A.是第一代语言B.容易学习C.不具有面向对象编程特征D.可以实现面向对象编程A. 是第一代语言B. 容易学习 D. 可以实现面向对象编程三、判断题1. 单片机有多种应用,可以实现许多相关任务。

A.正确B.错误A. 正确2. 动态内存分配的优点是减少了指令篇幅。

A.正确B.错误B. 错误3. 显示器的灯泡最常用的是toshiba的系列。

A.正确B.错误B. 错误。

单片机的C语言程序设计与运用期末复习题及答案

单片机的C语言程序设计与运用期末复习题及答案

一、填空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.二、单项选择题:1.89S51的内部程序存储器与数据存储器容量各为多少?(C)(A)64KB、 128B ( B)4KB、64KB(C)4KB、128B (D)8KB、256B2.在8x51芯片里,哪个引脚用于控制使用内部程序存储器还是外部程序存储器?(B)(A)XTAL1(B)/EA(C)/PSEN (D)ALE3.下列哪个不是KeilC的预处理命令?(C)(A)#include (B)#define (C)#exit (D)#if 4.下列哪个不是KeilC的数据类型?(B)(A)void (B)string (C)char (D)float 5.在8x51的输入/输出端口里,哪个输入/输出端口执行在输出功能时没有内部上拉电阻(A)(A)P0 (B)P1 (C)P2 (D)P36.在KeilC的程序里,若要指定P0口的bit3,如何编写?(C)(A)P0.3 (B)Port0.3 (C)P0^3 (D)Port^3 7.在8x51里,若要扩展外部存储器时,数据总线连接哪个输入/输出端口?(A)(A)P0 (B)P1 (C)P2 (D)P38.点亮一般的LED所耗的电流约为多少?(D)(A)1~5uA(B)10~20uA (C)1~5mA(D)10~20mA9.在8x51的程序里,若要将个输入/输出端口设置成输入功能,应如何处理?(A)(A)先输出高电平到该输入/输出端口(B)先输出低电平到该输入/输出端口(C)先读取该输入/输出端口的状态(D)先保存该输入/输出端口的状态10.根据实验统计,当操作开关时,其不稳定关态大约持续多久?(B)(A)1~5ms(B)10~20ms (C)100~150ms (D)150~250us 11.在KeilC里,判读开关状态时,使用if_else if语句与使用switch语句有何差异?(B)(A)if-else if 语句较快(B)if-else if语句有优先级(C)switch语句可判读较多开关状态(D)switch语句有优先级12.对于低电平动作(低电平触发)的开关而言,下列哪个不是在输入口上连接一个上拉电阻VCC的目的?(A)(A)提供足够的驱动电流(B)防止确定状态(C)保持输入高电平(D)防止噪声干扰13.中断功能具有什么好处?(C)(A)让程序更复杂(B)让程序执行速度更快(C)让程序更有效率(D)以上皆非14.8x51的IP缓存器的功能为何?(A)(A)设置中断优先级(B)启用中断功能(C)设置中断触发信号(D)定义CPU的网址15.在KeilC里,中断子程序与函数有何不同?(A)(A)中断子程序不必声明(B)函数不必声明(C)中断子程序必须有形式参数(D)中断子程序一定会有返回值16.若要同时启用INT0及INT1中断功能,则应如何设置?(B)(A)TCON=0x81 (B)IE=0x85 (C)IP=0x83 (D)IE=0x0317.若要提高INT1的优先级,则应如何设置?(C)(A)IP=0x01 (B)IE=0x01 (C)IP=0x04(D)IE=0x0418.在8x51的Timer里,若使用Mode 0,其最大计数值为多少个机器周期?(B)(A)65636 (B)8192 (C)1024 (D)25619.12 MHz的8x51系统里,哪一种方式一次可定时5ms?(A)(A)Mode0及Mode1 (B)Mode1及Mode2 (C )Mode2及Mode3 (D) Mode3及Mode120.8x51的定时器,在下列哪种方式下具有自动加载功能?(C)(A)Mode0 (B) Mode1 (C)Mode2 (D)Mode321.若将Timer0设置为外部启动,则可由哪个引脚启动?(A)(A)P3.2(B)P3.3 (C)P3.4 (D)P3.522.下列哪个IC具有将串行数据转换成并行数据的功能?(B)(A)74138 (B)74164 (C)74165 (D)7416823.在同一时刻,只能接收或发送信号者称为什么?(A)(A)半双工(B)全双工(C)半单工(D)单工24‘在8x51的串行口里,在哪一种方式下,可利用Timer1产生波特率?(C)(A)Mode0 (B)Mode1 (C)Mode2(D)Mode325.在8x51里,若通过串行端口传出数据,则只要将数据放入哪个寄存器,CPU就会自动将它会传出?(B)(A)SMOD(B)SBUF (C)PCON (D)RBUF26.在8x51里,若CPU完成串行端口数据的接收将会如何?(D)(A)将TI标志变为0 (B)将RI标志为0 (C)将TI标志变为了 1 (D)将RI标志变为127.若要设置8x51串行端口方式,可在哪个寄存器中设置?(B)(A)SMOD (B)SCON (C)PCON (D)TCON28.在共阳极8*8LED点阵里,其阳极如何连接?(C)(A)各行阳极连接到行引脚(B)各列阳极连接到列引脚(C)各行阳极连接到列引脚(D)各列阳极连接到行引脚29.在共阳极8*8点阵里,其阴极如何连接?(A)(A)各行阴极连接到行引脚(B)各列阴极连接到列引脚(C)各行阴极连接到列引脚(D)各列阴极连接到行引脚30.通常8*8LED点阵的驱动方式是什么?(B)(A)直接驱动(B)扫描驱动(C)双向驱动(D)以上皆非31.若要对LCM下指令,则应如保设置?(A)(A)RS=0,R/~W=0(B)RS=1,R/~W=0 (C)RS=1,R/~W=1(D)RS=0,R/~W=132.若要在LCM中显示些字符,则需把所要显示的字符放入何处?(B)(A)CG RAM (B)DDRAM (C)IRAM (D)GDRAM33.若要将数据写入LCM,则应如何设置?(B)(A)RS=0,R/~W=0 (B)RS=1,R/~W=0 (C)RS=1,R/~W=1 (D)RS=0,R/~w=1341.利用下列( D)关键字可以改变工作寄存器组A、interruptB、sfrC、whileD、using35.C51中一般指针变量占用( C )字节存储。

c语言的单片机期末考试题及答案

c语言的单片机期末考试题及答案

c语言的单片机期末考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言中变量的声明,正确的是:A. int a=b=5;B. int a; b=5;C. int a=5, b;D. int a, b=5;答案:D2. C语言中,以下哪个运算符不能用于整数和浮点数之间的运算?A. 乘法运算符(*)B. 除法运算符(/)C. 模运算符(%)D. 加法运算符(+)答案:C3. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A4. 如果一个函数的返回类型是void,那么该函数:A. 不能返回任何值B. 必须返回一个值C. 可以返回任意类型的值D. 可以返回一个void类型的值5. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. 下列关于C语言中数组的描述,错误的是:A. 数组名代表数组首元素的地址B. 数组的大小在定义后不能改变C. 数组的元素必须是同一数据类型D. 数组可以存储不同类型的数据答案:D7. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A8. C语言中,以下哪个关键字用于声明一个指针变量?A. intB. charC. floatD. *答案:D9. 在C语言中,以下哪个函数用于将一个整数转换为字符串?B. itoa()C. sprintf()D. printf()答案:B10. C语言中,以下哪个语句用于在程序中创建一个无限循环?A. for(;;)B. while(1)C. do{}while(1)D. A和B答案:D二、填空题(每空1分,共10分)1. C语言中,用于定义一个全局变量的关键字是________。

c语言单片机考试题及答案详解

c语言单片机考试题及答案详解

c语言单片机考试题及答案详解一、选择题1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在单片机编程中,以下哪个寄存器用于存储程序计数器的值?A. PCB. SPC. ACCD. B答案:A3. 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable-nameC. variable$nameD. variable_name答案:D4. 在单片机中,若要将一个8位二进制数扩展为16位,应使用哪种指令?A. MOVB. CLRC. SWAPD. EXT答案:D5. C语言中,以下哪个函数用于计算并返回字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A二、填空题1. 在C语言中,用于定义一个无符号字符型变量的关键字是________。

答案:unsigned char2. 单片机的I/O口可以被配置为________模式,用于接收外部信号。

答案:输入3. 在C语言中,若要声明一个指向整型的指针变量,应使用________。

答案:int*4. 单片机编程中,使用________指令可以将累加器A的内容传送到外部数据存储器。

答案:MOVX5. C语言中,________运算符用于计算两个数的差,并更新累加器A的值。

答案:-三、简答题1. 简述C语言中数组和指针的区别。

答案:数组是一种数据结构,用于存储相同类型的多个元素,而指针是一种变量,它存储了另一个变量的内存地址。

数组名可以被用来访问数组的第一个元素的地址,但数组本身不能被赋值;指针变量可以被赋值,指向不同的内存地址。

2. 描述单片机中断服务程序的执行流程。

答案:当单片机检测到一个中断请求时,它会保存当前程序的状态(如程序计数器和寄存器的值),然后跳转到中断向量指定的地址执行中断服务程序。

(完整word版)《单片机C语言》期末实操考试试卷

(完整word版)《单片机C语言》期末实操考试试卷

xx学年第x学期
《单片机C语言》期末实操考试试卷
(时间:70分钟;满分:100 分)
一、用Proteus软件画下图所示电路图(25分)
二、keil软件使用(10分)
1、新建工程文件名为:单片机1,源程序文件名:“dpj1.c”;(3分)
2、项目设置中,时钟频率设为:12MHz,输出目标文件名为:“单片机1.hex”,程序文件dpj1.c
添加到工程文件单片机1中;(4分)
3、源文件“dpj1.c”中程序如下,要求编译正确,有输出文件hex。

(3分)#include <reg51.h>
#define out0 P0
sbit sb1=P1^0;
void delay (int x)
{ int i;j;
for (i=0;i<x;i++)
for (j=0;j<120;j++);}
main()
{ out0=0;
delay(100);
out0=0xff;
delay(100);}
三、编写程序控制8个LED灯:按下图方式流水,并循环控制。

(10分)
四、控制8个LED灯:(25分)
(1)D1D2-D3D4-D5D6-D7D8流水2次
(2)全部闪烁5次
(3)D8-D7-D6-……-D1逐个点亮3次
(4)重复
五、可控制的流水灯:(30分)
1、起始状态:D1D2D3D4亮,D5D6D7D8灭
2、按下SB1,全亮。

3、按下SB2,全部闪烁。

单片机与c语言试题及答案

单片机与c语言试题及答案

单片机与c语言试题及答案一、单选题1. 下列哪个不是单片机的特点?A. 体积小B. 功耗低C. 价格高D. 集成度高答案:C2. C语言中,用于定义结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 下列哪个不是C语言中的基本数据类型?A. intB. floatC. charD. string答案:D二、填空题1. 单片机的英文缩写是______。

答案:MCU2. 在C语言中,用于定义数组的关键字是______。

答案:array3. 单片机的内部存储器通常分为______和______。

答案:ROM、RAM三、简答题1. 简述单片机与PC机的主要区别。

答案:单片机是微型计算机的一种,其特点是体积小、功耗低、集成度高、成本低,通常用于嵌入式系统。

而PC机是个人计算机,体积较大,功能强大,主要用于办公、娱乐等。

2. 描述C语言中指针的概念。

答案:指针是一种特殊的变量,它存储的是另一个变量的内存地址。

通过指针,可以间接访问和操作内存中的数据。

四、编程题1. 编写一个C语言程序,实现将一个整数数组逆序输出。

答案:```c#include <stdio.h>void reverseArray(int arr[], int size) {int temp;for (int i = 0; i < size / 2; i++) {temp = arr[i];arr[i] = arr[size - i - 1];arr[size - i - 1] = temp;}}int main() {int arr[] = {1, 2, 3, 4, 5};int size = sizeof(arr) / sizeof(arr[0]); reverseArray(arr, size);for (int i = 0; i < size; i++) {printf("%d ", arr[i]);}return 0;}```2. 编写一个C语言函数,计算并返回两个整数的和。

c语言单片机试题及答案

c语言单片机试题及答案

c语言单片机试题及答案一、选择题(每题2分,共10分)1. 在C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 单片机的内部RAM中,哪个区域用于存储位地址?A. 直接地址区B. 间接地址区C. 位寻址区D. 扩展RAM区答案:C3. 下列哪个选项是C语言中正确的字符串定义方式?A. char str[] = "Hello";B. char str[5] = "Hello";C. char str[] = {"Hello"};D. char str[6] = {"Hello"};答案:A4. 在8051单片机中,哪个寄存器用于存储当前正在执行的程序的地址?A. ACCB. BC. PCD. SP答案:C5. C语言中,以下哪个选项是正确的数组定义?A. int a[] = {1, 2, 3};B. int a[3] = {1, 2, 3};C. int a = {1, 2, 3};D. int a[3] = {1};答案:A二、填空题(每题4分,共20分)1. 在C语言中,用于定义一个整型变量的关键字是________。

答案:int2. 8051单片机的外部中断0的中断向量地址是________。

答案:0003H3. 单片机的I/O口通常可以被配置为________或输出模式。

答案:输入4. 在C语言中,用于定义一个字符型数组的关键字是________。

答案:char5. 8051单片机的定时器/计数器0的控制寄存器是________。

答案:TMOD三、简答题(每题10分,共20分)1. 简述C语言中如何实现函数的递归调用。

答案:在C语言中,函数的递归调用是指一个函数在其定义中调用自身。

递归函数通常包含一个结束递归的条件,以防止无限递归。

例如,计算阶乘的函数可以定义为:```cint factorial(int n) {if (n == 0) return 1; // 递归结束条件return n * factorial(n - 1); // 递归调用}```2. 解释8051单片机的定时器/计数器的作用。

单片机c语言试题和答案

单片机c语言试题和答案

单片机c语言试题和答案一、选择题1. 以下哪项不是8051单片机的特点?A. 内置8KB的ROMB. 内置256B的RAMC. 有4个定时器/计数器D. 支持外部中断答案:C(8051单片机有2个定时器/计数器)2. 在8051单片机中,以下哪个寄存器用于存放程序状态字?A. A寄存器B. B寄存器C. PSW寄存器D. SP寄存器答案:C(PSW寄存器用于存放程序状态字)3. 以下哪个指令用于将累加器A的值传递给B寄存器?A. MOV B, AB. MOV A, BC. ADD A, BD. SUBB A, B答案:A(MOV B, A)4. 在8051单片机中,以下哪个引脚用于外部中断0?A. P3.2B. P3.3C. P3.4D. P3.5答案:B(P3.3用于外部中断0)5. 以下哪个指令用于将立即数#0Ah传送到累加器A?A. MOV A, #0AhB. MOV A, 0AhC. ADD A, #0AhD. SUBB A, #0Ah答案:A(MOV A, #0Ah)二、填空题1. 8051单片机的时钟频率最高可达______MHz。

答案:12MHz2. 在8051单片机中,数据指针DPTR由______和______两个寄存器组成。

答案:DPL和DPH3. 在8051单片机中,外部中断1的优先级高于______。

答案:外部中断04. 以下程序的功能是______。

```cvoid delay(unsigned int ms) {unsigned int i, j;for(i = ms; i > 0; i--)for(j = 110; j > 0; j--);}```答案:实现一个简单的延时函数,延时时间为ms毫秒5. 在8051单片机中,以下指令序列实现的功能是______。

```cMOV A, #0FFhMOV B, #0FFhDEC ADEC BJNZ Label```答案:将A和B寄存器的值减1,直到它们都为0,然后跳转到Label标签处执行三、编程题1. 编写一个程序,使用8051单片机的定时器0实现一个1秒的定时器中断,并在中断服务程序中使P1.0引脚的电平翻转。

单片机c语言期末考试题目及答案详解

单片机c语言期末考试题目及答案详解

单片机c语言期末考试题目及答案详解一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 单片机中,以下哪个寄存器通常用于存储程序计数器的值?A. PCB. SPC. ACCD. B答案:A3. 在C语言中,以下哪个运算符用于取模运算?A. %B. /C. *D. -答案:A4. 单片机编程时,以下哪个函数用于延时?A. delay()B. sleep()C. wait()D. halt()答案:A5. 在C语言中,以下哪个关键字用于声明一个函数?A. defineB. functionC. voidD. int答案:C6. 单片机中,以下哪个指令用于将累加器A的内容传送到外部数据存储器?A. MOVX @DPTR, AB. MOV A, @DPTRC. MOVX A, @DPTRD. MOV @DPTR, A答案:A7. 在C语言中,以下哪个关键字用于声明一个全局变量?A. staticB. externC. constD. volatile答案:B8. 单片机中,以下哪个指令用于无条件跳转?A. SJMPB. AJMPC. LJMPD. DJMP答案:A9. 在C语言中,以下哪个关键字用于声明一个指针?A. pointerB. ptrC. *D. ref答案:C10. 单片机中,以下哪个指令用于将累加器A的内容与寄存器B的内容进行异或操作?A. XOR A, BB. XOR A, #dataC. XOR A, @R0D. XOR A, direct答案:A二、填空题(每题2分,共20分)1. 在C语言中,用于定义一个数组的关键字是________。

答案:array2. 单片机中,用于读取外部数据存储器的指令是________。

答案:MOVX A, @DPTR3. 在C语言中,用于声明一个字符型变量的关键字是________。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机C语言期末考试题(A)一、单项选择题:40 分1、MCS-51系列的单片机中片内RAM的字节大小可能的是()A、128MB、128KC、128D、642、C51语言提供的合法的数据类型关键字是()。

A、sfrB、BITC、CharD、integer r3、片内RAM的位寻址区,位于地址()处。

A、00H~1FHB、20H~2FHC、30H~7FHD、80H~FFH4、间接寻址片内数据存储区(256字节),所用的存储类型是()A、dataB、bdataC、idataD、xdata5、MCS-51单片机上电复位的信号是()A、下降沿B、上升沿C、低电平D、高电平6、可以将P1口的低4位全部置高电平的表达式是()A、P1&=0x0fB、P1|=0x0fC、P1^=0x0fD、P1=~P17、一般单片机C51程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不能够超过()A、1B、2C、3D、48、需要扩展一片外部RAM,大小32K字节,需要的地址线是()A、15B、14C、13D、129、如果将中断优先级寄存器IP中,将IP设置为0x0A,则优先级最高的是()A、外部中断1B、外部中断0C、定时/计数器1D、定时/计数器010、单片机C51中用关键字()来改变寄存器组A、interruptB、unsignedC、usingD、reentrant11、红外线遥控码由发射电路经()Hz的载频调制后发射。

A、38KB、12MC、6MD、32。

768K12、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()决定的。

A、电平B、宽度C、频率D、形状13、DS1302内的时钟寄存器是以()的数据格式定义的。

A、十进制B、十六进制C、BCD码D、压缩BCD码14、设MCS-51单片机晶振频率为12MHz,定时器作定时器使用时,其最高的输入计数频率应为()A、2MHzB、1MHzC、500kHzD、250kHz15、使用_nop_()函数时,必须包含的库文件是()A、reg52.hB、absacc.hC、intrins.hD、stdio.h16、ADC0809的启动转换的信号是()A、ALEB、EOCC、CLOCKD、START17、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()A、有键被按下B、一定只有一个键被按下C、一定有多个键被按下D、没有键被按下18、DS18B20的总线方式是()A、SPIB、I2CC、ONE—WIRED、SP219、24C02采用的总线形式是()A、CANB、SPIC、I2CD、PWM20、串行口每一次传送()字符。

A、1个B、1串C、 1波特D、1帧二、判断题:10分1、C51中,特殊功能寄存器一定需要用大写。

( )2、使用片内存储器时,EA脚必须置低。

()3、单片机外部中断时只有用低电平触发。

()4、bit定义的变量一定位于内部RAM的位寻址区。

( )5、采用单片机的C语言开发时,只能利用C51语言书写程序,不能嵌套汇编语言。

()6、51系列的单片机至少有5个中断,KEIL C51软件支持最多32个中断。

( )7、MCS-51单片机的程序存储器是可以用来存放数据的。

( )8、bit和sbit都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。

()9、MCS-51单片机的位地址总共有256位。

( )10、串口中断请求标志必须由软件清除。

( )三、多项选择题:10分1 、目前,MCS-51单片机采用的开发语言是()A、机器语言B、汇编语言C、BASIC语言D、C语言E、PASCAL语言2、51单片机的RAM包含以下几个部分()A、通用寄存器区B、可位寻址区C、用户RAM区D、SFR3、C51中使用最广泛的三个数据类型是()A、bitB、unsigned charC、unsigned intD、int4、关于bit型变量的用法,说法正确的()A、bit变量不能声明为指针B、不能定义有bit数组C、bit型变量自动存储于内部RAM的位寻址区D、bit型变量不可用作函数返回值5、存储器模式有()A、xdataB、smallC、codeD、large四、填空20分1、单片机中,常用作串入并出的芯片是_____________,常用作232串口电平转换芯片是_________________。

2、在单片机硬件设计时,31脚一般要接_____ _____,晶振在PCB设计中应尽量____________________。

3、单片机程序的入口地址是______________,外部中断0的入口地址是______________。

4、非编码式键盘识别有效键盘的方法通常有两种:一种是_______________另一种是_______________。

5、若采用12MHz的晶体振荡器,则MCS-51单片机的振荡周期为_____________,机器周期为_______________。

6、LCD1602常用的写子函数有 ______________和_____ __________两种。

7、KeiL C51软件中,工程文件的扩展名是____ _____,编译连接后生成可烧写的文件扩展名是_____ ______8、字符型LCD标准西文字库采用是__ ___________编码方式。

9、若只需要开串行口中断,则IE的值应设置为__ ________,若需要将外部中断0设置为下降沿触发,则执行的语句为____________。

10、红外编码中用户码的作用是______________一帧按键码由个______________字节组成。

11、DS1302是双电源工作方式,第二电源的作用是____________________________。

五、综合应用20分1、假设单片机的晶体振荡器的频率是12MHz,利用定时器1采用方式1定时20ms,写出初值的计算过程和整个定时器初始化程序,同时写出在P1.7脚上输出0.2秒的方波的完整程序。

2、画出下列要求的原理图,假设单片机的P1口的连接8个LED,P3连接8的对地的按键,当某个按钮按下时相应的LED点亮。

根据描述画出原理图,并编写程序控制?单片机C语言期末考试题(B)一、单项选择题:40 分1、MCS-51系列的单片机中片内RAM的字节大小可能的是()A、128MB、128KC、128D、642、C51语言提供的合法的数据类型关键字是()。

A、sfrB、BITC、CharD、integer r3、片内RAM的位寻址区,位于地址()处。

A、00H~1FHB、20H~2FHC、30H~7FHD、80H~FFH4、间接寻址片内数据存储区(256字节),所用的存储类型是()A、dataB、bdataC、idataD、xdata5、MCS-51单片机上电复位的信号是()A、下降沿B、上升沿C、低电平D、高电平6、可以将P1口的低4位全部置高电平的表达式是()A、P1&=0x0fB、P1|=0x0fC、P1^=0x0fD、P1=~P17、一般单片机C51程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不能够超过()A、1B、2C、3D、48、需要扩展一片外部RAM,大小32K字节,需要的地址线是()A、15B、14C、13D、129、如果将中断优先级寄存器IP中,将IP设置为0x0A,则优先级最高的是()A、外部中断1B、外部中断0C、定时/计数器1D、定时/计数器010、单片机C51中用关键字()来改变寄存器组A、interruptB、unsignedC、usingD、reentrant11、红外线遥控码由发射电路经()Hz的载频调制后发射。

A、38KB、12MC、6MD、32。

768K12、红外线遥控码的逻辑“0”与逻辑“1”是以脉冲的()决定的。

A、电平B、宽度C、频率D、形状13、DS1302内的时钟寄存器是以()的数据格式定义的。

A、十进制B、十六进制C、BCD码D、压缩BCD码14、设MCS-51单片机晶振频率为12MHz,定时器作定时器使用时,其最高的输入计数频率应为()A、2MHzB、1MHzC、500kHzD、250kHz15、使用_nop_()函数时,必须包含的库文件是()A、reg52.hB、absacc.hC、intrins.hD、stdio.h16、ADC0809的启动转换的信号是()A、ALEB、EOCC、CLOCKD、START17、线反转法识别有效按键时,如果读入的列线值不全为1,则说明()A、有键被按下B、一定只有一个键被按下C、一定有多个键被按下D、没有键被按下18、DS18B20的总线方式是()A、SPIB、I2CC、ONE—WIRED、SP219、24C02采用的总线形式是()A、CANB、SPIC、I2CD、PWM20、串行口每一次传送()字符。

A、1个B、1串C、 1波特D、1帧二、判断题:10分1、C51中,特殊功能寄存器一定需要用大写。

( )2、使用片内存储器时,EA脚必须置低。

()3、单片机外部中断时只有用低电平触发。

()4、bit定义的变量一定位于内部RAM的位寻址区。

( )5、采用单片机的C语言开发时,只能利用C51语言书写程序,不能嵌套汇编语言。

()6、51系列的单片机至少有5个中断,KEIL C51软件支持最多32个中断。

( )7、MCS-51单片机的程序存储器是可以用来存放数据的。

( )8、bit和sbit都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。

()9、MCS-51单片机的位地址总共有256位。

( )10、串口中断请求标志必须由软件清除。

( )三、多项选择题:10分1 、目前,MCS-51单片机采用的开发语言是()A、机器语言B、汇编语言C、BASIC语言D、C语言E、PASCAL语言2、51单片机的RAM包含以下几个部分()A、通用寄存器区B、可位寻址区C、用户RAM区D、SFR3、C51中使用最广泛的三个数据类型是()A、bitB、unsigned charC、unsigned intD、int4、关于bit型变量的用法,说法正确的()A、bit变量不能声明为指针B、不能定义有bit数组C、bit型变量自动存储于内部RAM的位寻址区D、bit型变量不可用作函数返回值5、存储器模式有()A、xdataB、smallC、codeD、large四、填空20分1、单片机中,常用作串入并出的芯片是_____________,常用作232串口电平转换芯片是_________________。

2、在单片机硬件设计时,31脚一般要接_____ _____,晶振在PCB设计中应尽量____________________。

相关文档
最新文档