单片机C51编程考证

上传人:汽*** 文档编号:502630071 上传时间:2023-02-10 格式:DOC 页数:23 大小:452.50KB
返回 下载 相关 举报
单片机C51编程考证_第1页
第1页 / 共23页
单片机C51编程考证_第2页
第2页 / 共23页
单片机C51编程考证_第3页
第3页 / 共23页
单片机C51编程考证_第4页
第4页 / 共23页
单片机C51编程考证_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《单片机C51编程考证》由会员分享,可在线阅读,更多相关《单片机C51编程考证(23页珍藏版)》请在金锄头文库上搜索。

1、word完美格式精心整理学习帮手1.10 习题一、填空题1 最早的单片机是_4位的。5如果某个特殊功能寄存器能被8整除,那么这个特殊功能寄存器便可以进行位寻址。6 单片机的时钟模式包括片内时钟模式 和 片外时钟模式 两种。二、选择题7. 51系列单片机可以寻址( A )的程序存储空间。A. 64KBB.32KBC.8KBD.4KB&算术逻辑部件(ALU不可以执行如下哪个操作( D)。A.加法B.减法C.逻辑运算D.傅立叶变换习题一、填空题2. AT89S51具有个通用I/O 引脚,_6个中断源, 2个定时器/计数器。3. Keil卩Vision3集成开发环境中,编译当前文件的快捷键为Ctrl+

2、F7。、选择题1. AT89S51是(A )公司的产品。A. AtmelB. CypressC. MaximD. Freescale3.9 习题一、填空题4. 多分支结构一般采用JMP来实现。二、选择题3 .在下面程序运行后,RAM存储单元20H24H中数值分别变为(A )。01ORG0000H02JMPSTART03ORG1000H04 START:MOVA,#04H;累加器A赋值05MOV20H,#20H;RAM的20H单元赋值06XCH A,20H;直接寻址整字节交换指令07MOV R2,#05H;寄存器R2赋值08XCHA,R2;寄存器寻址整字节交换指令09MOV21H,A;保存数据0

3、5H到RAM勺21H单元10MOV10H,#06H;RAM单元赋值11MOVR0,#10H;寄存器R0赋值12XCHA,R0;寄存器间接寻址整字节交换指令13MOV22H,A;保存数据06H到RAM勺22H单元14MOVA,#00H;累加器A赋值15MOV11H,#0FH;RAM单元赋值16MOVR1,#11H;寄存器R1赋值仃XCHD A,R1;半字节交换指令18MOV23H,A;保存数据到RAM勺23H单元,数据应该为0FH19MOVA,#0FH;累加器A赋值20SWAP A;累加器高低字节交换指令21MOV24H,A;保存数据到RAM勺23H单元,数据应该为F0H22RET23ENDA.

4、0x04H、0x05H、0x06H、0x0FH 和 0xF0HB.0x01H、0x05H、0x01H、0x0FH 和 0xF0HC.0x04H、0x05H、0x02H、0x0FH 和 0xF0HD.0x04H、0x05H、0x06H、0x0FH 和 0xFFH4.11 习题、选择题4.下面这段程序的运行结果为(A)。01#include /头文件02void main()/主函数0304int a,b,c,d,e;/声明变量05float f1,f2;06a=7;/变量赋值07b=9;08c=!a;/计算逻辑表达式09d=a|b;10f仁2.3;11f2=5.7;12e=(f1!=f2);13

5、printf(c=%d,d=%d,e=%dn,c,d,e);/输出结果14A. c=0,d=1,e=1B. c=1,d=1,e=1C. c=0,d=1,e=0D. c=1,d=0,e=0四、编程题编写一个成绩等级的程序。要求输入学生的成绩范围为0100,当为90100时,输出字符A;当为8090时,输出字符B;当为6080时,输出字符 G当小于60时,输出字符D答:#include / 头文件void main( )/ 主函数float score=92;if(score=90)printf( “A”);else if(score=80)printf( “ B”);else if(score6

6、0)printf( “ C”);elseprintf( “ D”);一5.13 习题一、填空题1. 在 C51语言的程序中,循环语句一般采用for、do-while和 来实现。2.字符在C51语言的程序中,跳转语句-般采用goto、break禾口 con ti nue来实现。、选择题2. break语句不能应用于那个语句内部(A)。A.ifB.forC. whileD. do-while3.下面这段程序的运行结果为(A)。01#include /头文件02void main()/主程序0304char ch;05ch= a;/赋值06switch(ch)/开关语句0708case a:/如果为

7、a,则输出A09printf(ch的大写字符为A);10break;11case b:/如果为b,则输出B12printf(ch的大写字符为B);13break;14 default:/否则输出这里15 printf(Not a and b);16 break;17 18 A. ch的大写字符为 AB. ch的大写字符为 BC. Not a and bD.都不是四、编程题编写一个子函数来实现如下函数的计算,其中, x为整数,并计算 x=5时的函数值。(x+1)!-1(x0)y =23x2 +2x11(xc0)01#include 02int Fun(int x)0304int i,y;05if

8、(x0)0607y=1;08for(i=1;i=x;i+)0910y=y*(i+1);1111y=y-1;1213else1415y=3*x*x+2*x+1;16仃return y;1819void main()2021int x=5,y;22y=Fun(x);23printf(y=%dn,y);24/头文件/判断x的值/阶乘运算/计算数学表达式/返回语句/主函数/函数调用/打印输出结果逼蛋6.8习题一、填空题其长度必须比要存的字符串多一个元素,最后3. 在程序中声明字符串数组时,一位元素用来存储空字符“ 0 ”。5. 在C51语言中,虽然不能动态分配数组的大小,但是可以动态分配数组元素的值。

9、二、选择题3 访问多维数组兀素的时间要(A)访问一维数组兀素的时间。A.大于B.等于C.小于D.不确定4.在下面程序运行结果为(C)。01#include /头文件02#include /提供字符串操作的头文件03void main()/主函数0405char a10=a,b;/声明字符串数组,并赋值06char b=good;07char s30;08strcat(a,b);/将字符串b追加到a的末尾09strcpy(s,a);/将字符串a复制到字符串s10printf(s=%sn,s);/输出字符串s11A. s=abB.s=goodC. s=abgoodD.s=abgoodn7.9 习题

10、一、填空题3.指针变量的专用运算符包括&和4. 指针变量可以参与关系 和 算术运算。、选择题3.在下面程序可能的运行结果为(A)。01#include /头文件02void main()/主程序0304int ch34=1,1,3,3,5,6,7,8,9,10,1,2;/定义并初始化二维数组ch05printf(ch=%d,ch);/输出ch的值06printf(*ch=%dn,*ch);/输出*ch的值07A.a=1000,*a=1000B.a=1000,*a=2000C.a=2000,*a=1000D.a=1010,*a=20008.10 习题、选择题4.下面这段程序的运行结果为(A)。01#include /头文件02struct student/声明结构0304int num;/学号05char name20;/姓名06char sex2;/性别07int age;/年龄08float score;/分数09 class15=/声明结构数组并初始化10100Alice, F, 24, 90.5,11101,Bob, M , 24, 88.0,12102,Jack, M , 25, 95.5,13103,Twis, M , 23, 69.5,14104,Bohm, M , 21, 82.515;16void main()/主函数

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号