单片机C语言试题

合集下载

单片机应用技术(C语言)试题

单片机应用技术(C语言)试题

一、选择题1、单片机8031的/EA引脚(C)。

A. 可悬空B. 必须接+5V电源C. 必须接地D. 以上三种情况视需要而定2、MCS-51单片机的4个并行I/O端口作为通用I/O端口使用,在输出数据时,必须外接上拉电阻的是(A)。

A. P0口B. P1口C. P2口D. P3口3、当MCS-51单片机应用系统需要扩展外部存储器或其它接口芯片时,(A)可作为低8位地址总线使用。

A. P0口B. P1口C. P2口D. P0口和P2口4、系统复位后,堆栈指针SP的内容是(B)。

A. 08HB. 07HC. 30HD. 50H5、MCS-51单片机的位寻址区位于内部RAM的( D )单元。

A. 00H~7FHB. 20H~7FHC. 00H~1FHD. 20H~2FH6、PSW中的RS1和RS0用来(A)。

A. 选择工作寄存器组B. 指示复位C. 选择定时器D. 选择工作方式7、MCS-51单片机规定一个机器周期共有(A)个节拍。

A. 12B. 6C. 8D. 168、下面叙述不正确的是(C)。

A. 一个C源程序可以由一个或多个函数组成B. 一个C源程序必须包含一个函数main()C. 在C51中,注释说明只能使用/*……*/注释D. C程序的基本组成单位是函数9、在C51程序中常常把(D)作为循环体,用于消耗CPU时间,产生延时效果。

A. 赋值语句B. 表达式语句C. 循环语句D. 空语句10、在单片机应用系统中,LED数码管显示电路通常有(C )显示方式。

A. 静态B. 动态C. 静态和动态D. 查询11、共阳极LED数码管加反向器驱动时显示字符“6”的段码是(B)。

A. 06HB. 7DHC. 82HD. FAH12、LED数码管若采用动态显示方式,下列说法错误的是(C)。

A. 将各位数码管的段选线并联B. 将段选线用一个8位I/O端口控制C. 将各位数码管的公共端直接连接在+5V或者GND上D. 将各位数码管的位选线用各自独立的I/O端口控制13、按键开关的结构通常是机械弹性元件,在按键按下和断开时,触点在闭合和断开瞬间会产生接触不稳定,为消除抖动引起的不良后果,常采用的方法有(C)。

完整word版单片机C语言期末考试习题

完整word版单片机C语言期末考试习题

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

A、sfrB、BITC、CharD、integer r)处。

、片内3RAM的位寻址区,位于地址(FFH ~、80H D C、30H~7FH A、00H~1FH B、20H~2FH、间接寻址片内数据存储区25字节),所用的存储类型是xdataidatabdata Adata5MCS-5单片机上电复位的信号是、高电、低电、上升、下降、可以P口的位全部置高电平的表达式是P1=~P1P1^=0x0fP1&=0x0fP1|=0x0f A程序中,为了使程序执行的效率最高,函数参数传递时,函数参数的个数不C51、一般单片够超过43 12 A 、需要扩展一片外RA,大32字节,需要的地址线是12131415 A中,I设置0x0,则优先级最高的是、如果将中断优先级寄存I、外部中0、外部中断10计数、定、定计数1)来改变寄存器1、单片C5中用关键字reentrantusinginterrupt AunsignedHz的载频调制后发射。

)11、红外线遥控码由发射电路经(?768K 。

、?32 D6M C、?12M? 、A38K B、)决定的。

1”是以脉冲的(、红外线遥控码的逻辑“120”与逻辑“、形状、频率、宽度A 、电平 B C D)的数据格式定义的。

DS130213、内的时钟寄存器是以(欢迎共阅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,则说明()、一定只有一个键被按下 B A、有键被按下、没有键被按、一定有多个键被按DS18B2的总线方式是18SP2ONISP WIRC 24C0采用的总线形式是1PWMC 、CANSPI )字符2、串行口每一次传送波个A1二、判断题) 1C5中,特殊功能寄存器一定需要用大写()2、使用片内存储器时,脚必须置低。

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

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

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

单片机C语言模拟试题

单片机C语言模拟试题
DJNZ R7,LOOP
2.请将ROM3000H单元内容送R7
答:MOV DPTR, #3000H
CLR A
MOVC A,@A+DPTR
MOV R7,A
七、编程题(40分)
1 已知一MCS—51单片机系统的片内RAM 20H单元存放了一个8位无符号数7AH,片外扩展RAM的8000H存放了一个8位无符号数86H,试编程完成以上两个单元中的无符号数相加,并将和值送往片外RAM的01H、00H单元中,同时将所编写程序运行完成后的数据和状态添入下表中给出的PSW的有关位以及寄存器A、DPTR和RAM单元中。
2、片内RAM的20H~2FH为位寻址区,所包含的位地址是( B )。
A、00H~20H B、00H~7FH C、20H~2FH D、00H~FFH
3、MCS-51单片机的复位信号是( A )有效。
A、高电平 B、低电平 C、脉冲 D、下降沿
答:P=1/f=(1/11.059×106)=0.09×10-6s
=90ns
S=2P=2×90ns=180ns
机器周期=12P=12×90ns=1.08μs
双指令周期=2×机器周期=2.16μs
判题标准:每问4分,结果错,分值全扣;结果正确,量纲错或不写量纲,每问扣1分。
2.MCS—5l单片机的堆栈区只可设置在 片内数据存储区(器)
3.MCS—51单片机外部中断请求信号有电平方式和脉冲方式,在电平方式下,当采集到INT0、INT1的有效信号为低电平时,激活外部中断。
4.定时器/计数器的工作方式3是指的将定时器/计数器0 拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作为串行口的波特率发生器使用。

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。

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语言试题及答案试题一:数据类型与变量定义(20分)1. 请问以下哪种数据类型不属于C语言中的基本数据类型?A. intB. floatC. booleanD. char答案:C. boolean2. 在C语言中,下列变量命名中哪个是不合法的?A. myVarB. _dataC. 123abcD. num1答案:C. 123abc3. 下列语句中,哪个是正确的变量定义?A. int num = 10;B. float = 3.14;C. bool flag;D. char = 'A';答案:A. int num = 10;试题二:条件语句与循环结构(30分)1. 下列条件语句中,哪个用于多个选项的判断?A. if语句B. while语句C. for语句D. switch语句答案:D. switch语句2. 请问以下哪个循环结构是先判断后执行?A. while循环B. for循环C. do-while循环D. if语句答案:C. do-while循环3. 下列代码中,哪个选项可以正确打印出10到1的倒序数列?A. for(int i = 10; i > 0; i--)B. while(i >= 1) { i--; }C. do { i--; } while(i >= 1);D. if(i > 0) { i--; }答案:A. for(int i = 10; i > 0; i--)试题三:函数与数组(50分)1. 下列关于函数的说法中,哪个是错误的?A. 函数可以重复定义多次B. 函数可以有返回值也可以没有返回值C. 函数可以调用其他函数D. 函数可以接收参数,也可以不接收参数答案:A. 函数可以重复定义多次2. 请问以下代码片段有什么问题?int sum(int a, int b) {int result = a + b;return result;}int main() {int result = sum(3, 4);printf("The sum is %d", result);}答案:缺少头文件包含和函数调用。

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语言一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个函数用于将整数转换为字符串?A. sprintfB. atoiC. itoaD. strtol答案:C3. 下列关于C语言数组的描述中,错误的是?A. 数组可以存储不同类型的数据B. 数组的索引从0开始C. 数组在声明时必须指定大小D. 数组可以作为函数的参数答案:A4. 在C语言中,以下哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A5. C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. intD. void答案:C6. 下列关于C语言指针的描述中,正确的是?A. 指针可以存储函数的地址B. 指针不能存储数组的地址C. 指针不能存储变量的地址D. 指针不能存储常量的地址答案:A7. 在C语言中,以下哪个关键字用于定义一个全局变量?A. externB. staticC. registerD. auto答案:A8. 下列关于C语言函数的描述中,错误的是?A. 函数可以返回一个值B. 函数可以没有返回值C. 函数可以没有参数D. 函数可以有多个返回值答案:D9. 在C语言中,以下哪个语句用于在循环中终止循环?A. breakB. continueC. returnD. exit答案:A10. 下列关于C语言中文件操作的描述中,错误的是?A. 使用fopen函数打开文件B. 使用fclose函数关闭文件C. 使用fread函数读取文件D. 使用fwrite函数写入文件答案:C二、填空题(每题2分,共20分)1. 在C语言中,用于定义单片机特殊功能寄存器的关键字是________。

答案:sfr2. C语言中,用于声明一个无符号字符的关键字是________。

单片机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语言期末考试答案一、单选题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语言单片机考试题及答案详解

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. 描述单片机中断服务程序的执行流程。

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

单片机原理c语言试题及答案

单片机原理c语言试题及答案

单片机原理c语言试题及答案一、选择题(每题2分,共10分)1. 在C语言中,下列哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 下列关于单片机中断处理的描述,不正确的是?A. 中断服务程序必须使用中断服务函数来实现B. 中断服务程序可以嵌套C. 中断服务程序执行完毕后,CPU会自动返回到被中断的程序继续执行D. 中断服务程序的执行时间应尽可能短答案:B3. 在8051单片机中,下列哪个寄存器用于存储当前正在执行的中断服务程序的地址?A. SPB. PCC. PSWD. DPTR答案:B4. 下列关于C语言中指针的描述,正确的是?A. 指针变量不能被赋值B. 指针变量可以存储任意类型的数据C. 指针变量的值是它所指向的变量的地址D. 指针变量不能作为函数的参数答案:C5. 在8051单片机中,下列哪个指令用于将累加器A的内容传送到外部数据存储器?A. MOVX A, @DPTRB. MOV A, @R0C. MOV A, #dataD. MOV A, direct答案:A二、填空题(每题2分,共10分)1. 在C语言中,使用________关键字可以定义一个全局变量。

答案:extern2. 在8051单片机中,定时器/计数器的控制寄存器是________。

答案:TCON3. C语言中,函数的返回值类型定义在函数定义的________部分。

答案:首部4. 在8051单片机中,使用________指令可以设置定时器的模式。

答案:TMOD5. 在C语言中,使用________运算符可以获取一个变量的地址。

答案:&三、简答题(每题5分,共10分)1. 简述单片机中断系统的作用。

答案:单片机中断系统的作用是允许单片机在执行当前任务的同时,能够响应外部事件或内部事件的请求,从而实现多任务处理。

2. 描述C语言中数组和指针的关系。

答案:在C语言中,数组名可以作为指向数组首元素的指针使用。

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

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

c语言单片机考试题及答案1. 单片机中,下列哪个寄存器用于存储程序计数器(PC)的值?A. SPB. PCC. DPTRD. ACC答案:B2. 在C语言中,用于定义单片机特殊功能寄存器的关键字是什么?A. volatileB. staticC. constD. register答案:A3. 8051单片机的定时器/计数器有哪几种工作模式?A. 0、1、2、3B. 1、2、3、4C. 0、1、2、3、4D. 0、1、2、3、4、5答案:C4. 8051单片机的中断优先级由哪两个寄存器共同决定?A. IP和IEB. IP和TCONC. IE和TCOND. P1和P2答案:A5. 在C语言中,如何声明一个外部中断服务程序?A. 使用关键字interruptB. 使用关键字interrupt和中断号C. 使用关键字interrupt和中断向量地址D. 使用关键字interrupt和中断优先级答案:B6. 8051单片机的串行通信可以工作在哪些模式?A. 模式0、1、2、3B. 模式0、1、2、3、4C. 模式0、1、2、3D. 模式0、1、2、3、4、5答案:C7. 在C语言中,如何声明一个定时器中断服务程序?A. 使用关键字timer和中断号B. 使用关键字interrupt和中断号C. 使用关键字timer和中断向量地址D. 使用关键字interrupt和中断优先级答案:B8. 8051单片机的外部中断有哪几个?A. INT0和INT1B. INT0、INT1和T0C. INT0、INT1和T1D. INT0、INT1、T0和T1答案:A9. 在C语言中,如何声明一个看门狗定时器中断服务程序?A. 使用关键字watchdog和中断号B. 使用关键字interrupt和中断号C. 使用关键字watchdog和中断向量地址D. 使用关键字interrupt和中断优先级答案:B10. 8051单片机的I/O口可以驱动多少个LED灯?A. 4个B. 8个C. 16个D. 32个答案:B。

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

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

c语言单片机考试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于声明函数?A. intB. voidC. returnD. function答案:B2. 在C语言中,以下哪个符号用于数组的声明?A. {B. [C. (D. {答案:B3. 若有定义:int a=5; 则表达式 a++ 的值是多少?A. 4B. 5C. 6D. 0答案:B4. C语言中,以下哪个关键字用于定义指针?A. intB. charC. *D. float5. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:C6. C语言中,以下哪个函数用于输出字符串?A. printfB. scanfC. putsD. getchar答案:C7. 若有定义:int a=3, b=4; 则表达式 a+b 的值是多少?A. 7B. 34C. 43D. 3+4答案:A8. 在C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A9. C语言中,以下哪个函数用于输入一个字符?B. getcharC. getsD. printf答案:B10. 下列哪个选项是C语言中的合法常量?A. 0x1AB. 0X1aC. 0x1A3D. 0x1AG答案:A二、填空题(每题2分,共20分)1. 在C语言中,用来定义单片机I/O端口的关键字是______。

答案:sbit2. 若定义了指针变量 int *p; 则 p 指向的变量的值可以通过______ 来改变。

答案:*p3. C语言中,用于定义一个无返回值的函数的关键字是 ______ 。

答案:void4. 若有数组定义 int arr[5] = {1, 2, 3, 4, 5}; 则 arr[2] 的值是 ______ 。

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

单片机与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单片机的定时器/计数器的作用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2■bit和sbit都是用来定义位变量,所以两者之间没有区别,可以随便替换使用。
1■单片机的程序中,一定有一个死循环的程序,否则,会出现运行错误。
1■中断函数的调用是在满足中断的情况下,自动完成函数调用的。
■下面是用MCS-51单片机操作I2C器件的一些概念,其中错误的是 D 。
A. 无I2C硬件接口 B. 必须做为主机
C. 必须I/O编程 D. 可以中断接收
■I2C器件的管脚特性为 B 。
A. TTL B. 开路输出 C. RS232 D. RS485
■C51程序设计中在定义变量类型时一般要求定义为 无符号字符 。
■在结构化语言中,为了避免使用无条件转移语句,采用的命令是 break
与 return 。
■不使用goto语句而要从循环体中提前退出、要使用命令 break 。
C.等待释放 D. 错,三项都必须
判断题: 15*2
2■用C51编程不需要考虑微处理器具体指令系统和体系结构的细节问题。
2■编程时在程序中不能出现常数。
1■用C51编程有可能某些指令或类型编译时能通过、但实际运行时会出错。
2■在编写软件时开发速度比代码的长短重要。
■在KEIL开发套件中,BL51链接器/定位器用于创建一个 绝对目标横快 。
■Cx51中函数分为两大类: 标准库函数 和 用户自定义函数 。
■在函数名前如果不指定函数类型,则该函数的类型为 整型 。
■具有一定格式的数字或数值叫做 数据 ,数据的不同格式叫做 数据类型 ,
■当前出现了以C语言取代汇编语言的发展趋势,但汇编编程却是不可摒弃的。这是因为一个实际运行程序会要求: 运行速度 、 响应时间 、 代码空间 与 时序控制 。
■C中最高优先级的操作是 取非 。
■数组的两个基本特性是 固定数目 与 相同类型 。
■用位操作语句开T0定时器中断需要执行 ETO=1 与 EA=1 。
■用赋值语句开T0定时器中断需要执行 IE=0x82 。
■用Cx51编程要掌握三个方面的技术: 内部资源编程 、 扩展资源编程 、与 C语言的编程技巧 。
■将一个变量v的值扩大一倍,最通用的方法是 C 。
A. v=v+v; B. v=v*2;
C. v=v<<1; D. 编译后都一样
■在下面四种流程图中,哪种表示法最好? B
A B C D
A. char B. code C. interrupt D. using
■将一个变量v的值扩大一倍,效率最高的方法是 A 。
A. v=v+v; B. v=v*2;
C. v=v<<条不属于C语言的不足? D 。
A. 程序生成的代码占用空间大、效率低。
B. 不能准确计算程序的运行时间。
C. 不能对某些时序电路进行控制。
D. 只能针对MCS-51系列单片机编程。
■在对常量、变量、子程序与管脚命名时主要用小写字母的是 C 。
A. 常量 B. 变量 C. 子程序 D. 管脚定义
■ 将下面左边四项与右边四项用线连起来。
1data 80~FF3
2bdata 00~7F1
3sfr 20~2F2
4xdata 0000~FFFF4
■ 单片机C语言程序设计中,用关键字 (A )定义单片机的端口。
A. sbit B. bit
C. unsigned char D. unsigned int
■单片机C51中用关键字( C )来改变寄存器组。
A.interrupt B.unsigned
1■单片机程序设计中常常需要在最开始用循环语句来延时几十毫秒。
1■一个实际应用软件常常会严格要求程序的代码大小与运行速度
2■Cx51自带的库函数与用户定义函数具有本质上的区别。
2■STC-ISP下载程序将编译生成的HEX文件写进STC单片机内部。
1■使用符号常量可做到一改全改,利于移植和升级。
C. 方式2 D. 方式3
■下面哪一条不属于Cx51的优点? C 。
A. 具有较好的可读性,方便系统维护和升级。
B. 不需要较多考虑微处理器具体指令系统和体系结构的细节问题。
C. 源程序代码简短,运行速度快。
D.具有较好的移植性,能实现程序代码资源的灵活共享。
C. using D.define
■下面的语句哪个是设置定时器0的中断使能的(B )。
A.EX0=1; B. ET0=1;
C.ES0=1; D. EA=1;
■与开启定时器0中断无关的是 C 。
A.TR0=1; B. ET0=1;
■软件对常量与变量的命名规范是:常量名用 大写 字母,变量名用 小写 字母。
■MCS-51单片机串口用于中断通讯时,在进行初始化时必须设置的特殊功能寄存器有:
SCON 、 TMOD 、PCON 、 TH1 、 TL1 、 TCON 和 IE 。
■I2C总线在传送数据过程中共有三种类型控制信号, 它们分别是:_(起始信号)____、应答信号、_(停止信号)_____。
■I2C的地址由 (协议规定) 与 (硬件设置) 两部分组成。
■I2C器件的两条信号线分别为 串行时钟线SCL 与 串行数据线SDA 。
■混合编程中C语言调用汇编函数时,在汇编语言编程时要用 D 将汇编函数予以声明。
A.extern B. extrn;
C.extern code D. public
■软件在按键处理时,哪一项不是必须的? A 。
A.进入中断 B. 延时去抖
C.串行E2PROM D. 并行E2PROM
■单片机混合编程设计时,如在C中定义了一个字符变量Count,要在汇编中使用时,对它正确的声明是(C )。
A.extrn bit(Count) B. extrn code(Count)
C.extrn data(Count) D. extern data(Count)
填空题 20*2
■对于51系列单片机,现有4种语言支持程序设计,它们是(汇编语言)、PL/M、(C语言)、BASIC。
■单片机程序设计时需要在主程序中设计死循环来防止程序跑飞。在C语言中采用(while(1))或for(;;)语句实现死循环。
■单片机程序设计中经常用到中断,在C语言程序设计中外部中断1的中断入口序号(2),而汇编语言程序设计中外部中断1的入口地址是(0013H)。
数据按一定的数据类型进行的排列、组合及架构称为 数据结构 。
■数据类型的转换有 自动转换 与 强制转换 两种。
■直接出现在程序中的数值(如TMOD=0x21)称为 常数 。在程序运行的过程中,其值不能改变且被定义为符号的(如#define CONST 60)称为 常量 。
■如果不在函数说明后用using选择寄存器组,则其地址范围为 00 至 07 。
选择题: 10*2
■不适用于用汇编语言编程的情况是 C
对时序要求较严格的产品
对程序代码空间有严格要求的产品
对软件开发的进度有所要求的时候
对实时性要求较高的应用场合
■与MCS-51硬件资源无关的关键字是 A 。
1■要改变常量的值,必需先修改程序后重新编译。
2■串行通讯必须采用中断方式。
1■采用定时器查询方式时必须软件清除溢出标志。
1■进入串口中断后必须判断是接收中断还是发送中断。
2■进入定时器中断后必须软件清除溢出标志。
1■C51中,特殊功能寄存器一定需要用大写。 ( )
1■MCS-51单片机的程序存储器是可以用来存放数据的。( )
■STC单片机片内E2PROM用了哪一个存储空间? D 。
A. AP程序存储器 B. ISP程序存储器
C. 数据存储器 D. 独立的存储空间
■STC单片机片内无哪一个硬件资源? C 。
A. AP程序存储器 B. ISP程序存储器
C.ES0=1; D. EA=1;
■24C02采用的总线形式是 B
A. CAN B. I2C
C. SPI D. RS232
■MCS-51串口采用的总线形式是A
A. UART B. I2C
C. SPI D. RS232
■编写串口中断程序时要在函数说明部分后写 interrupt 4 。
■编写定时器0中断程序时要在函数说明部分后写 interrupt 1 。
■C语言程序设计中有一个无符号形字符变量temp和一个位变量Flag,现在分别对它们取反。相应的语句为temp=__~___temp; Flag=_!___Flag;。
■MCS-51单片机操作I2C器件时,单片机必须做为 主机,I\O编程 。
■在Cx51所有的数据类型中,只有 bit 与 unsigned char 直接支持机器指令。
■编译器性能比较有如下几个方面: 算数支持 、 生产代码大小 、 开打速度 、 支持浮点和long 。
■软件在处理按键时的流程是: 去抖动 、 读键 、 等待释放 、 去抖动 。
■单片机系统设计中经常用到单片机AD总线的读写时序来进行硬件系统设计,单片机C语句temp=XBYTE[地址]包含三层含义:①外部地址单元的数读到变量temp中。 ②单片机的(RD)信号有效。 ③外部地址单元的数据送到____P0___端口上。
■一个在程序运行中其值不会改变的数组,应定义其类型为 C 。
A. char B. unsigned char
C. code D. xdata
■用MCS-51单片机串行口扩展并行接口,应采用 A 。
A. 方式0 B. 方式1
相关文档
最新文档