(C语言版)单片机复习题
单片机C语言复习题
单片机C语言复习题一、单项选择题: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、串行口每一次传送()字符。
单片机复习题库(含答案)
单片机复习题库(含答案)单片机复习题库(含答案)一、单选题1. 下面哪个不是单片机的特点?A. 集成度高B. 执行速度快C. 操作简便D. 存储容量大答案:D2. 在单片机的复位电路中,常用的复位方式是:A. 程序复位B. 硬件复位C. 软件复位D. 手动复位答案:B3. 单片机中断的触发方式有以下哪几种?A. 内部触发B. 外部触发C. 软件触发D. 手动触发答案:A、B、C4. 单片机中的位操作指令是指对数据的哪一部分进行操作?A. 高字节B. 低字节C. 位D. 字节答案:C5. 单片机工作模式中,可以通过设置谁来控制单片机工作状态?A. 硬件B. 软件C. 中断D. 外部信号答案:B二、判断题1. 单片机的外部中断一般需要使用外部中断触发器。
答案:错2. 单片机的I/O口可以设置为输入、输出或者双向。
答案:对3. 单片机的Flash存储器是一种非易失性存储器。
答案:对4. 单片机的片内RAM存储器可以直接运行程序。
答案:对5. 单片机的位操作指令是指对数据的整个字节进行操作。
答案:错三、填空题1. 单片机的中断向量表一般存储在()中。
答案:ROM2. 单片机的外部中断触发方式可以选择为()或者()。
答案:上升沿触发、下降沿触发3. 单片机的位操作指令是通过()实现对数据位的读、写或者置位等操作。
答案:位地址4. 单片机的运算指令可以对()进行算术运算或者逻辑运算。
答案:寄存器中的数据5. 单片机的GPIO口是指()。
答案:通用输入输出口四、简答题1. 请简要解释单片机的中断工作原理。
答案:单片机在执行程序的过程中,可以根据外部或者内部的中断请求来暂停当前的工作,转而执行中断服务程序。
当中断请求触发时,单片机会保存当前的程序计数器和其它寄存器的状态,然后跳转到对应的中断服务程序。
该程序处理完中断事件后,再返回到原来的程序继续执行。
通过中断,可以提高单片机的响应速度和处理能力。
2. 请简要说明单片机的I/O口使用方法。
(完整版)单片机题库分章节答案(C语言)
第1部分单片机概述及数学基础一、填空题1、十进制255的二进制是11111111,十六进制是FF 。
2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/输出接口电路、以及相互连接的总线等集成在一块芯片上。
3、十进制127的二进制是1111111,十六进制是7F。
4、+59的原码是00111011,-59的补码是11000101。
5、十进制数100转换为二进制数是1100100;十六进制数100转换为十进制数是256。
6、十进制数40转换为二进制数是101000;二进制数10.10转换为十进制数是 2. 5。
7、十进制99的二进制是1100 011,十六进制是63。
二、判断题(×)1、AT89S51是一种高性能的16位单片机。
8位机(×)2、有符号正数的符号位是用1表示的。
三、选择题()1、计算机中最常用的字符信息编码是(A)A. ASCIIB.BCD码C. 余3码D. 循环码四、简答题1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点?第2部分51单片机硬件结构、存储系统及I/O接口一、填空题1、AT89S51单片机共有 4 个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O口的是P0。
2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为__ 1/12 μS __ ,机器周期为____1μS __。
3、AT89S51单片机字长是___8___位,有___40根引脚。
4.89S51单片机是8位单片机,其PC计数器是16位。
5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6µS,一个机器周期是2μSµS。
6.89S51单片机是+5 V供电的。
4.0-5.5V7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。
8.MSC-51系列单片机具有 4 个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是一个专供用户使用的I/O口,常用于第二功能的是P3 口。
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语言版单片机试题及答案一、选择题(每题2分,共10分)1. C语言中,以下哪个关键字用于定义结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B3. 下列关于C语言数组的描述,正确的是:A. 数组的大小在运行时确定B. 数组的大小在编译时确定C. 数组可以动态分配D. 数组可以存储不同类型的数据答案:B4. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcatB. strcpyC. strcmpD. strlen答案:B5. C语言中,以下哪个函数用于打开文件?A. fopenB. fcloseC. freadD. fwrite答案:A二、填空题(每题2分,共10分)1. 在C语言中,______关键字用于定义一个函数。
答案:void2. C语言中,______关键字用于声明一个指针。
答案:*3. 在C语言中,______关键字用于定义一个全局变量。
答案:extern4. C语言中,______关键字用于定义一个静态变量。
答案:static5. 在C语言中,______函数用于将一个整数转换为字符串。
答案:itoa三、简答题(每题5分,共20分)1. 请简述C语言中指针和数组的关系。
答案:在C语言中,指针和数组有密切的关系。
指针可以存储数组的地址,通过指针可以访问数组的元素。
数组名本身可以作为指向数组首元素的指针使用。
指针运算可以用来遍历数组。
2. 解释C语言中的预处理器指令#include的作用。
答案:预处理器指令#include用于将指定的文件包含到当前文件中。
这些文件通常是库文件或头文件,包含了函数声明、宏定义、类型定义等,使得程序可以调用这些文件中定义的内容。
3. 描述C语言中函数的调用过程。
答案:在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单片机试题及答案一、选择题(每题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语言单片机编程是电子工程领域中的一项重要技能,它涉及到嵌入式系统的开发和控制。
C语言是单片机编程中常用的编程语言之一。
本文将通过一些复习题来帮助读者回顾和巩固单片机编程中的C语言知识。
1. 请编写一个C语言函数,用于计算给定数组中的最大值。
```cint findMax(int arr[], int size) {int max = arr[0];for (int i = 1; i < size; i++) {if (arr[i] > max) {max = arr[i];}}return max;}```2. 请编写一个C语言函数,用于计算给定数组中的平均值。
```cfloat calculateAverage(int arr[], int size) {int sum = 0;for (int i = 0; i < size; i++) {}return (float)sum / size;}```3. 请编写一个C语言函数,用于将给定的字符串反转。
```cvoid reverseString(char str[]) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```4. 请编写一个C语言函数,用于判断给定的字符串是否为回文字符串。
```cint isPalindrome(char str[]) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {if (str[i] != str[length - i - 1]) {}}return 1;}```5. 请编写一个C语言函数,用于将给定的十进制数转换为二进制数。
(C语言版)绝密版C51单片机复习题及答案
(C语言版)绝密版C51单片机复习题及答案一填空题1、计算机中最常用的字符信息编码是(ASCII码)。
2、MCS-51系列单片机为(8)位单片机。
3、若不使用MCS-51片内存储器引脚(/EA)必须接(地)。
4、8031内部有(128)个RAM;8051内部有(4K ROM)和(128个RAM)。
5、堆栈的地址由(SP)内容确定,其操作规律是“(先)进(后)出”。
6、在单片机扩展时,(P0)口和(P2)口为地址线,(P0)口又分时作为数据线。
7、在MCS-51单片机中,如采用6MHZ晶振,一个机器周期为(2us)。
8、当80C51的RST引脚上保持(2)个机器周期以上的低电平时,80C51即发生复位。
9、当P1口做输入口输入数据时,必须先向该端口的锁存器写入(1),否则输入数据可能出错。
10、若某存储芯片地址线为12根,那么它的存储容量为(4K B)。
11、程序状态寄存器PSW的作用是用来保存程序运行过程中的各种状态信息。
其中CY为(进位)标志,用于无符号数加(减)运算,当进行(位)操作时作为位累加器。
OV为(溢出)标志,用于有符号数的加(减)运算。
12、消除键盘抖动常用两种方法,一是采用(硬件去抖电路),用基本RS触发器构成;二是采用(软件去抖程序),既测试有键输入时需延时(约大于10毫秒)后再测试是否有键输入,此方法可判断是否有键抖动。
13、若MCS-51单片机采用12MHz的晶振频率,它的机器周期为(1us),ALE引脚输出正脉冲频率为(2MHZ)。
14、8051有两个16位可编程定时/计数器,T0和T1。
它们的功能可由两个控制寄存器(TCON)、(TMOD)的内容决定,且定时的时间或计数的次数与(TH)、(TL)两个寄存器的初值有关。
15、串行口的控制寄存器SCON中,REN的作用是(允许串行接收位)。
16、单片机内外中断源按优先级别分为高级中断和低级中断,级别的高低是由(中断优先级寄存器,)寄存器的置位状态决定的。
单片机考试题目及答案
单片机考试题目及答案一、单项选择题(每题2分,共20分)1. 单片机中,以下哪个寄存器用于存储程序计数器(PC)的值?A. SPB. PCC. DPTRD. SCON答案:B2. 在8051单片机中,下列哪个指令用于将累加器A的内容传送到外部数据存储器?A. MOV A, @R0B. MOVX A, @DPTRC. MOV A, #dataD. MOV A, R0答案:B3. 下列哪个指令是8051单片机的无条件跳转指令?A. SJMPB. CJNEC. DJNZD. JZ答案:A4. 在8051单片机中,以下哪个中断源的中断优先级最高?A. 外部中断0B. 定时器0中断C. 外部中断1D. 串行通讯中断答案:C5. 8051单片机的定时器/计数器工作在方式1时,其计数器的计数范围是多少?A. 0到255B. 0到65535C. 0到32767D. 0到65536答案:C6. 8051单片机中,哪个指令用于将累加器A的内容与立即数进行逻辑“或”操作?A. ORL A, #dataB. ORL A, directC. ORL A, @R0D. ORL direct, #data答案:A器R0的内容进行逻辑“与”操作?A. ANL A, R0B. ANL R0, AC. ANL A, #dataD. ANL direct, A答案:A8. 8051单片机中,哪个指令用于将累加器A的内容与直接地址中的数据进行逻辑“异或”操作?A. XRL A, #dataB. XRL A, directC. XRL direct, AD. XRL A, @R0答案:B器R0的内容进行逻辑“异或”操作?A. XRL A, R0B. XRL R0, AC. XRL A, #dataD. XRL direct, A答案:A10. 8051单片机中,哪个指令用于将累加器A的内容与寄存器R0的内容进行逻辑“与”操作后,结果存回R0?A. ANL A, R0B. ANL R0, AC. ANL A, #dataD. ANL direct, A答案:B二、填空题(每题2分,共20分)1. 8051单片机的内部RAM分为______和______两部分。
单片机原理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语言单片机考试题及答案一、选择题(每题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 语言试题》(二)一、填空题1、设 X=5AH,Y=36H,则 X 与Y“或”运算为________,X 与Y 的“异或”运算为_______。
2、若机器的字长为 8 位,X=17,Y=35,则X+Y=__110100_____,X-Y=_111011 10______ (要求结果写出二进制形式)。
3、单片机复位后,堆栈指针 SP 的值是_______。
4、单片机中,常用作地址锁存器的芯片是___________,常用作地址译码器芯片是_____________。
5 若采用6MHz 的晶体振荡器,则MCS-51 单片机的振荡周期为_______,机器周期为______________。
6、子程序返回指令是___ __,中断子程序返回指令是 _ 。
7、8051 单片机的存储器的最大特点是与分开编址。
8、一个函数由两部分组成,即和。
9、C 语言中输入和输出操作是由库函数和等函数来完成。
10.当MCS-51 引脚信号有效时,表示从Po 口稳定地送出了低8 位地址.12.MCS-51 有4 组工作寄存器,它们的地址范围是。
13.MCS-51 片内范围内的数据存储器,既可以字节寻址又可以位寻址.14.计算机的系统总线、、有。
115.80C51 在物理有个独立的存储空间。
16.一个机器周期等于状态周期,振荡脉冲2 分频后产生的时钟信号的周期定义为周期。
二、单项选择题1、C 语言中最简单的数据类型包括()。
A、整型、实型、逻辑型B、整型、实型、字符型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型2、下列描述中正确的是()。
A、程序就是软件B、软件开发不受计算机系统的限制C、软件既是逻辑实体,又是物理实体D、软件是程序、数据与相关文档的集合3、下列计算机语言中,CPU 能直接识别的是()。
A、自然语言B、高级语言C、汇编语言D、机器语言4、MCS-5l 单片机的堆栈区是设置在( )中。
A、片内 ROM 区B、片外 ROM 区C、片内 RAM 区D、片外 RAM 区5、以下叙述中正确的是()。
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语言)一.填空题1.MCS-51单片机是________位机,其最大程序容量可达________K字节,有________个并行口和________条I/O管脚。
2.MCS-51单片机正常工作所必须的外部硬件电路是________、________、________。
3.MCS-51单片机复位电平是________电平,正常工作时复位端为________电平,复位后并所有行口的输出为________电平。
4.MCS-51单片机内部结构中,四个基本功能单元分别是________、________、________、________;三个扩展功能单元分别是________、________、________。
5.MCS-51单片机内部RAM四个分区分别是________、________、________、________。
6.MCS-51单片机________口没有内部上拉电阻;并行口作为输入口使用时必须保证该端口场效应管________,即向该端口写________,此时该端口的输出锁存器Q端为________。
7.MCS-51单片机计数器工作在方式1和方式2的最大计数值分别是___________、___________。
8.MCS-51单片机若单片机的主时钟振荡频率为6MHz,定时器工作在方式1和方式2的最大定时时间分别是___________ms、___________us。
基本指令周期是__________us。
9.MCS-51单片机的五个中断源分别是_________、_________、__________、_________、__________。
10.编写程序常用的三种程序结构是_________、_________、__________。
11.C语言语法中,数据类型unsigned char 定义的是_________位无符号数;数据类型unsigned int定义的是_________位无符号数。
单片机C语言复习题
单片机C语言复习题在单片机编程中,我们可以使用哪些数据类型?一个C程序通常包含一个主函数和其他_________。
单片机C语言中,常用的输入输出函数有_________,_________等。
在单片机C语言中,我们通常使用_________来定义一个常量。
在单片机C语言中,_________是一种特殊的数据类型,用于声明只读的变量。
编写一个简单的单片机C程序,实现两个数字的相加并输出结果。
要求使用单片机常见的输入输出函数,如scanf和printf。
int num1, num2, sum;printf("请输入两个数字:\n");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两数之和为:%d\n", sum);}单片机是一种微型计算机,它具有强大的计算和控制能力,广泛应用于各种领域,如电子、通信、工业控制等。
C语言是一种通用的编程语言,具有高效、易用、可移植性好等优点,因此也成为单片机开发的首选语言。
在单片机中,使用C语言进行编程需要一定的硬件和软件知识。
你需要了解单片机的硬件结构和相关寄存器的作用,这样才能正确地使用C语言对单片机进行控制。
你需要掌握C语言的语法和编程技巧,这样才能编写出高效、可靠的程序。
数据类型:在单片机中,常用的数据类型有int、char、float等。
其中,int类型通常用于表示整数,char类型用于表示字符,float 类型用于表示浮点数。
运算符:C语言中常用的运算符包括赋值运算符(=)、算术运算符(+、-、*、/)、比较运算符(>、<、>=、<=)、逻辑运算符(&&、||)等。
控制结构:C语言中有三种控制结构,分别是顺序结构、选择结构和循环结构。
其中,选择结构包括if语句和switch语句,循环结构包括for循环、while循环和do-while循环。
单片机复习题 c语言
单片机复习题 c语言单片机复习题 C 语言在学习单片机的过程中,掌握 C 语言是非常重要的。
C 语言是一种高级编程语言,广泛应用于单片机的开发中。
下面是一些常见的单片机复习题,通过这些题目的回顾,可以加深对 C 语言的理解和应用。
1. 请用 C 语言编写一个程序,实现两个整数相加的功能。
```c#include <stdio.h>int main() {int a, b, sum;printf("请输入两个整数:");scanf("%d %d", &a, &b);sum = a + b;printf("两个整数的和为:%d\n", sum);return 0;}```2. 请用 C 语言编写一个程序,判断一个数是否为偶数。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("这是一个偶数。
\n");} else {printf("这是一个奇数。
\n");}return 0;}```3. 请用 C 语言编写一个程序,计算一个数的阶乘。
```c#include <stdio.h>int main() {int num, factorial = 1;printf("请输入一个整数:");scanf("%d", &num);for (int i = 1; i <= num; i++) {factorial *= i;}printf("%d 的阶乘为:%d\n", num, factorial);return 0;}```4. 请用 C 语言编写一个程序,找出一个数组中的最大值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机复习题一、名词解释1、时序:按照时间顺序显示的对象(或引脚、事件、信息)序列关系。
2、指令:CPU用于指挥功能部件完成某一指定动作的指示和命令。
3、变量:在程序执行过程中,数值可以发生改变的量称为变量。
4、伪指令:伪指令又称汇编系统控制译码指令或指示性指令,仅仅用于指示汇编系统软件要完成的操作,故一般不产生机器代码(定义字节或字的伪指令除外)。
5、存储种类:变量在程序执行过程中的作用范围。
变量的存储种类有4种:自动、外部、静态和寄存器。
6、数据类型:数据的不同格式。
7、中断:计算机在运行当前程序的过程中,若遇紧急或突发事件,可以暂停当前程序的运行,转向处理该突发事件,处理完成后再从当前程序的间断处接着运行。
8、串行通信:数据一位一位地按顺序进行传送。
9、波特率:串行通信的数据是按位进行传送的,每秒传送的二进制数码的位数称为波特率。
10、字节:计算机数据处理的基本单位。
11、分辨率:DAC能够转换的二进制的位数。
12、三态门:三态门是一种重要的总线接口电路。
三态指其输出既可以是一般二值逻辑电路的正常的高电平(逻辑1)或低电平(逻辑0),又可以保持特有的高阻抗状态(Hi-Z)。
13、OC门:又称集电极开路(漏极开路)与非门门14、总线:为了减少连接线,简化组成结构,把具有共性的连线归并成一组公共连线,就形成了总线。
15、时钟周期:晶振或外加振荡源的振荡周期。
二、填空题1、计算机中最常用的字符信息编码是(ASCII码)。
2、MCS-51系列单片机为(8)位单片机。
3、若不使用MCS-51片内存储器引脚( EA)必须接地。
4、8051内部有(4K)ROM和(128 )个字节RAM。
5、堆栈的地址由(SP)内容确定,其操作规律是“(先)进(后)出”。
6、在单片机扩展时,(P0 )口和(P2 )口为地址线,(P0 )口又分时作为数据线。
7、在MCS-51单片机中,如采用6MHZ晶振,一个机器周期为(2μm )。
8、当80C51的RST引脚上保持(2 )个机器周期以上的高电平时,80C51即发生复位。
9、当P1口做输入口输入数据时,必须先向该端口的锁存器写入(1),否则输入数据可能出错。
10、若某存储芯片地址线为12根,那么它的存储容量为( 4KB )。
11、程序状态寄存器PSW的作用是用来保存程序运行过程中的各种状态信息。
其中CY为(进位)标志,当进行(位)操作时作为位累加器。
OV为(溢出)标志,用于有符号数的加(减)运算。
12、消除键盘抖动常用两种方法,一是采用(硬件去抖电路),用基本RS触发器构成;二是采用(软件去抖程序),既测试有键输入时需延时(5-20ms)后再测试是否有键输入,此方法可判断是否有键抖动。
13、若MCS-51 单片机采用12MHz 的晶振频率,它的机器周期为(1μm ),ALE 引脚输出正脉冲频率为(2MHZ )。
14、8051有两个16位可编程定时/计数器,T0和T1。
它们的功能可由两个控制寄存器(TCON )、(TMOD )的内容决定,且定时的时间或计数的次数与(TH )、(TL)两个寄存器的初值有关。
15、串行口的控制寄存器SCON中,REN的作用是( 允许串行接收位)。
16、单片机内、外中断源按优先级别分为高级中断和低级中断,级别的高低是由(中断优先级)寄存器的置位状态决定的。
同一级别中断源的优先顺序是由(自然优先级顺序)决定的。
17、LED数码显示按显示过程分为(静态)显示和(动态)显示2种。
18、单片机串行通信时,若要发送数据,就必须将要发送的数据送至(并行)单元,若要接收数据也要到该单元取数。
19、计算机的系统总线有(数据)、(地址)和(控制)。
20、若某8位D/A转换器的输出满刻度电压为+5V,则D/A转换器的分辨率为(5/255=0.0196V )。
21、单片机串行通信时,其波特率分为固定和可变两种方式,在波特率可变的方式中,可采用(定时器T1 )的溢出率来设定和计算波特率。
22、P0、P1、P2、P3四个均是(8 )位的(并行)口,其中P0的功能是(地址/数据分时复接口)。
23、片内RAM可进行位寻址的空间是(20H----2FH ),其对应的位地址范围是(00H---FFH )。
24、8051单片机有( 5 )个中断源,(2 )级中断优先级别。
25、8255A属于可编程的(并行)接口芯片,8255A的A通道有( 3 )种工作方式。
8255A的B有( 2 )种工作方式。
26、8051内部的特殊功能寄存器(SFR)共有(18, 8052系列有21 )个。
27、8051有两个16位可编程定时/计数器,其中定时作用是指对单片机(对内部晶振频率fosc/12 )脉冲进行计数,而计数器作用是指对单片机(外部)脉冲进行计数。
28.由于执行每条指令都要占用CPU的时间,因此采用循环结构并多次重复执行某些指令可实现软件延时。
而硬件延时一般是采用单片机的(定时/计数器)再通过软件编程来实现。
29、中断源的是否允许中断是由(IE)寄存器决定的,中断源的优先级别是由(IP)寄存器决定的。
30、当单片机CPU响应中断后,程序将自动转移到该中断源所对应的入口地址处,并从该地址开始继续执行程序,通常在该地址处存放转移指令以便转移到中断服务程序。
其中INT1 的入口地址为(0013H ),串行口的中断入口地址为(0023H ),T0 的入口地址为(000BH )。
31、MCS-51单片机访问外部存储器时,利用(ALE )信号锁存来自(P0 )口的低8位地址信号。
32、MCS-51单片机中有( 2 )个( 16 )位的定时/计数器,可以被设定的工作方式有(四)种。
33.当定时器T0计数计满时,由硬件电路使(溢出标志TF0)置位;最后再由硬件电路使(该位TF0自动)复位。
34.C51中的任何程序总是由三种基本结构组成:(顺序)、(分支)、(循环)。
35.MCS-51单片机扩展程序存储器所用的读信号为(/PSEN ),扩展数据存储器所用的控制信号为(/RD )和(/WR )。
36.当定时器To工作在方式3时,要占定时器T1的(TR1 )和(TF1 )两个控制位. 37.MCS-51串行接口有( 4 )种工作方式,这可在初始化程序中用软件设置特殊功能寄存器(SCON )来实现。
.38.在串行通信中,根据数据传送方向分为(单工)、(半双工)和(全双工)三种方式. 39.中断请求信号有(电平触发)和(边沿触发)两种触发方式。
40.C51的串行口控制寄存器中有2个中断标志位,它们是(TI )和(RI )。
41.键盘的结构形式一般有两种:(独立式键盘)和(矩阵式键盘)。
42. 单片机与普通计算机的不同之处在于其将( CPU)、(存储器)和(输入/输出接口)等部分集成在一块芯片之内。
43. 串行通信按信息的格式可分为( 异步通信)和( 同步通信)两种方式。
44. D/A转换器实现数字量转换成模拟量.45. A/D转换器实现模拟量转换成数字量.46、特殊功能寄存器DPTR是由DPH:存放高位字节数据、DPL:存放低位字节数据两个寄存器组成。
47、假设某CPU含有16根地址线,8根数据线,则该CPU最多寻址能力是8KB。
48、设X=5AH,Y=36H,则X与Y“或”运算为___7EH____,X与Y的“异或”运算为___6CH____。
49、若机器的字长为8位,X=17,Y=35,则X+Y=__110100_____,X-Y=_11101110_____50、8051单片机的存储器的最大特点是内部RAM 与外部RAM 分开编址。
51、一个函数由两部分组成,即说明部分和语句部分。
52、C语言中输入和输出操作是由库函数 scanf 和 printf 等函数来完成。
53、MCS-51有4组工作寄存器,它们的地址范围是00H~1FH 。
54、C51的基本单位是函数。
一个C51源程序至少包含一个主函数,也可以是一个主函数和若干个其它函数。
55、变量的基本属性是变量名和变量值。
三、单项选择题1、在单片机中,通常将一些中间计算结果放在( A )中。
A、累加器B、控制器C、程序存储器D、数据存储器2、单片机8051的XTAL1和XTAL2引脚是( D )引脚。
A、外接定时器B、外接串行口C、外接中断D、外接晶振3、8051单片机共有( B )中断源。
A、4B、5 C 、6 D、74、设MCS-51单片机晶振频率为12MHz,定时器作计数器使用时,其最高的输入计数频率应为( C )A、2MHzB、1MHzC、500kHzD、250kHz5.当MCS-51单片机接有外部存储器,P2口可作为( D )。
A、数据输入口B、数据的输出口C、准双向输入/输出口D、输出高8位地址6.单片机的定时器/计数器设定为工作方式1时,是( D )。
A、8位计数器结构B、2个8位计数器结构C、13位计数器结构D、16位计数器结构7.下列具有模数转换功能的芯片是(A)A、ADC0809B、DAC0832C、BS18B20D、DS13028、串行口每一次传送( B )字符。
A、1个字节B、1bitC、1帧D、1 串9. MCS-51单片机中,当寄存器IP=0x81时,优先级最高的中断是( C )A、 INT1B、串行口中断C、INT0D、定时器/计数器T0中断10. C51编译器中支持的存储模式不包含(A)A、xdataB、smallC、compactD、large11、计算机能直接识别的语言是(C )。
A.汇编语言B.自然语言C.机器语言D.C语言12、采用8031单片机必须扩展( B )。
A、数据存储器B、程序存储器C、I/O接口D、显示接口13. 定时/计数器有4种工作模式,它们由( B )寄存器中的M1 M0状态决定。
A.TCON B.TMOD C.PCON D.SCON14.P0口作数据线和低8位地址线时(B )。
A.应外接上拉电阻B.不能作I/O口C.能作I/O口D.应外接高电平15.MCS—51单片机的CPU主要的组成部分为(A )。
A.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器16.单片机能直接运行的程序叫( C )。
A.源程序 B. 汇编程序 C. 目标程序 D. 编译程序17.、在8051片外扩展8K的EPROM 2764 需要( C )根地址线。
A、11B、12C、13、D、1418. MCS-51的中断允许触发器IE内容为83H,CPU将响应的中断请求是( D )A、T0B、INT1C、串行接口D、INT019.MCS-51系列单片机芯片是双列直插式封装的,有( C )个引脚。
A、24B、30C、40D、5020、在汇编语言中,十六进制数据正确的书写格式是( B )。