第3章单片机原理课后答案
单片机原理及应用(林立张俊亮版)课后习题答案

第一章习题1.什么是单片机?单片机和通用微机相比有何特点?答:单片机又称为单片微计算机,它的结构特点是将微型计算机的基本功能部件(如中央处理器(CPU)、存储器、输入接口、输出接口、定时/计数器及终端系统等)全部集成在一个半导体芯片上。
虽然单片机只是一个芯片,但无论从组成还是从逻辑功能上来看,都具有微机系统的定义。
与通用的微型计算机相比,单片机体积小巧,可以嵌入到应用系统中作为指挥决策中心,是应用系统实现智能化。
2.单片机的发展有哪几个阶段?8位单片机会不会过时,为什么?答:单片机诞生于1971年,经历了SCM、MCU、SOC三大阶段,早期的SCM单片机都是8位或4位的。
其中最成功的是INTE L的8031,此后在8031上发展出了MCS 51系列MC U系统。
基于这一系统的单片机系统直到现在还在广泛使用。
随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。
90年代后随着消费电子产品大发展,单片机技术得到了巨大提高。
随着INTE L i960系列特别是后来的ARM系列的广泛应用,32位单片机迅速取代16位单片机的高端地位,并且进入主流市场。
然而,由于各应用领域大量需要的仍是8位单片机,因此各大公司纷纷推出高性能、大容量、多功能的新型8位单片机。
目前,单片机正朝着高性能和多品种发展,但由于MCS-51系列8位单片机仍能满足绝大多数应用领域的需要,可以肯定,以MCS-51系列为主的8位单片机,在当前及以后的相当一段时间内仍将占据单片机应用的主导地位。
3.举例说明单片机的主要应用领域。
答:单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
单片机原理及接口技术(张毅刚 彭喜元著)课后答案

第1章单片机概述1.除了单片机这一名称之外,单片机还可称为和。
答:微控制器,嵌入式控制器。
2.单片机与普通微型计算机的不同之处在于其将、、和 3部分集成于一块芯片上。
答:CPU、存储器、I/O口。
3.8051与8751的区别是。
A.内部数据存储单元数目不同 B.内部数据存储器的类型不同C.内部程序存储器的类型不同 D.内部寄存器的数目不同答:C。
4.在家用电器中使用单片机应属于微计算机的。
A.辅助设计应用;B.测量、控制应用;C.数值计算应用;D.数据处理应用答:B。
5.微处理器、微计算机、微处理机、CPU、单片机它们之间有何区别?答:微处理器、微处理机和CPU都是中央处理器的不同称谓;而微计算机、单片机都是一个完整的计算机系统,单片机特指集成在一个芯片上的用于测控目的的单片微计算机。
6.MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么?答:MCS-51系列单片机的基本型芯片分别是8031、8051和8751。
它们的差别是在片内程序存储器上。
8031无片内程序存储器,8051片内有4KB的程序存储器ROM,而8751片内集成有4KB的程序存储器EPROM。
7.为什么不应当把51系列单片机称为MCS-51系列单片机?答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
8.AT89C51单片机相当于MCS-51系列单片机中的哪一种型号的产品?答:相当于MCS-51系列中的87C51,只不过是AT89C51芯片内的4KB Flash存储器取代了87C51片内的4KB的EPROM。
第2章 AT89C51单片机片内硬件结构1.在AT89C51单片机中,如果采用6MHz晶振,一个机器周期为。
答:2μs2.AT89C51单片机的机器周期等于个时钟振荡周期。
答:12。
3.内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为和。
单片机原理及应用(林立张俊亮版)课后习题答案

第一章习题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.举例说明单片机的主要应用领域。
答:单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:智能仪器单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
单片机原理及接口技术(第三版)李朝青编著 第三章作业答案

3.4 思考题与习题5.要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式?答:访问特殊功能寄存器可采用寄存器寻址、直接寻址、寄存器间接寻址、部分的还可采用位寻址。
访问片外数据存储器只能采用寄存器间接寻址。
6.在89C51片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H, (48H)=90H。
请分析下面各是什么指令,说明源操作数的寻址方式以及按顺序执行每条指令后的结果。
MOV A,40H ;A=48H,直接寻址MOV R0,A ;R0=48H,寄存器寻址MOV P1,#0F0H ;P1=F0H,立即寻址MOV @R0,30H ;(48H)=38H,直接寻址MOV DPTR,#3848H ;DPTR=3848H,立即寻址MOV 40H,38H ;(40H)=40H,直接寻址MOV R0,30H ;R0=38H,直接寻址MOV P0,R0 ;P0=38H,寄存器寻址MOV 18H,#30H ;(18H)=30H,立即寻址MOV A,@R0 ;A=40H,寄存器间接寻址MOV P2,P1 ;P2=F0H,寄存器寻址9.设R0的内容为32H,A的内容为48H,片内RAM的32H单元内容为80H,40H单元内容为08H。
请指出在执行下列程序段后上述各单元内容的变化。
MOV A,@R0 ;A=80HMOV @R0,40H ;(32H)=08HMOV 40H,A ;(40H)=80HMOV R0,#35H ;R0=35H答:R0=35H,A=80H,(32H)=08H,(40H)=80H。
16.已知(A)=83H,,(R0)=17H,,(17H)=34H。
请写出执行完下列程序段后A的内容。
ANL A,#17H ;A=03HORL 17H,A ;(17H)=34H∨03H=37HXRL A,@R0 ;A=03H⊕37H=34HCPL A ;A=CBH答:A=CBH17.使用位操作指令实现下列逻辑操作。
单片机原理及接口技术+梅丽凤第三章答案

第3章 MCS-51系列单片机的指令系统3-1解答:指令是规定计算机进行某种操作的命令,一台计算机所能执行的指令集合称为该计算机的指令系统。
计算机内部只识别二进制数,因此,能别计算机直接识别、执行的指令时使用二进制编码表示的指令,这种指令别称为机器语言指令。
以助记符表示的指令就是计算机的汇编语言指令。
3-2解答:[标号:] <操作码> [操作数] [;注释]3-3解答:MCS-51系列单片机提供了7种寻址方式:(1)立即寻址:操作数在指令中直接给出,立即数前面有“#”。
(2)直接寻址:在指令中直接给出操作数地址。
对应片内低128个字节单元和特殊功能寄存器。
(3)寄存器寻址:以寄存器的内容作为操作数。
对应的寄存器有:R0~R7、A、AB寄存器和数据指针DPTR。
(4)寄存器间接寻址:以寄存器的内容作为RAM地址,该地址中的内容才是操作数。
对应片内RAM的低128个单元采用R0、R1作为间址寄存器,片外RAM低256个单元可用R0、R1作为间址寄存器,整个64KB空间可用DPTR作为间址寄存器。
(5)变址寻址:以DPTR或PC作为基址寄存器,以累加器A作为变址寄存器,并以两者内容相加形成的16位地址作为操作数地址。
对应片内、片外的ROM空间。
(6)相对寻址:只在相对转移指令中使用。
对应片内、片外的ROM空间。
(7)位寻址:对可寻址的位单独进行操作。
对应位寻址区20H~2FH单元的128位和字节地址能被8整除的特殊功能寄存器的相应位。
3-4解答:直接寻址方式。
3-5解答:寄存器间接寻址方式。
3-6解答:立即寻址方式,直接寻址方式,寄存器寻址方式,寄存器间接寻址方式,位寻址方式。
3-7解答:变址寻址方式3-8解答:对于8052单片机内部RAM的高128B,必须采用寄存器间接寻址方式进行访问。
3-9解答:外部数据传送指令有6条:MOVX A,@DPTR MOVX @DPTR,AMOVX A,@Ri MOVX @Ri,AMOVC A,@A+DPTR MOVC A,@A+PC(1)MOVX A,@R1 MOVX A,@DPTR都是访问片外RAM,但二者寻址范围不同。
单片机原理及应用第三章习题答案

单片机原理及应用第三章习题答案第一题:题目:什么是中断?中断是指在程序执行过程中,由于发生了某个特定事件,导致当前的程序需要暂时中断执行,转而去处理其他紧急或优先级更高的事件。
中断可以提高系统的实时性和响应速度。
第二题:题目:请简述中断的分类及其优缺点。
中断可以分为外部中断和内部中断。
外部中断:外部中断是通过外部设备触发的中断,例如按键输入、定时器溢出等。
外部中断的优点是能够及时响应外部事件,缺点是响应时间有一定延迟,并且可能会引起系统的不稳定性。
内部中断:内部中断是通过程序内部指令触发的中断,例如软件中断、硬件错误等。
内部中断的优点是响应时间几乎可以忽略,缺点是需要消耗较多的系统资源。
第三题:题目:简述中断的处理过程。
中断的处理过程一般包括以下几个步骤:1. 中断请求发生:外部设备或程序内部触发中断请求。
2. 中断响应:CPU接收到中断请求后,保存当前程序的执行状态,暂停当前程序的执行,并跳转到中断服务程序。
3. 中断服务程序执行:中断服务程序是为了处理中断事件而编写的程序,它会根据中断类型执行相应的操作,例如处理外部设备的输入、更新系统状态等。
4. 中断处理完成:中断服务程序执行完后,将恢复之前保存的执行状态,继续执行被中断的程序。
第四题:题目:请简述常见的中断优先级判断方式。
常见的中断优先级判断方式有两种:硬件优先级判断和软件优先级判断。
硬件优先级判断:硬件优先级判断是通过硬件电路来实现的,每个中断信号都有一个对应的硬件中断优先级,优先级高的中断信号将打断当前正在执行的中断信号。
软件优先级判断:软件优先级判断是通过编程的方式来实现的,每个中断信号都有一个对应的中断优先级,在中断服务程序中通过程序代码来判断当前是否有更高优先级的中断请求。
第五题:题目:请说明中断向量表的作用。
中断向量表是一个存储中断处理程序入口地址的数据结构,它将每个中断编号与对应的中断服务程序的入口地址进行映射。
当一个中断请求发生时,中断向量表将根据中断编号找到对应的中断服务程序的入口地址,从而实现中断的处理。
单片机原理及应用第三章习题答案

单片机原理及应用第三章习题答案习题三1.在MCS-51单片机中,寻址方式有几种?其中对片内RAM可以用哪几种寻址方式?对片外RAM可以用哪几种寻址方式?答:寻址方式可分为数的寻址和指令寻址,数的寻址有:常数寻址(立即寻址)、寄存器数寻址(寄存器寻址)、存储器数寻址(直接寻址方式、寄存器间接寻址方式、变址寻址方式)和位寻址,指令的寻址有绝对寻址和相对寻址。
片内RAM寻址有:寄存器寻址、直接寻址方式和寄存器间接寻址方式。
片外RAM寻址有:寄存器间接寻址方式。
2.在对片外RAM单元寻址中,用Ri间接寻址与用DPTR间接寻址有什么区别?答:片外数据存储器寻址中,用Ri间接寻址只能访问低端的256字节单元,而用DPTR作指针间接访问可访问整个64K字节。
3.在位处理中,位地址的表示方式有哪几种?答:1.直接位地址(00H~0FFH)。
例如:20H2.字节地址带位号。
例如:20H.3表示20H单元的3位。
3.特殊功能寄存器名带位号。
例如:P0.1表示P0口的1位。
4.位符号地址。
例如:TR0是定时/计数器T0的启动位。
4.写出完成下列操作的指令。
(1)R0的内容送到R1中。
MOV A,R0MOV R1,A(2)片内RAM的20H单元内容送到片内RAM的40H单元中。
MOV 40H,20H(3)片内RAM的30H单元内容送到片外RAM的50H单元中。
MOV A,30HMOV R0,#50HMOVX @R0,A(4)片内RAM的50H单元内容送到片外RAM的3000H单元中。
MOV A,50HMOV DPTR,#3000HMOVX @DPTR,A(5)片外RAM的2000H单元内容送到片内RAM的20H单元中。
MOV DPTR,#2000HMOVX A,@DPTRMOV 20H,A(6)片外RAM的1000H单元内容送到片外RAM的4000H单元中。
MOV DPTR,#1000HMOVX A,@DPTRMOV DPTR,#4000HMOV @DPTR,A(7)ROM的1000H单元内容送到片内RAM的50H单元中。
单片机原理及应用第三章课后答案

第三章作业答案2. MCS-51有(4)个8位并行I/O口,在作为通用I/O口使用时P0~P3是准双向口,所以由输出转输入时必须先写入(1)。
6. 设(TMOD)=0A5H,则定时器T0的状态是( 方式1计数),定时器T1的状态是( 方式2定时)。
或设(TMOD)=0A5H,则定时器T0的状态是( 软件控制的16位计数器),定时器T1的状态是(软硬件控制的可自动重装初值的8位定时器)。
27.请写出1INT为低电平触发的中断系统初始化程序。
解:INT为低电平触发的中断系统初始化程序如下:1ORG 0000HLJMP MAINORG 0013HLJMP INTN1ORG 0100HMAIN:MOV SP,#60HSETB EASETB EX1;开1INT中断CLR PX1 ;令1INT为低优先级CLR IT1 ;令1INT为电平触发SJMP $INTN1:……RETIEND用MOV指令实现:MOV IE,#84HANL IP,#0FBH(或ORL IP,#04H)ANL TCON,#0FBH28.MCS-51单片机响应中断后,写出中断服务子程序的入口地址。
解:36.使用一个定时器,如何通过软硬结合方法实现较长时间的定时?解:设定好定时器的定时时间,采用中断方式用软件进行溢出次数累计,从而得到较长的定时时间,定时时间=定时器的定时时间×软件累计的溢出次数。
37.利用定时器输出周期为2 ms的方波, 设单片机晶振频率为6 MHz。
试编程实现之。
解:选用定时器/计数器T0 作定时器,工作在方式1,输出为P1.0 引脚,2 ms 的方波可由1 ms的高低电平相间隔而成,因而只要每隔1 ms对P1.0 取反一次即可得到这个方波。
初值的计算如下:T0=12/(6×106)= 2×10-6STC=M-T/T0=216-1×10-3/2×10-6=65536-500=65036=FE0CH当定时器/计数器采用方式0时,初值为:TC=M-T/T0=213-1×10-3/2×10-6=8192-500=7692=1E0CH,则真正的16位计数初值为:1E0CH(高8位,低5位)利用定时器/计数器时,必须用文字说明工作方式的设置,计算初值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
习题
1. 在MCS-51单片机中,寻址方式有几种?
答:寻址方式可分为数的寻址和指令寻址,数的寻址有:常数寻址(立即寻址)、寄存器数寻址(寄存器寻址)、存储器数寻址(直接寻址方式、寄存器间接寻址方式、变址寻址方式)和位寻址,指令的寻址有绝对寻址和相对寻址。
2. 在MCS-51单片机中,哪些寻址方式访问的是片内RAM?
答:访问片内RAM寻址有:寄存器寻址、直接寻址方式和寄存器间接寻址方式。
3. 在MCS-51单片机中,哪些寻址方式访问的是片外RAM?
答:只有寄存器间接寻址方式访问片外RAM寻址。
4. 在对片外RAM单元的寻址中,用Ri间接寻址与用DPTR间接寻址有什么区别?
答:片外数据存储器寻址中,用Ri间接寻址只能访问低端的256字节单元,而用DPTR 作指针间接访问可访问整个64K字节。
5. 在MCS-51单片机中,相对寻址方式的目的地址如何计算?
答:目的地址=当前PC+rel=转移指令的地址+转移指令的字节数+rel
6. 在位处理中,位地址的表示方式有哪几种?
答:位地址的表示方式有4种:
(1) 直接位地址(00H~0FFH)。
例如,20H。
(2) 字节地址带位号。
例如,20H.3表示20H单元的3位。
(3) 特殊功能寄存器名带位号。
例如,P0.1表示P0口的1位。
(4) 位符号地址。
例如,TR0是定时/计数器T0的启动位。
7. 写出完成下列操作的指令。
(1) R2的内容送到R3中。
MOV A,R2
MOV R3,A
(2) 片内RAM的30H单元内容送到片内RAM的40H单元中。
MOV 40H,30H
(3) 片内RAM的30H单元内容送到片外RAM的30H单元中。
MOV A,30H
MOV R0,#30H
MOVX @R0,A
(4) 片内RAM的20H单元内容送到片外RAM的2000H单元中。
MOV A,20H
MOV DPTR,#2000H
MOVX @DPTR,A
(5) 片外RAM的1000H单元内容送到片内RAM的20H单元中。
MOV DPTR,#1000H
MOVX A,@DPTR
MOV 20H,A
(6) 片外RAM的1000H单元内容送到片外RAM的4000H单元中。
MOV DPTR,#1000H
MOVX A,@DPTR
MOV DPTR,#4000H
MOV @DPTR,A
(7) ROM的2000H单元内容送到片内RAM的20H单元中。
MOV A,#0
MOV DPTR,#2000H
MOVC A,@A+DPTR
MOV 20H,A
(8) ROM的2000H单元内容送到片外RAM的1000H单元中。
MOV A,#0
MOV DPTR,#2000H
MOVC A,@A+DPTR
MOV DPTR,#1000H
MOVX @DPTR,A
8. 区分下列指令有什么不同?
(1) MOV A,30H和MOV A,#30H
答:前者源操作数是直接寻址,后者源操作数立即寻址。
(2) MOV A,@R0和MOVX A,@R0
答:前者源操作数是访问片内数据存储器,后者源操作数访问片外数据存储器低256字节。
(3) MOV A,R0和MOV A,@R0
答:前者源操作数是寄存器寻址,后者源操作数寄存器间接寻址。
(4) MOVX A,@R0和MOVX A,@DPTR
答:前者源操作数是访问片外数据存储器低256字节,后者源操作数访问片外数据存储器整个64K字节。
(5) MOVX A,@DPTR和MOVC A,@A+DPTR
答:前者源操作数是访问片外数据存储器,后者源操作数访问程序数据存储器。
9. 设片内RAM的(10H)=20H,(20H)=30H,(30H)=40H,(P1)=50H。
分析下列指令执行后片内RAM的10H 、20H、30H单元以及P1、P2中的内容。
MOV R0,#20H ;R0=20H
MOV A,@R0 ;A=30H
MOV R1,A ;R1=30H
MOV A,@R1 ;A=40H
MOV @R0,P1 ;(20H)=50H
MOV P2,P1 ;P2=50H
MOV 10H,A ;(10H)=40H
MOV 20H,10H ;(20H)=40H
(10H)=40H; (20H)=40H; (30H)=40H; P1=P2=50H
10. 已知(A)=02H,(R1)=7FH,(DPTR)=2FFCH,片内RAM(7FH)=70H,片外RAM(2FFEH)=33H,ROM(2FFEH)=66H,试分别写出以下各条指令执行后目标单元的内容。
(1) MOV A,@R1 ;A=70H
(2) MOVX @DPTR,A ;RAM(2FFCH)=02H
(3) MOVC A,@A+DPTR ;A=66H
(4) XCHD A,@R1 ;A=00H , RAM(7FH)=72H
11. 已知(A)=78H,(R1)=78H,(B)=04H,CY=1,片内RAM(78H)=0DDH,(80H)=6CH,
试分别写出下列指令执行后目标单元的结果和相应标志位的值。
(1)ADD A,@R1 ;累加器A等于55H,CY等于1
(2)SUBB A,#77H ;累加器A等于00H,CY等于0
(3)MUL AB ;累加器A等于E0H,B寄存器等于01H,CY等于1,OV 等于0
(4)DIV AB ;累加器A等于1EH,B寄存器等于00H,CY、OV等于0 (5)ANL 78H,#78H ;片内RAM(78H)单元等于58H
(6)ORL A,#0FH ;累加器A等于7FH
(7)XRL 80H,A ;片内RAM(80H)等于14H
12. 设(A)=83H,(R0)=20H,(20H)=34H,分析当执行完下面指令段后累加器A、R0、20H单元的内容。
ANL A,#17H ;A=03H
ORL 20H,A ;(20H)=37H
XRL A,@R0 ;A=34H
CPL A ;A=CBH
结果:A=CBH,(R0)=20H,(20H)=37H
13. 写出完成下列要求的指令。
(1) 累加器A的低4位清零,其余位不变。
ANL A,#11110000B
(2) 累加器A的高4位置“1”,其余位不变。
ORL A,#11110000B
(3) 累加器的高4位取反,其余位不变。
XRL A,#11110000B
(4) 累加器第0位、2位取反,其余位不变。
XRL A,#00000101B
14. 说明LJMP指令与AJMP指令有哪些区别?
答:LJMP指令后面提供的是16位目标地址,所以可以转移到64KB程序存储器的任意位置,缺点是:执行时间长,字节数多。
AJMP指令后带的是11位直接地址,执行时,先将程序指针PC的值加2(该指令长度为2字节),然后把指令中的11位地址addr11送给程序指针PC的低11位,而程序指针的高5位不变,只能在当前2K范围内转移。
15. 设当前指令CJNE A,#12H,10H的地址是0FFEH,若累加器A的值为10H,则该指令执行后的PC值为多少?若累加器A的值为12H呢?
答:指令执行后的PC值为1011H,若累加器A的值为12H,则指令执行后的PC值为1001H。
16. 已知减数存放在R3,R4中(R3高位,R4低位),被减数存放在R5,R6中(R5高位,R6低位),编写双字节减法程序,结果存于片内RAM的32H,33H单元(32H高位,33H低位)。
程序:
MOV A,R4
CLR C
SUBB A,R6
MOV 33H,A
MOV A,R3
SUBB A,R5
MOV 32H,A
17. 用位处理指令实现P1.4=P1.0∨ (P1.1∧P1.2) ∨/P1.3的逻辑功能。
程序:
MOV C,P1.1
ANL C,P1.2
ORL C,P1.0
ORL C,/P1.3
MOV P1.4,C
18. 试编一段程序,将片内RAM的20H、21H、22H单元的内容依次存入片外RAM 的20H、21H、22H中。
程序:
MOV R0,#20H
MOV R2,#03H
LOOP:MOV A,@R0
MOVX @R0,A
INC R0
DJNZ R2,LOOP
SJMP $
19. 编写程序将片外RAM的3000H单元开始存放的20个数传送到片内30H开始的单元。
程序:
MOV R0,#30H
MOV DPTR,#3000H
MOV R2,#20
LOOP: MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
DJNZ R2,LOOP
SJMP $
20. 编写一段程序,统计片外RAM的1000H单元开始的100个单元中0的个数放R2中。
程序:
MOV DPTR,#1000H
MOV R3,#100
MOV R2,#00
LOOP: MOVX A,@DPTR
JNZ NEXT
INC R2
NEXT:INC DPTR
DJNZ R3,LOOP
SJMP $。