ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:22.87KB ,
资源ID:4569610      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4569610.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(西华大学单片机第二次作业.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

西华大学单片机第二次作业.docx

1、西华大学单片机第二次作业第3、4章习题一、选择题151单片机中,PC是一个16位的计数器指针,它的值永远指向下一条要执行的指令地址。它决定程序执行的顺序和方向,寻址范围可达64KB 。 B A、此叙述大部分错误 B、此叙述完全正确 C、此叙述大部分正确 D、很难判断 2判断下列说法正确的是 A A、 89c51共有21个特殊功能寄存器,它们中一部分的位是可以进行位寻址的。B、 内部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。C、 程序指针PC也可以为用户编程时直接使用,可存入16位的数据。D、 以上说法都不正确。3C51中,char data var1;为 A 。(A)在内部RA

2、M定义一个带符号的一字节变量;(B)在可位寻址的片内RAM定义了一个位变量;(C)在内部RAM(含52子系列的高128字节)定义浮点变量;(D)在片外RAM 低256字节内定义了一个整型变量;(E)在内部RAM定义一个带符号的一字节的数组。4C51中,bit bdata flags;为 B 。(A)在内部RAM定义一个带符号的一字节变量;(B)在可位寻址的片内RAM定义了一个位变量;(C)在内部RAM(含52子系列的高128字节)定义浮点变量;(D)在片外RAM 低256字节内定义了一个整型变量;(E)在内部RAM定义一个带符号的一字节的数组。5C51中,float idata x;为 C 。

3、(A)在内部RAM定义一个带符号的一字节变量;(B)在可位寻址的片内RAM定义了一个位变量;(C)在内部RAM(含52子系列的高128字节)定义了一个浮点变量;(D)在片外RAM 低256字节内定义了一个整型变量;(E)在内部RAM定义一个带符号的一字节的数组。6C51中,unsigned int pdata var2;为 D 。(A)在内部RAM定义一个带符号的一字节变量;(B)在可位寻址的片内RAM定义了一个位变量;(C)在内部RAM(含52子系列的高128字节)定义了一个无符号浮点变量;(D)在片外RAM 0255地址内定义了一个16位的无符号整型变量;(E)在内部RAM定义一个带符号的

4、一字节的数组。7C51中,unsigned char vector3;为 E 。(A)在内部RAM定义一个带符号的一字节变量;(B)在可位寻址的片内RAM定义了一个位变量;(C)在内部RAM(含52子系列的高128字节)定义了3个浮点变量;(D)在片外RAM 低256字节内定义了一个有符号的整型变量;(E)在内部RAM定义一个无符号的每个元素为一字节的有三元素的数组。8若定义了char x;char X;则x与X完全是两个 A 的变量。(A)不同 (B)相同 (C)外部 (D)无符号9定义了char third =“HELLO”; 则third是一个 C 元素的字符型数组。(A)4 (B)5

5、(C)6 (D)710定义了char second 5=H,E,L,L,O ; 则second是一个 B 元素的字符型数组。(A)4 (B)5 (C)6 (D)711以下能正确定义一维数组的选项是( B)。 A、int a5=0,1,2,3,4,5; B、char a =0,1,2,3,4,5; C、char a=A,B,C; D、int a5=0123; 12C51中,以下叙述中错误的是( C ) A、数组一般会存放在外部RAM中; B、指针中,数组名代表的是数组所占存储区的首地址; C、程序运行时,数组元素的下标超出所定义的下标范围时,单片机应用系统将给出“下标越界”的出错信息;D、可以通

6、过赋初值的方式C51编译器确定数组元素的个数。13下列计算机语言中,CPU能直接识别的是( D )。 A、 自然语言 B、 高级语言 C、 汇编语言 D、机器语言 二、判断正误1、c51中若一个函数的返回类型为void,则表示其没有返回值。( T )2、51单片机定时器与计数器的工作原理均是对输入脉冲进行计数。(T)3、51单片机中已有的SFR中凡是能被8整除的地址,都具有位寻址能力。(T )4、MCS-51单片机的外部数据存储器用来存放程序和常数的。 (F )5、MCS-51单片机的程序存储器是用来存放程序和常数的。(F )6、51单片机中所有串口中断标志都要由硬件清0。(T )7、特殊功能

7、寄存器的名字,在C51程序中,需全部大写。( T )8、sbit LED1=p33; 这条c51语句是正确的。(F )9、#include 与#include“reg51.h”基本功能是等价的。( F )10、sbit不可以用于定义内部RAM的可位寻址区,只能用在可位寻址的SFR上。(F )11、在对某一函数进行多次调用时,系统会对相应的局域变量重新分配存储单元。 ( F )12、在C语言的复合语句中,只能包含可执行语句。 ( F )13、自动变量属于局部变量。 ( F )14、c51中定义为char的变量一定是英文字母如a、b、c、d等。 ( F )15、所有定义在主函数之前的函数无需进行声

8、明。 ( F )16、汇编语言中ORG表示它后面程序的起始地址。 ( T )17、MCS-51的相对转移指令最大负跳距是127B。 ( F )18、若TMOD中的GATE=1,则需要两个信号控制定时器的的启停。 ( T )19、MCS-51应用系统可以没有复位电路。 ( F )20、全局变量的有效范围是定义变量的位置开始到本文件结束。( T)21、ADC0832采用的是IIC总线方式。 ( F )22、DAC0832是一种AD转换芯片。 (F )23、P1作为通用IO口使用时必须加上拉电阻。( F )24、若一个函数的返回类型为unsigned char,则表示其没有返回值。 ( F )25、

9、51单片机中定时器与计数器其基本的工作原理相同,只是计数脉冲的来源不同。 ( F )26、ADC0809是8位逐次逼近式模/数转换器。 ( T )27、MCS-51的程序存储器是用来存放程序的。 ( T )28、MCS-51的特殊功能寄存器分布在60H80H地址范围内。 ( F )29、51单片机片外RAM与并口外部设备统一编址时,使用不同的输入/输出指令。 ( F )30、使用89c51且 EA=1时,仍可外扩程序存储器。 ( T )三、填空题1数据指针DPTR在用汇编语言编程时可以看作是一个 16 位的寄存器。2. 完成的堆栈操作的原则是 先进后出 。3在基址加变址寻址方式中,以A 作变址

10、寄存器,以DPTR 或PC 作基址寄存器。4在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的地址 。5在MCS-51中,PC和DPTR都用于提供地址,但PC只是为了访问程序 存储器提供地址,而DPTR可为访问 数据和程序 存储器提供地址。610%3;结果为: 1 。7x=5;执行 if(x=3)x=4;后,x= 5 。8a=0x4b,执行a=a=88&y=x; 答案:07设x=4,y=8,说明进行下列运算后,x,y和z的值分别是多少(用16进制表达)?(1)z=(x+)*(-y); 答: x=5;y=7;z=0x1c;(2)z=(+x)-(y-); 答: x=

11、5;y=7;z=0xfd;(3)z=(+x)*(-y); 答: x=5;y=7;z=0x23;(4)z=(x+)+(y-); 答: x=5;y=7;z=0x0c;8写出下列表达式运算后a的值,设运算前a10;n9;a、n已定义为8位整型变量。(1)a+=a; (2)a*=2+3; (3)a%=(n%=2);解:(1)20 ;(2)50;(3)0;五、问答题1在单片机中使用高级语言c51与汇编语言相比有何优点? 答:C51与汇编语言相比,有如下优点:(1)对单片机的指令系统不必深入了解(但对51单片机的存贮器空间结构需深入了解);(2)寄存器分配、不同存贮器的寻址等细节可由编译器管理;(3)程序

12、有规范的结构,可分解成各种子函数,有利于程序的结构化;(4)库文件中包含许多标准子程序,具有较强的数据处理能力;(5)具有方便的模块化编程技术,使程序很容易移植。因此,单片机编程人员从使用汇编语言到C语言是大势所趋、必然的发展规律。2目前最常用的C51编译器是什么?它的主要作用?答:单片机的C语言采用C51编译器,目前最常用的是Keil C51。C语言源程序经过C51编译器编译、L51(或BL51)连接/定位后生成.BIN和.HEX的目标程序。3C51中有哪些数据存储类型,简述它们在单片机系统存储空间的位置。答:见下表4.2:表4.2 C51存储类型与MCS-51存储空间的对应关系名存储空间位

13、置 位数数据范围说 明data直接寻址片内RAM80127片内RAM 00-7FH的128个字节,访问速度最快bdata可位寻址片内RAM 10/1位寻址片内RAM202FH中的位,允许位与字节混合访问idata 寄存器间接寻址片内RAM 8025500-7FH的128个片内RAM及52子系列的高端80FFH的128字节,共256个字节,采用寄存器间接寻址方式:MOV A, Ripdata片外页RAM 80255寻址片外RAM 低256字节,由MOVX A,Ri访问xdata片外RAM 8065535片外RAM全部64 KB,由MOVX A,DPTR访问code 程序ROM 8065535RO

14、M区全部64 KB,由MOVC A,A+DPTR访问4C51定义了哪些存储器模式,对每种模式略作说明。答:C51的存储器模式有SMALL、COMPACT和LARGE,说明见下表:存储模式说 明SMALL默认的存储类型是data、idata(52子系列),参数及局部变量放入可直接寻址片内RAM的用户区中。另外所有对象(包括堆栈),都必须嵌入片内RAM。COMPACT默认的存储类型是pdata,参数及局部变量放入分页的外部数据存储区,通过R0或R1间接访问,栈空间位于片内数据存储区中LARGE默认的存储类型是xdata,参数及局部变量直接放入片外数据存储区,使用数据指针DPTR来进行寻址。用此数据

15、指针进行访问效率较低,尤其对两个或多个字节的变量,这种数据类型的访问机制直接影响代码的长度5变量的数据类型与存储区域有何关系?变量存储区域与哪些因素有关?答:KEILC51是面向51系列单片机及其硬件控制系统的开发工具。它定义的任何数据类型必须以一定的存储区域的方式定位在51单片机的存储区中,否则便没有任何的实际意义。该编译器通过将变量、常量定义成不同的存储区域(data,bdata,idata,pdata,xdata,code)的方法,将它们定位在不同的存储区中。51系列单片机将程序存储器(ROM)和数据存储器(RAM)分开,并有各自的寻址方式。目前51系列单片机在物理上有四个存储空间:1,

16、片内程序存储空间;2,片外程序存储空间(几乎没有用户选择这种方式了);3,片内数据存储空间;4,片外数据存储空间。片内数据存储器。51单片机片内数据存储器可划分为两大区域:00H7FH为片内低128字节RAM区;80HFFH为特殊功能寄存器区(SFR)。地址为00H7FH的低128字节片内RAM区又可划分为三个区域:一,工作寄存器区:地址(00H1FH)工作寄存器区由4个寄存器组成:0组(00H07H),1组(08H0FH),2组(10H17H),3组(18H1FH),每个寄存器组含有8个工作寄存器:R0,R1,R2,R3,R4,R5,R6,R7,共有32个工作寄存器。二,可位寻址区:51系列

17、单片机RAM的可位寻址区时字节地址位20H2FH的16字节单元,共128位。三,用户RAM区:51系列单片机片内RAM的用户RAM区地址位30H7FH。堆栈也可以设置在这里。存储区域(也称存储类型),当我们那使用存储区域类型data,bdata定义常量和变量时,Cx51编译器会将它们定位在片内数据存储区中(片内RAM),不标注默认是data区域类型。当使用code 存储类型定义数据时,Cx51编译器会将其定义在代码空间(ROM或者flash)。当使用 xdata 存储区域类型定义常量或变量时,Cx51编译器将其定位在外部数据存储空间(片外RAM)。见下表:名存储空间位置 位数数据范围说 明da

18、ta直接寻址片内RAM80127片内RAM 00-7FH的128个字节,访问速度最快bdata可位寻址片内RAM 10/1位寻址片内RAM202FH中的位,允许位与字节混合访问idata 寄存器间接寻址片内RAM 8025500-7FH的128个片内RAM及52子系列的高端80FFH的128字节,共256个字节,采用寄存器间接寻址方式:MOV A, Ripdata片外页RAM 80255寻址片外RAM 低256字节,由MOVX A,Ri访问xdata片外RAM 8065535片外RAM全部64 KB,由MOVX A,DPTR访问code 程序ROM 8065535ROM区全部64 KB,由MO

19、VC A,A+DPTR访问uchar data x和data uchar x相等价都是在片内ram区分配一个字节的变量,但是对于指针变量的声明,因涉及到指针变量本身的存储位置和指针所指向的存储区位置不同而进行相应的存储区类型关键字设置是要注意的。62 C51中,对于int类型数组,能直接用数组名对数组进行整体输入或输出吗?答:所谓整体输入输出就是可以一次过全部输入或输出数组的全部元素。C51中能够用数组名对数组进行整体输入或输出的就只有字符串数组,int类型数组不是字符串数组,只能对数组元素输入或输出,不能直接用数组名对数组进行整体输入或输出。7C51中,什么是局部变量和全局变量?有何特点答:从变量的作用范围来区分,变量可以被分为局部变量和全局变量。局部变量在函数内部定义,又称为内部变量。函数的形式参数属于局部变量。局部变量只能在被定义它的函数中使用,不能被其他函数使用。局变量被定义时若没有初始化,其值是不确定的;各个函数内部的局部变量可以同名而互不影响。全局变量在函数外面定义,又称为外部变量。每个函数都可以使用全局变量,也就是说,全局变量对所有函数都是可见的,而局部变量只对定义它的函数才是可见的。全局变量被定义时若没有初始化,其值为0。在一个函数内部,当一个局部变量与一个全局变量同名时,全局变量不起作用,局部变量起作用。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1