单片机原理与应用—基于Proteus和KeilC课后答案复习题解答.doc
单片机原理及应用课后习题答案(精编文档).doc

【最新整理,下载后即可编辑】课后思考题级习题答案思考题与习题1一、填空1.单片机按照用途通常分为通用型和专用型。
2.单片机也称为微控制器和单片微型计算机。
二、简答1.什么是单片机?答:单片机也称微控制器,它是将中央处理器、程序处理器、数据处理器、输入/输出接口、定时/计数器串行口、系统总线等集成在一个半导体芯片上的微计算机,因此又称为单片微型计算机,简称为单片机。
2.简述单片机的特点和应用领域。
答:(1)单片机体积小,应用系统结构简单,能满足很多应用领域对硬件功能的要求。
(2)单片机的可靠性高。
(3)单片机的指令系统简单,易学易用。
(4)单片机的发展迅速,特别是最近几年,单片机的内部结构越来越完善。
3.写出AT89S51与AT89S52芯片的主要区别。
内部程序存储区容量不同,52的程序存储空间为8K,内部数据存储空间为256B,中断源8个,定时器/计数器有3个,而51的程序存储空间为4K,内部数据存储空间为128B,中断源5个,定时器/计数器有2个。
思考题与习题2一、填空题1.如果(PSW)=10H, 则内部RAM工作寄存器区的当前寄存器是第二组寄存器,8个寄存器的单元地址为10H ~ 17H 。
2.为寻址程序状态字F0位,可使用的地址和符号有PSW.5 、0D0H.5 、F0 和0D5H 。
3.单片机复位后,(SP )= 07H ,P0~P3= FFH ,PC= 0000H ,PSW= 00H A= 00H 。
4.AT89S51单片机的程序存储器的寻址范围是由 PC 决定的,由于AT89S51单片机的PC 是 16 位的,所以最大寻址范围为 64KB 。
5.写出位地址为20H 所在的位,字节地址 24H.0 。
6.写出字节地址为20H 的单元最高位的位地址为 07H ,最低位的位地址为 00H 。
7.如果晶振频率MHz 6OSC f ,则一个时钟周期为1.66667E-7,一个机器周期为2us 。
《单片机原理及应用》课后习题 答案.

第1章1-1 什么是单片机?它与一般微型计算机在结构上何区别?答:单片微型计算机简称为单片机(Single Chip Computer),又称为微控制器(MCU 即Micro-Controller Unit)。
它是在一块芯片上集成了中央处理器(CPU)、存储器(RAM、ROM)、定时器/计数器、中断控制、各种输入/输出(I/O)接口(如并行I/O口、串行I/O口和A/D转换器)等为一体的器件。
微型计算机的基本结构由CPU(运算器、控制器)、存储器、输入设备和输出设备五大部分组成,各部分通过外部总线连接而成为一体。
单片机的结构是在一块芯片上集成了中央处理器(CPU)、存储器、定时器/计数器、中断控制、各种输入/输出接口(如并行I/O口、串行I/O口和A/D转换器)等,它们通过单片机内部部总线连接而成为一体。
1-2 MCS-51系列单片机内部资源配置如何?试举例说明8051与51兼容的单片机的异同。
1-3 新型8位单片机,主要在哪几方面发展了?使用新型8位单片机能带来什么好处?1、运算速度大大提高;2、RAM、ROM容量增大;3、精简指令集,指令比51少很多;4、更多的IO口;5、更多的其他功能,比如自带AD,DA,自带SPI,自带看门狗,自带大容量EEPROM等等;6、中断的种类更细更多,有20几个中断向量的比比皆是,定时器/计数器的功能,数量都更多。
简化电路,节省成本,降低功耗,提高系统的可靠性。
第2章2-1 MCS-51系列单片机内部有哪些主要的逻辑部件?答:一个8位CPU;一个片内振荡器及时钟电路;4K字节ROM程序存储器;128字节RAM数据存储器;两个16位定时器/计数器;可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;32条可编程的I/O线(四个8位并行I/O端口);一个可编程全双工串行口;具有五个中断源、两个优先级嵌套中断结构2-2 MCS-51设有4个8位端口(32条I/O线),实际应用中8位数据信息由哪一个端口传送?16位地址线怎样形成?P3口有何功能?答:实际应用中8位数据信息由P0口传送。
(完整版)单片机原理及应用——基于Proteus和KeilC

一、填空1、CPU主要的组成部份包括_____运算器_______、______控制器______。
2、单片机的系统总线有_____地址总线_______、____数据总线________和______控制总线______。
3、单片机汇编语言有三种基本结构,分别是 _____顺序________、______分支______、_____循环______。
4、存储器6264地址线有_____13 _____根,容量为_____ 8______KB。
5、8051的中断入口地址分别是_0003H、000BH___、_0013H___、_001BH___、___0023H______。
6、若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为______08~0F______。
7、定时和计数都是对_____脉冲_______进行计数,定时与计数的区别是定时是对周期相同的脉冲;计数是_周期不相同的脉冲__。
8、D/A转换器转换数据的传送有___直通式____、____单缓冲________、_____双缓冲_______三种方式。
9、任何程序总是由三种基本结构组成,它们是____顺序________、______分支______、_____循环_______。
10、串行通信分为_____异步通信_______传送和_____同步通信_______传送两种基本方式。
11、中断源的允许是由____IE____寄存器决定的,中断源的优先级别是由______IP______寄存器决定的。
12、堆栈的地址由______SP______内容确定,其操作规律是___先进后出___或者______后进先出______。
13、已知累加器A的数值为98H,它与0FAH相加,相加后标志位CY的内容为_1_,AC的内容为_1_,OV 的内容为 0_。
14、8051单片机中有__2_____个_16______位的定时/计数器,可以被设定的工作方式有______4____种。
《单片机原理及应用》复习题及相关答案

《单片机原理及应用》复习题及相关答案一.选择题1、以下有关PC和DPTR的结论,正确的是(D )。
A、DPTR是可以访问的,而PC不能访问B、它们都是8位的存储器C、它们都有加1的功能D、DPTR可以分为两个8位的寄存器使用,但PC不能2.启动定时器1开始定时的指令是(D )。
A.CLR TR0 B.CLR TR1C.SETB TR0 D.SETB TR13.下列指令判断若定时器T0计满数就转LP的是(D )。
A.JB T0,LP B.JNB TF0,LPC.JNB TR0,LP D.JB TF0,LP4.89C51单片机串行口发送/接收中断源的工作过程是:当串行口接收或发送完一帧数据时,将SCON中的( A ),向CPU申请中断。
A.RI或TI置1 B.RI或TI置0C.RI置1或TI置0 D.RI置0或TI置15.8051单片机计数初值的计算中,若设最大计数值为M,对于模式1下的M 值为( D )。
2=8192 B.M=82=256A.M=132=65536C.M=42=16 D.M=166、下列说法正确的是(C )。
A、89C51共有21个特殊功能寄存器,它们的位都是可以用软件设置的,因此,都是可以进行位寻址的。
B、内部RAM的位寻址区,只能供位寻址使用,而不能供字节寻址使用。
C、程序计数器PC不能为用户编程时直接使用,因为它没有地址。
D、各中断发出的中断请求信号,都会标记在MCS-51系统的TMOD寄存器中。
7、在89C51中,需要外加电路实现中断撤除的是:( A )A、电平方式的外部中断B、定时中断C、外部串行中断D、脉冲方式的外部中断8、下列的说法正确的是(A )。
A、特殊功能寄存器SCON,与定时器/计数器的控制无关。
B、特殊功能寄存器TMOD,与定时器/计数器的控制无关。
C、特殊功能寄存器IE,与定时器/计数器的控制无关。
D、特殊功能寄存器TCON,与定时器/计数器的控制无关。
INT(外部中断)的向量地址为()。
单片机原理及应用——基于Proteus和Keil C(第3版)要点复习(1-16)

关于上拉电阻 在通用I/O口方式时,P0口需要外接上拉电阻(漏极开路), 而P1~P3口无需外接上拉电阻(已有内置上拉电阻); 在分时复用方式时, P0口无需外接上拉电阻(V管交替导 通 )。
关于引脚多功能 P0和P2口有地址/数据分时复用方式,P3口有第二功能 方式。
关于特殊功能寄存器 P0~P3口分别对应一个同名SFR,它们既有字节地址又 有位地址。
51单片机共有111条指令,按功能可划分为四大类: 数据传送与交换类(31条) 算术运算类(24条) 逻辑运算类(34条) 转移控制类(22条)
2、汇编指令语句格式要点
汇编指令语句格式可包括四个区段,即:
标号区段——代表当前指令的首字节存放地址,由用户定义 的1~6个字符组成,以英文字母开始,冒号结尾,可省略。 操作码区段——指令的操作行为,由42种标准助记字符组成。 操作数区段——指令的操作对象,可有0~3个操作数,以英 文逗号隔开(操作数大于0时)。 注释区段——指令的解释或说明,可用任何文字描述。以英 文分号开始,无需结束符号。
2、51单片机I/O口内容要点
• 51单片机共有32个I/O引脚,具有4种结构类型
通用I/O口
输入条件
上拉电阻
引脚多功能
特殊功能寄存器
关于通用I/O口 P0~P3口都具有通用I/O口方式,可实现输出、读引脚 (输入)和读锁存器三种功能。
关于输入条件 在通用I/O口方式时, P0~P3口都需要先软件写1,故都 是准双向I/O口; 在分时复用方式时, P0口读引脚时无需软件先写1,故 是严格双向口。
上节复习(4)
1. D触发器的逻辑符号?工作特性?主要 用途?
2. 51单片机I/O口内容要点?
1、 D触发器逻辑符号?工作特性?主要用途?
《单片机原理及应用-基于Proteus单片机系统设计及应用》课后习题答案

《单片机原理及应用-基于Proteus单片机系统设计及应用》习题解答本答案由Elvis提供,请到413宿舍表达感谢第2章 80C51单片机的指令系统1.简述下列基本概念。
答指令:CPU根据人的意图来执行某种操作的命令。
指令系统:一台计算机所能执行的全部指令集合。
机器语言:用二进制编码表示,计算机能直接识别和执行的语言。
汇编语言:用助记符、符号和数字来表示指令的程序语言。
高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言。
2.什么是计算机的指令和指令系统?答见1题。
3.简述80C51汇编指令格式。
答操作码[目的操纵数][,源操作数]4.简述80C51的寻址方式和所能涉及的寻址空间。
答立即数寻址:程序存储器ROM。
直接寻址:片内RAM低128B和特殊功能寄存器。
寄存器寻址:R0~R7,A,B,C,DPTR。
寄存器间接寻址:片内RAM低128B,片外RAM。
变址寻址:程序存储器64KB。
相对寻址:程序存储器256B范围。
位寻址:片内RAM的20H~2FH字节地址,部分特殊功能寄存器。
5.要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式?答 SFR:直接寻址,位寻址;片外RAM:寄存器间接寻址。
6.在80C51片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。
请分析下面各是什么指令,说明源操作数的寻址方式及按顺序执行后的结果。
答 MOV A,40H 直接寻址MOV R0,A 寄存器寻址MOV P1,#0F0H 立即数寻址MOV @R0,30H 直接寻址MOV DPTR,#3848H 立即数寻址MOV 40H,38H 直接寻址MOV R0,30H 直接寻址MOV P0,R0 寄存器寻址MOV 18H,#30H 立即数寻址MOV A,@R0 寄存器间接寻址MOV P2,P1 直接寻址均为数据传送指令,结果(参见下图)为RAM30H 38H38H 40H40H 48H48H 90H(18H)=30H,(30H)=38H,(38H)=40H (40H)=40H,(48H)=90HR0=38H,A=40H,P0=38H,P1=FOH,P2=FOH,DPTR=3848H 7.对80C51片内RAM高128B的地址空间寻址要注意什么?答用直接寻址,寄存器寻址,位寻址。
单片机原理及应用习题与参考答案

单片机原理及应用习题与参考答案一、单选题(共54题,每题1分,共54分)1.ADDCA,Rn是()A、数据传送指令B、算术运算指令C、逻辑运算指令D、控制转移指令E、位操作指令正确答案:B2.MCS-51单片机的高8位地址总线是():A、P0B、P1C、P2D、P3正确答案:C3.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是()A、MOVB、MOVXC、MOVCD、以上都行正确答案:B4.已知(A)=59H,(PSW)=80H,执行指令ADDCA,#4CH后CY和AC的内容为():A、0,1B、1,1C、0,0D、1,0正确答案:A5.MCS-51单片机在同一级别里除INT0外,级别最高的中断源是A、外部中断1B、定时器T0C、定时器T1D、串行口正确答案:B6.当晶振频率为12MHz时,有效复位信号高电平时间要持续():A、2μsB、1μsC、4μsD、3μs正确答案:A7.JNZREL指令的寻址方式是()A、相对寻址B、立即寻址C、寄存器寻址D、位寻址正确答案:A8.8051单片机的PIO接口数为():A、5个8位的B、4个8位的C、6个8位的D、3个8位的正确答案:B9.MCS-51指令系统中,执行下列程序后,堆栈指针SP的内容为()。
MOVSP,#30HMOVA,20HLACALL1000MOV20H,ASJMP$A、00HB、30HC、32HD、07H正确答案:B10.控制串行口工作方式的寄存器是()A、TCONB、PCONC、SCOND、TMOD正确答案:C11.当(IP)=14H时,优先级最低的中断源是():A、外部中断0B、定时计数器1C、定时计数器0D、外部中断1正确答案:B12.MCS-51系列单片机的指令系统共有指令数为():A、119B、115C、113D、111正确答案:D13.XRLdirect,#data是()A、数据传送指令B、控制转移指令C、算术运算指令D、位操作指令E、逻辑运算指令正确答案:E14.指令RRA源操作数的寻址方式是():A、寄存器寻址B、直接寻址C、立即数寻址D、寄存器间接寻址E、变址寻址F、相对寻址G、位寻址正确答案:A15.执行下面一段程序;MOVSP,#60HMOVA,#10HMOVB,#01HPUSHAPUSHBPOPAPOPBA,B的内容是:(A)=(B)=A、(A)=00H(B)=10HB、(A)=01H(B)=10HC、(A)=01H(B)=12HD、(A)=00H(B)=13H正确答案:B16.下列指令能使累加器A高4位不变,低4位置F的是()A、ANLA,#OFHB、ANLA,#OFOHC、ORLA,#OFHD、ORLA,#OF0H正确答案:C17.XCHA,@Ri是()A、数据传送指令B、算术运算指令C、逻辑运算指令D、控制转移指令E、位操作指令正确答案:A18.型号为2764的EPROM容量是():A、2KBB、4KBC、8KBD、16KB正确答案:C19.INTEL8051CPU是()位的单片机.A、16B、4C、8D、32正确答案:C20.能将A的内容向左循环移一位,第七位进第0位的指令是()。
(完整版)单片机原理及应用——基于Proteus和Keil_C林立_张俊亮版课后习题答案一至七章

第一章习题1.什么是单片机?单片机和通用微机相比有何特点?答:单片机又称为单片微计算机,它的结构特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集成在一个半导体芯片上。
虽然单片机只是一个芯片,但无论从组成还是从逻辑功能上来看,都具有微机系统的定义。
与通用的微型计算机相比,单片机体积小巧,可以嵌入到应用系统中作为指挥决策中心,是应用系统实现智能化。
2.单片机的发展有哪几个阶段?8位单片机会不会过时,为什么?答:单片机诞生于1971年,经历了SCM、MCU、SOC三大阶段,早期的SCM单片机都是8位或4位的。
其中最成功的是INTEL的8031,此后在8031上发展出了MCS51系列MCU系统。
基于这一系统的单片机系统直到现在还在广泛使用。
随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。
90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。
随着INTEL i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。
然而,由于各应用领域大量需要的仍是8位单片机,因此各大公司纷纷推出高性能、大容量、多功能的新型8位单片机。
目前,单片机正朝着高性能和多品种发展,但由于MCS-51系列8位单片机仍能满足绝大多数应用领域的需要,可以肯定,以MCS-51系列为主的8位单片机,在当前及以后的相当一段时间内仍将占据单片机应用的主导地位。
3.举例说明单片机的主要应用领域。
答:单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第 2 章 MCS-51 单片机结构及原理习题1. MSC- 51 单片机部由哪些功能部件组成,各有什么功能?答:以 80C51 单片机为例,其部功能部件有:控制器:是对取自程序存储器中的指令进行译码,在规定的时刻发出各种操作所需的控制信号,完成指令所规定的功能;运算器:根据控制器发来的信号,执行算术逻辑运算操作;存储器:包括程序存储和数据存储器;定时器计数器: 2 个 16 位定时器 / 计数器,可对机器周期计数,也可对外部输入脉冲计数;中断系统:可响应三个部中断源和两个外部中断源的中断请求;输入输出接口: 4 个 8 位并行口和一个全双工串行口;2. MSC- 51 单片机外部引脚的名称是什么?各有什么功能?答: (1)电源及晶振引脚VCC(40 脚 ) : +5V 电源引脚VSS(20 脚 ) :接地引脚XTAL1(19 脚 ) ;外接晶振引脚(置放大器输入端)XTAL2(18 脚 ) :外接晶振引脚(置放大器输出端)(2)控制引脚RST/VPD(9)为复位 /备用电源引脚ALE/PROG(30)为地址锁存使能输出/编程脉冲输入PSEN(29):输出访问片外程序存储器读选通信号EA/ VPP (31):外部ROM允许访问/编程电源输入(3)并行 I/O 口引脚P0.0 ~ P0.7 ( 39~ 32 脚)—— P0 口;P1.0 ~ P1.7 ( 1~ 8 脚)—— P1 口;P2.0 ~ P2.7 ( 21~ 28 脚)—— P2 口;P3.0 ~ P3.7 ( 10~ 17 脚)—— P3 口。
3. 51 系列单片机的封装有哪些类型?请说明每一种封装引脚之间的距离。
答: 51 系列单片机的封装有:40 引脚双列直插封装( DIP—— dual in-line package ),引脚之间的距离是 100mil(2.54mm) ;44 引脚方形扁平封装( QFP —— quad flat package )方式,引脚之间的距离是 2.54mm;44 引脚带引线的塑料芯片载体PLCC(Plastic Leaded Chip Carrier) 。
4.什么是复位?单片机复位电路有哪几种,工作原理分别是什么?答:复位——使单片机恢复原始默认状态的操作。
单片机复位电路有: 上电复位电路,由电阻和电容构成,通过上电时,电容相当于短路而使复位引脚在晶振有效的情况下保持 2 个机器周期的高电平;按钮开关复位电路,由两个电阻2 个机器周期的高电的分压构成,通过手工按下按钮,使复位引脚在晶振有效的情况下保持平。
5.通常的微机系统存储器结构有哪几种?MCS-51单片机存储器属于哪一类?CS-51 可寻址多大空间?答:通常的微机系统存储器结构有两种结构,即哈佛结构和诺依曼结构( 也叫普林斯顿结构) ,MCS-51单片机存储器属于, MCS-51可寻址空间是两个64KB,即 64KB的程序存储空间和64KB 的数据存储空间。
6.片 RAM中低 128 个单元划分为哪三个主要部分?各部分的主要功能是什么?答:片 RAM中低 128 个单元划分为三个部分:①工作寄存器区( 00H-1FH),四组,每组 8 个,可作用工作寄存器切换使用;②可位寻址区( 20H-2FH), 16B,位地址为 00H-7FH,用作为按位寻址的空间;③用户 RAM区( 30H-7FH), 80B,用作普通 RAM单元或堆栈。
7.程序状态字寄存器PSW各位的定义是什么?答:程序状态字寄存器PSW各位的定义如下:PSW.7:进 / 借位标志 CY,加法有进位时置1,减法有借位时置1;PSW.6:辅助进位标志AC,加法运算低四位向高上四位有进位时置1;PSW.5、 PSW.1:用户标志位F0 和用户标志位F1,保存用户的位数据;RS0, 00 至11 分别选择四组工作之一作为当PSW.4、 PSW.3:工作寄存器选择控制位RS1和前工作寄存器PSW.2 :溢出标志位OV,有符号数加、减运算结果有溢出或乘除上结果异常( 乘法运算结果大于255 即乘积在BA中,或除法运算除数为0) 时置 1PSW.0:奇偶标志位P,累加器 A 中1 的个数为奇数时置1。
8.什么是时钟周期?什么是机器周期?什么是指令周期?当振荡频率为12MHz时,一个机器周期为多少微秒?答:时钟周期又叫振荡周期或拍,用P 表示,是MCS-51单片机中最小的时间单位,在一个时钟周期, CPU完成一个最基本的动作。
机器周期:由12 个时钟周期构成,完成一个基本操作指令周期:是执行一条指令所需的时间,根据指令的复杂性,可由1~4 个机器周期构成。
当振荡频率为12MHz时,一个机器周期为 1 微秒。
9. P0、 P1、 P2 和P3 口的结构和功能分别是什么?答: P0 口的每一位由 1 个锁存器、 2 个三态缓冲器、 1 个输出控制电路(非门X 、与门、电子开关MUX、输出驱动电路构成,其功能既可以作为通用I/O 口实现输入/ 输出功能,也可作片机地址的低8 位和数据外部展功能。
在用作入出口,需外接上拉阻。
P1 口的每一位由 1 个存器、 1 个效管器 V 和 2 个三冲器构成,其作用是用作入出口P2 口的每一位由 1 个存器、 2 个三冲器、 1 个出控制元、 1 个出元构成,其功能是用作入出口,或地址的高8 位。
P3 口的每一位由 1 个存器、 2 个三冲器、 1 个第二功能控制元、1 个出元构成,其作用是用作入出口或第二功能。
10. 80C51 片机引脚ALE 的作用是什么?当80C51 不外接存器,ALE上的出的脉冲率是多少?答:80C51 片机引脚 ALE的作用是外部存址存 P0 口出的低 8 位地址,当 80C51 不外接存器,ALE上的出的脉冲率是 fosc/6 。
第 3 章片机的言与程序1. MCS-51片机有哪几种址方式?适用于什么地址空?答: MCS-51片机有7 种址方式:直接址、寄存器址、寄存器接址、立即址、址址、位址、相址。
直接址方式:操作数的地址由指令直接出,适用于片RAM的所有地址空;如MOV A, 68HMOV A, PSW寄存器址方式:指令出的是寄存器的,操作数在指定的寄存器中,适用于片00H 至1FH 的32 个字,用R0, ⋯ ,R7 表示,通PSW的RS1和RS0号确定32个字中的其中8 个,有累加器A,以及乘除法指令中的 A 和B 寄存器,位址方式中的布累加器C;MOV A, R1MUL ABINC DPTR寄存器接址方式:指令出的是寄存器的,操作数地址在指定的寄存器中,适用于片 RAM的全部空,其中52 系列中的80H 至 FFH只能用寄存器接址;如MOV A, R0MOV A, R1MOVX A, DPTR立即址方式:操作数本身在指令中直接,出适用于用8 位立即数片RAM所有地址元,也可用16 位立即数DPTR;如MOV A, #0E2HMOV DPTR,#2000H址址方式:以 DPTR或 PC作基地址寄存器,以累加器 A 作址寄存器,将基址寄存器与变址寄存器的容相加形成操作数的实际地址的一种寻址方式,变址寻址方式适用于程序存储器 ROM,仅有三条指令如下:MOVC A, A+DPTRMOVC A, A+PCJMP A+DPTR位寻址方式:指令中直接给出操作数所在单元的位地址,适用于片RAM中地址20H 至2FH中的16 个字节中的128 个位地址空间和80H至FFH中地址中可以被8 整除的所有SFR中的每个位地址空间;如MOV C, 7FHMOV F0, CMOV C, ACC.7相对寻址方式:为相对转移指令而设,指令中直接给出转移的相对偏移量,其转移目标在当前指令 -128 至+ 127 字节围的地址空间。
如SJMP STARTHERE:SJMP HERE;等效于:SJMP$2.MCS-51单片机的 PSW程序状态字中无ZERO(零 ) 标志位,怎样判断某部数据单元的容是否为零?答: MCS-51单片机的 PSW程序状态字中无 ZERO(零 ) 标志位,判断某部数据单元的容是否为零是能通过取数到 A 累加器,再判断 A 中的每一位是否为零来确定其值是否为零。
3.编程将部RAM的 20H--30H 单元容清零。
解:设一个片RAM指针 R0,先指向首地址20H,通过累加器 A 清零,然后采用间接寻址方式依次将 A 中的零值传送到指针所指的片RAM单元,每传送一个字节,地址指针加1,直到达到地址为30H或达到计数器规定的17 个字节为止。
程序 1:MOV R0,#20H ; 设地址指针初值CLR A ; 累加器清 0CONT: MOV R0,A ; 置 0 指针所指单元INC R0 ; 地址指针加 1CJNE R0,#31H,CONT ; 指针未超过终点则继续SJMP $ ; 暂停程序 2:MOV R0,#20H ; 设地址指针初值CLR A ; 累加器清 0MOV R7,#17 ; 计数器赋初值,从20H 到 30H 共 17 个字节CONT: MOV R0,A ; 置 0 指针所指单元INC R0 ; 地址指针加 1DJNZ R7, CONT ; 计数器减1,非0,则继续SJMP $ ; 暂停4.编程查找部 RAM的 32H~ 41H 单元中是否有 0AAH这个数据,若有这一数据,则将50H 单元置为 0FFH,否则将 50H 单元清零。
解:设一个片 RAM指针 R0,先指向首地址 32H,比较 R0 与 #0AAH,若相等,则退出循环,给50H单元赋 0FFH,若不相等,则 R0 加 1 为继续比较下一个字节做准备,直到达到地址为 41H 或达到计数器规定的16 个字节为止还没找到,则给50H 单元赋 00H程序 1:MOV R0,#32H ; 设地址指针初值CONT: CJNE R0,#0AAH,NEXT;比较查找值与指针所指单元的值,不相等转移MOV A,#0FFH ; 相等,则准备好要赋的标志值0FFHSJMP DOWN ; 转存到保存结果处NEXT: INC R0 ; 修改地址指针CJNE R0,#42H,CONT ; 若指针未越过终点,则继续MOV A,#00H ; 查找失败,则将00H存入结果标志单元DOWN: MOV 50H,A ; 将比较结果标志存入50H 单元SJMP $ ; 暂停END程序 2:MOV R7,#16 ; 计数器赋初值,从20H 到 30H共 16 个字节MOV R0,#32H ; 设地址指针初值CONT: CJNE R0,#0AAH,NEXT ; 比较查找值与指针所指单元的值,不相等转移MOV A,#0FFH ; 相等,则准备好要赋的标志值0FFHSJMP DOWN ; 转存到保存结果处NEXT: INC R0 ; 修改地址指针DJNZ R7,CONT ; 计数器减 1,非 0,则继续MOV A,#00H ; 查找失败,则将00H存入结果标志单元DOWN: MOV 50H,A ; 将比较结果标志存入50H 单元SJMP $ ; 暂停END5.查找 20H~ 4FH 单元中出现00H的次数,并将查找结果存入50H 单元。