单片机-第三章答案
单片机 第3章 习题解答
MOV C,P2.2 ORL C,TCON.5 ANL C,P1.1 MOV F0,C MOV C,TCON.3 ORL C,/20H.0 ANL C,F0 ANL C,/20H.1 MOV P3.3,C
试编写程序,查找内部RAM的20H—30H单 元中出现00H的次数,并将结果送入31H单元
编写一段程序,比较内部RAM中20H
CLR C MOV A, 20H SUBB A, 21H JNC MAX MOV A, 20H XCH A , 21H MOV 20H, A MAX:SJMP MAX
在内部RAM的20-2FH连续16个单元中存放单字节无
P.52 1—1
MOV R1, #00H MOV A, #00H MOV DPTR, #2000H LOOP1: MOVX @DPTR, A INC DPTR DJNZ R1, LOOP SJMP $
P.52 1—2
MOV R2, #16 MOV R0, #20H MOV R1, #30H LOOP: MOV A, @R0 XCH A, @R1 MOV @R0, A INC R0 INC R1 DJNZ R2,LOOP SJMP $
P.52 2—1
MOV A, 40H ADD A, 50H MOV R4, A MOV A, 41H ADDC A, 51H MOV R3, A
P.52 2—2
CLR C MOV A, 40H SUBB A, 50H MOV R7, A MOV A, 41H SUBB A, 51H MOV R6, A
PSW .5 P1.5 B.0 A.0 A.7
单片机原理及应用第三章习题答案
习题三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单元中。
单片机第3章习题答案.docx
单片机第3章习题答案.docx笫3章习题答案一、选择题1. 在中断服务程序屮,至少应该有一条(D )0 (A )传送指令(B )转移指令(C )加法指令(D )中断返回指令2. 要用传送指令访问MCS-51片外RAM,它的指令操作码助记符应是(C )。
(A ) MOV(B ) MOVC(C ) MOVX(D )以上都行3. JNZ rel 指令的寻址方式是(C )。
(A )立即寻址(B )寄存器寻址(C )相对寻址(D )位寻址4. 执行【.CALL 1020H 指令时,MCS —51所完成的操作是(D )。
(A)保护 PC(B) PC-1020H(C)保护现场 _(D) PC + 3 入栈,PC-1020H5. 下面哪条指令产生丽信号(D )。
(A) MOVX A, @DPTR (B) MOVC A, @A+PC (C) MOVCA, @A+DPTR(D) MOVX@DPTR, A6. 在执行PUSH ACC 指令时,MCS-51完成的操作是(A )。
(A) (SP) - (SP) +1,((SP)) - (ACC)(B) (SP) - (ACC), ((SP)) - (SP) -1(C) (SP) - (SP) -1,((SP)) - (ACC)(D) ((SP)) - (ACC), (SP) - (SP) +1 9. 在寄存器间接寻址方式中,指定寄存器中存放的是(B )。
10. 执行返回指令时,返回的断点是(C )。
二、填空题:1. 8051指令基本格式由标号、操作码助记符、操作数和注释组成。
2. MOV A, 20H 源寻址方式为直接寻址。
3. 执行ANL A, #0FII 指令后,累加器A 的高4位= 0000B。
4. JZ rel 的操作码首地址为1000H, re 1=2011,它的转移目的地址为1022H 。
5. 若R7的初值为00H 的情况下,DJNZ R7, tel 指令将循环执行256次。
单片机原理及应用第三章习题答案
单片机原理及应用第三章习题答案第一题:题目:什么是中断?中断是指在程序执行过程中,由于发生了某个特定事件,导致当前的程序需要暂时中断执行,转而去处理其他紧急或优先级更高的事件。
中断可以提高系统的实时性和响应速度。
第二题:题目:请简述中断的分类及其优缺点。
中断可以分为外部中断和内部中断。
外部中断:外部中断是通过外部设备触发的中断,例如按键输入、定时器溢出等。
外部中断的优点是能够及时响应外部事件,缺点是响应时间有一定延迟,并且可能会引起系统的不稳定性。
内部中断:内部中断是通过程序内部指令触发的中断,例如软件中断、硬件错误等。
内部中断的优点是响应时间几乎可以忽略,缺点是需要消耗较多的系统资源。
第三题:题目:简述中断的处理过程。
中断的处理过程一般包括以下几个步骤:1. 中断请求发生:外部设备或程序内部触发中断请求。
2. 中断响应:CPU接收到中断请求后,保存当前程序的执行状态,暂停当前程序的执行,并跳转到中断服务程序。
3. 中断服务程序执行:中断服务程序是为了处理中断事件而编写的程序,它会根据中断类型执行相应的操作,例如处理外部设备的输入、更新系统状态等。
4. 中断处理完成:中断服务程序执行完后,将恢复之前保存的执行状态,继续执行被中断的程序。
第四题:题目:请简述常见的中断优先级判断方式。
常见的中断优先级判断方式有两种:硬件优先级判断和软件优先级判断。
硬件优先级判断:硬件优先级判断是通过硬件电路来实现的,每个中断信号都有一个对应的硬件中断优先级,优先级高的中断信号将打断当前正在执行的中断信号。
软件优先级判断:软件优先级判断是通过编程的方式来实现的,每个中断信号都有一个对应的中断优先级,在中断服务程序中通过程序代码来判断当前是否有更高优先级的中断请求。
第五题:题目:请说明中断向量表的作用。
中断向量表是一个存储中断处理程序入口地址的数据结构,它将每个中断编号与对应的中断服务程序的入口地址进行映射。
当一个中断请求发生时,中断向量表将根据中断编号找到对应的中断服务程序的入口地址,从而实现中断的处理。
单片机原理与运用-第三章答案
第三章单片机的汇编语言与程序设计习题1.设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值?MOV A,59HMOV R0,AMOV A,#00HMOV @R0,AMOV A,#25HMOV 51H,AMOV 52H,#70H解:MOV A,59H ;A=50HMOV R0,A ;RO=50HMOV A,#00H ;A=00HMOV @R0,A ;50H=00HMOV A,#25H ;A=25HMOV 51H,A ;51H=25HMOV 52H,#70H ;52H=70H所以:A=25H R0=50H ;50H=00H 51H=25H2.请选用合适的指令对P0口内容做修改(例如使P0.0~P0.3不变,P0.4~P0.7为0)。
解:MOV A,P0ANL A,0fhMov P0,A3.试问外部数据存储器和程序存储器可以用哪些指令来实现?举例说明。
解:访问外部数据存储器指令有:MOVX @DPTR,A MOVX DPTR,#0100H MOV @DPTR,AMOVX A,@DPTR MOVX DPTR,#0200H MOV A,@DPTRMOVX A,@Ri MOVX A,@R0MOVX @Ri,A MOVX @RI,A访问程序存储器指令有:MOVX A,@A+PCMOVX A,@A+DPTR4.设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR与SP中的内容将有何变化?PUSH 30HPUSH 31HPOP DPLPOP DPHMOV 30H,#00HMOV 31H,#0FFH解:PUSH 30H ;61H=24HPUSH 31H ;62=10H SP=62HPOP DPL ;DPL=10HPOP DPH ;DPH=24H SP=60HMOV 30H,#00H ;30H=00HMOV 31H,#0FFH ;31H=0FFH5.设(A)=40H,(R1)=23H,(40H)=05H。
单片机原理及应用第三章课后答案
第三章作业答案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. 编写中断服务程序:根据中断源的不同,编写相应的中断服务程序。
中断服务程序一般包括中断处理前的准备工作、中断处理代码和中断处理后的清理工作。
4. 注册中断服务程序:将编写好的中断服务程序的入口地址注册到中断向量表中,以便单片机在中断发生时能够正确地跳转到对应的中断服务程序。
5. 启用中断:根据需要,使能相应的中断源,使其能够触发中断。
第四题:题目:请简述单片机中断的优缺点。
答案:单片机中断的优点主要体现在两个方面:一是提高了系统的响应速度,当有紧急事件发生时,可以立即中断当前任务去处理该事件,避免了因等待而造成的时间浪费;二是提高了系统的可靠性,中断机制可以保证在紧急事件发生时,能够及时进行处理,避免了数据的丢失或系统的崩溃。
单片机原理及应用第三版课后答案
单片机原理及应用第三版课后答案1. 第一章题目答案:a) 单片机的定义: 单片机是一种集成电路,具有CPU、存储器和输入输出设备等功能,并且可以根据程序控制进行工作的微型计算机系统。
b) 单片机的核心部分是CPU,它可以通过执行程序指令来完成各种计算、逻辑和控制操作。
c) 存储器分为程序存储器和数据存储器,程序存储器用于存放程序指令,数据存储器用于存放数据和暂存中间结果。
d) 输入输出设备用于与外部环境进行数据交换,如开关、LED、数码管等。
e) 单片机的应用广泛,包括家电控制、智能仪器、工业自动化等领域。
2. 第二章题目答案:a) 单片机中的时钟系统用于提供CPU运行所需的时序信号,常见的时钟源有晶体振荡器和外部信号源。
b) 时钟频率决定了单片机的运行速度和精度,一般通过控制分频器、定时器等来调整时钟频率。
c) 单片机中的中断系统用于处理紧急事件,如外部输入信号、定时器溢出等,可以提高系统的响应能力。
d) 中断源包括外部中断、定时器中断和串口中断,通过编程设置中断向量和优先级来处理不同的中断事件。
e) 中断服务程序是处理中断事件的程序,包括保存现场、执行中断处理和恢复现场等步骤。
3. 第三章题目答案:a) I/O口是单片机与外部设备进行数据交换的接口,包括输入口和输出口两种类型。
b) 输入口用于接收外部信号,如开关、传感器等,可以通过编程设置输入口的工作模式和读取输入口的状态。
c) 输出口用于控制外部设备,如LED、继电器等,可以通过编程设置输出口的工作模式和输出口的状态。
d) I/O口的工作模式包括输入模式、输出模式和双向模式,可以根据具体应用需求设置相应的模式。
e) 串行通信接口是单片机与外部设备进行数据传输的一种常见方式,包括UART、SPI和I2C等多种通信协议。
4. 第四章题目答案:a) 定时器的作用是产生指定时间间隔的定时信号,可以用于延时、计时、PWM等功能。
b) 单片机的定时器一般由计数器和一些控制寄存器组成,通过编程设置定时器的工作模式和计数值。
单片机原理及应用第3章习题解答
第3章思考题及习题3参考答案一、填空1.访问SFR,只能使用寻址方式。
答:直接.2.指令格式是由和组成,也可仅由组成。
答:操作码,操作数,操作码。
3.在基址加变址寻址方式中,以作为变址寄存器,以或作为基址寄存器。
答:A,PC,DPTR4.假定累加器A中的内容为30H,执行指令1000H:MOVC A,@A+PC后,把程序存储器单元的内容送入累加器A中。
答:1031H5.在AT89S52中,PC和DPTR都用于提供地址,但PC是为访问存储器提供地址,而DPTR是为访问存储器提供地址。
答:程序,数据6.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的 .答:地址7.下列程序段的功能是。
答:A的内容与B的内容互换。
PUSH AccPUSH BPOP AccPOP B8.已知程序执行前有(A)=02H,(SP)=52H,(51H)=FFH,(52H)=FFH.下述程序执行后, (A)= ,(SP)= ,(51H)= ,(52H)= ,(PC)=。
POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,@A+DPTRPUSH AccMOV A,BINC AMOVC A,@A+DPTRPUSH AccRETORG 4000HDB 10H,80H,30H,50H,30H,50H答:(A)=50H,(SP)=50H,(51H)=30H,(52H)=50H,(PC)=5030H9.假定(A)=83H,(R0)=17H,(17H)=34H,执行以下指令后,(A)= .ANL A,#17HORL 17H,AXRL A,@R0CPL A答:(A)=0CBH。
10.假设(A)=55H,(R3)=0AAH,在执行指令“ANL A,R3”后,(A)= ,(R3)= .答:(A)=00H,(R3)=0AAH。
11.如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后,(DPH)= ,(DPL)= ,(SP)= 。
李全利版单片机原理及接口技术课后答案(第三章)
李全利版单⽚机原理及接⼝技术课后答案(第三章)章3 80C51的指令系统1.80C51系列单⽚机的指令系统有何特点?答:执⾏时间短。
1个机器周期指令有64条,2个机器周期指令有45条,⽽4个机器周期指令仅有2条(即乘法和除法指令);指令编码字节少。
单字节的指令有49条,双字节的指令有45条,三字节的指令仅有17条;位操作指令丰富。
这是80C51单⽚机⾯向控制特点的重要保证。
2.80C51单⽚机有哪⼏种寻址⽅式?各寻址⽅式所对应的寄存器或存储器空间如何?答:80C51单⽚机的寻址⽅式有七种。
即:寄存器寻址、直接寻址、寄存器间接寻址、⽴即寻址、基址寄存器加变址寄存器变址寻址、相对寻址和位寻址。
这些寻址⽅式所对应的寄存器和存储空间如下表所⽰。
3.访问特殊功能寄存器SFR可以采⽤哪些寻址⽅式?答:直接寻址和位寻址⽅式。
4.访问内部RAM单元可以采⽤哪些寻址⽅式?答:直接寻址、寄存器间接寻址和位寻址⽅式。
5.访问外部RAM单元可以采⽤哪些寻址⽅式?答:寄存器间接寻址。
6.访问外部程序存储器可以采⽤哪些寻址⽅式?答:⽴即寻址、变址寻址和相对寻址⽅式。
7.为什么说布尔处理功能是80C51单⽚机的重要特点?答:单⽚机指令系统中的布尔指令集、存储器中的位地址空间与CPU中的位操作构成了⽚内的布尔功能系统,它可对位(bit)变量进⾏布尔处理,如置位、清零、求补、测试转移及逻辑“与”、“或”等操作。
在实现位操作时,借⽤了程序状态标志器(PSW)中的进位标志Cy作为位操作的“累加器”。
8.对于80C52单⽚机内部RAM还存在⾼128字节,应采⽤何种⽅式访问?答:寄存器间接寻址⽅式。
9.试根据指令编码表写出下列指令的机器码。
(1)MOV A,#88H----------------74H, 88H(2)MOV R3,50H----------------ABH,50H(3)MOV P1,#55H----------75H,90H,55H(4)ADD A,@R1---------------------27H(5)SETB 12H----------------------D2H,12H10.完成某种操作可以采⽤⼏条指令构成的指令序列实现,试写出完成以下每种操作的指令序列。
(完整版)单片机,第三章答案
思考题:【3-1】汇编语言与C语言哪种语言的可读性和可移植性强?在对速度和时序敏感的场合应该使用什么语言?对于复杂的单片机系统一般采用C与汇编混合编程的形式这句话对吗?【3-2】二进制机器语言与C和汇编语言两者之间是什么关系?用C或汇编编制的程序在ROM中是以编译后的二进制代码的形式存放这句话对吗?【3-3】80C51系列单片机指令的格式包含哪几个部分?各部分之间的间隔符是什么?四个部分中哪个部分是必须存在的,哪几个部分是可有可无的?标号的格式和代表的意义是?【3-4】80C51系列单片机有哪几种寻址方式?【3-5】80C51单片机中立即数是存放在ROM中还是RAM中?【3-6】判断下列说法是否正确。
(1)立即数寻址方式是被操作的数据本身就在指令中,而不是它的地址在指令中。
()(2)指令周期是执行一条指令的时间。
()(3)指令中直接给出的操作数称为直接寻址。
()(4)内部寄存器Rn(n=0~7)可作为间接寻址寄存器。
()【3-7】80C51单片机可以进行直接寻址的区域是?【3-8】80C51单片机可以进行寄存器寻址的范围是?【3-9】80C51单片机可以进行寄存器间接寻址的寄存器是?寻址的范围是?【3-10】在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的()。
【3-11】80C51单片机变址寻址方式中可以作基址的寄存器是?可以作变址的寄存器是?@A+PC,@A+DPTR所找到的操作数是在ROM中对吗?【3-12】80C51单片机相对寻址改变的是PC的当前值,即改变的CPU执行指令的顺序这句话对否?【3-13】若访问特殊功能寄存器,只可以采用那种寻址方式?【3-14】若访问外部RAM单元,只可以使用哪种寻址方式?【3-15】若访问内部RAM单元,可使用哪些寻址方式?【3-16】若访问内外程序存储器,可使用哪些寻址方式?【3-17】80C51单片机可以进行位寻址的字节单元范围除11个可位寻址的特殊功能寄存器外还包括哪个区域?分别找出位地址是00H、08H、22H、7FH、D0H、E0H对应的字节地址?【3-18】已知(30H)=40H,(40H)=10H,(10H)=32H,(P1)=0EFH,试写出执行以下程序段后有关单元的内容。
单片机第三章习题答案
第三章习题参考答案一、填空题1、51H2、方式2定时、方式1计数3、131072μs、65536μs4、TF0、TF15、5、外部中断0的中断入口地址为0003H ;定时器T0的中断入口地址为000BH;外部中断1的中断入口地址为0013H;定时器T1的中断入口地址为001BH;串行口中断的中断入口地址为00236、2、IP7、28、3INT、10H9、91H、0二、选择题1、B2、C3、A4、D5、C6、C7、A8、B9、A 10、B三、简答题1、(1) TCON.7(TF1):定时器1的溢出中断标志。
T1被启动计数后,从初值做加1计数,当计满溢出后由硬件置位TF1,同时向CPU发出中断请求,此标志一直保持到CPU响应中断后才由硬件自动清0。
也可以由软件查询该标志,并且由软件清0。
(2) TCON.5(TF0):定时器0溢出中断标志。
其操作功能和意义与TF1类同。
(3) TCON.3(IE1):外部中断1的中断请求标志。
当P3.3引脚信号有效时,IE1 = 1,外部中断1向CPU申请中断,当执行完后,由片内硬件自动清0。
(4) TCON.2(IT1):外部中断1的中断触发方式控制位。
当IT1 = 0时,外部中断1被控制为电平触发方式。
在这种方式下,CPU在每个机器周期的S5P2期间对外部中断1(P3.3)引脚采样,若为低电平,则认为有中断申请,随即使IE1标志置位;若为高电平,则认为无中断申请,或中断申请已撤除,随即使IE1标志复位。
当IT1 = 1时,外部中断1被控制为边沿触发方式。
CPU在每个机器周期的S5P2期间对外部中断1(P3.3)引脚采样,如果在相继的两个周期采样过程中,一个机器周期采样到该引脚为高电平,接着的下一个机器周期采样到该引脚为低电平,则使IE1置1,直到CPU响应该中断时,才由硬件使IE1清0。
(5) TCON.1(IE0):外部中断0的中断请求标志。
其操作功能和意义与IE1类同。
单片机第3章习题参考答案解析
单⽚机第3章习题参考答案解析第3章习题参考答案3.1(略)3.2(略)3.3(略)3.4指出下列指令源操作数的寻址⽅式和功能。
1)MOV A,# 40H ;⽴即寻址。
40H→ A2)MOV A, 40H ;直接寻址。
(40H)→ A3)MOV A, @R1 ;寄存器间址。
(R1)→ A4)MOV A, R3 ;寄存器寻址。
R3→ A5)MOVC A,@A+PC ;变址寻址。
(A+PC)→ A6)SJMP LOOP ;相对寻址。
程序转到标号为LOOP的语句处执⾏。
3.5内部RAM的00H单元的寻址⽅式:1)直接寻址,MOV A,00H2)因为00H是⼯作寄存器区,所以还可以寄存器寻址。
MOV A, R0特殊功能寄存器中的操作数的寻址⽅式:1)直接寻址,MOV A, SP2)部分SFR可以位寻址,MOV C, ACC.73.6变址寻址和相对寻址中的地址偏移量异同:1)变址寻址的偏移量是⼀个00H ~ FFH范围内的⽆符号数;相对寻址偏移量是⼀个带符号的8位⼆进制补码,范围为-128 ~ +127。
2)变址寻址的偏移量放在累加器A中,相对寻址的偏移量直接在指令中给出。
3)都是将基地址与地址偏移量相加,形成操作数地址。
3.7写出下列指令的机器码,指出指令中50H和66H各代表什么?1)指令 50H的含义机器码MOV A,# 50H 源操作数7450HMOV A,50H 源操作数的地址E550HMOV 50H,# 20H ⽬的操作数的地址755020HMOV C, 50H 位地址A250HMOV 50H,20H ⽬的操作数的地址852050H2)指令 66H的含义机器码MOV @R0,# 66H 源操作数7666HMOV R6,#66H 源操作数7E66HMOV 66H,# 45H ⽬的操作数的地址756645HMOV 66H,C 位地址9266HMOV 66H,R1 ⽬的操作数的地址8966H3.8写出下列指令的机器码,指出下列程序执⾏后的结果。
单片机第三章习题答案
习题三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单元中。
《单片机原理及应用》课后习题答案
《单片机原理及应用》课后习题答案第三章课后习题答案6.用指令实现下列数据传送:(1)R7内容传送到R4:MOV A,R7;MOV R4,A;(2)内部RAM20H单元送内部RAM40H;MOV 40H,20H(3)外部RAM20H单元内容送内部RAM30H: MOV R0,#20H;MOVX A,@R0;MOV 30H,A(4)ROM2000H单元内容送R2MOV DPTR,#2000HMOV A,#00HMOVC A,@A+DPTR;MOV R2,A(5)外部RAM3456H的内容送外部78HMOV DPTR,#3456HMOVX A,@DPTRMOV R0,#78HMOVX @R0,A(6)外部ROM2000H单元内容送外部RAM20H MOV DPTR,#2000HMOV A,#00HMOVC A,@A+DPTR;MOV R0,#20HMOVX @R0,A(7)外部RAM2040H单元内容与3040H内容交换MOV DPTR,#2040HMOVX A,@DPTRMOV R0,AMOV DPTR,#3040HMOVX A,@DPTRMOV R1,AMOV A,R0MOVX @DPTR,AMOV A,R1MOV DPTR,#2040HMOVX @DPTR,A(8)将片内数据存储器20H~23H单元内容传送到片外数据存储器3000H~3003HMOV A,20HMOV DPTR,#3000HMOVX @DPTR,AMOV A,21HMOV DPTR,#3001HMOVX @DPTR,AMOV A,22HMOV DPTR,#3002HMOVX @DPTR,AMOV A,23HMOV DPTR,#3003HMOVX @DPTR,AORG 0100HAJMP MAINMAIN: MOV R7,#04HMOV R0,#20HMOV DPTR,#3000HLOOP:MOV A,@R0 ;MOVX @DPTR,AINC R0 ;准备取下一个数INC DPTRDJNZ R7,LOOPEND7. 试用3种方法将累加器A中的无符号数乘2。
单片机原理及接口技术课后答案第三章
单⽚机原理及接⼝技术课后答案第三章第三章1、指令:CPU根据⼈的意图来执⾏某种操作的命令指令系统:⼀台计算机所能执⾏的全部指令集合机器语⾔:⽤⼆进制编码表⽰,计算机能直接识别和执⾏的语⾔汇编语⾔:⽤助记符、符号和数字来表⽰指令的程序语⾔⾼级语⾔:独⽴于机器的,在编程时不需要对机器结构及其指令系统有深⼊了解的通⽤性语⾔2、见第1题3、操作码 [⽬的操作数] [,源操作数]6、 MOV A,40H ;直接寻址(40H)→AMOV R0,A;寄存器寻址(A)→R0MOV P1,#0F0H ;⽴即数寻址0F0→P1MOV @R0,30H;直接寻址(30H)→(R0)MOV DPTR,#3848H;⽴即数寻址 3848H→DPTRMOV 40H,38H;直接寻址(38H)→40HMOV R0,30H;直接寻址(30H)→R0MOV P0,R0;寄存器寻址( R0 )→P0MOV 18H,#30H ;⽴即数寻址30H→18HMOV A,@R0 ;寄存器间接寻址 ((R0)) →AMOV P2,P1 ;直接寻址(P1)→P2最后结果:(R0)=38H,(A)=40H,(P0)=38H,(P1)=(P2)=0F0H,(DPTR)=3848H,(18H)=30H,(30H)=38H,(38H)=40H,(40H)=40H,(48H)=38H注意:→左边是内容,右边是单元7、⽤直接寻址,位寻址,寄存器寻址8、MOV A,DATA ;直接寻址2字节1周期MOV A,#DATA ;⽴即数寻址2字节1周期MOV DATA1,DATA2 ;直接寻址3字节2周期MOV 74H,#78H ;⽴即数寻址3字节2周期如果想查某⼀指令的机器码,字节数或周期数可查阅书本后⾯的附录A9、MOV A,@R0 ;((R0))=80H→AMOV @R0,40H ;(40H)=08H→(R0)MOV 40H,A ;(A)=80→40HMOV R0,#35H ;35H→R0最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H10、⽤直接寻址,位寻址,寄存器寻址11、只能采⽤寄存器间接寻址(⽤MOVX指令)12、低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7)⾼128字节:直接寻址,位寻址,寄存器寻址13、采⽤变址寻址(⽤MOVC指令)14、压缩BCD码在进⾏加法运算时应逢⼗进⼀,⽽计算机只将其当作⼗六进制数处理,此时得到的结果不正确。
单片机原理及应用第3章习题解答
第3章思考题及习题3参考答案一、填空1.访问SFR,只能使用寻址方式。
答:直接。
2.指令格式是由和组成,也可仅由组成。
答:操作码,操作数,操作码。
3.在基址加变址寻址方式中,以作为变址寄存器,以或作为基址寄存器。
答:A,PC,DPTR4.假定累加器A中的内容为30H,执行指令1000H:MOVC A,@A+PC后,把程序存储器单元的内容送入累加器A中。
答:1031H5.在AT89S52中,PC和DPTR都用于提供地址,但PC是为访问存储器提供地址,而DPTR是为访问存储器提供地址。
答:程序,数据6.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的。
答:地址7.下列程序段的功能是。
答:A的内容与B的内容互换。
PUSH AccPUSH BPOP AccPOP B8.已知程序执行前有(A)=02H,(SP)=52H,(51H)=FFH,(52H)=FFH。
下述程序执行后,(A)= ,(SP)= ,(51H)= ,(52H)= ,(PC)=。
POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,@A+DPTRPUSH AccMOV A,BINC AMOVC A,@A+DPTRPUSH AccRETORG 4000HDB 10H,80H,30H,50H,30H,50H答:(A)=50H,(SP)=50H,(51H)=30H,(52H)=50H,(PC)=5030H9.假定(A)=83H,(R0)=17H,(17H)=34H,执行以下指令后,(A)= 。
ANL A,#17HORL 17H,AXRL A,@R0CPL A答:(A)=0CBH。
10.假设(A)=55H,(R3)=0AAH,在执行指令“ANL A,R3”后,(A)= ,(R3)= 。
答:(A)=00H,(R3)=0AAH。
11.如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后,(DPH)= ,(DPL)= ,(SP)= 。
(完整版)单片机原理及应用第四版林立第三章习题答案
第三章选择题(1)指令中包含“@Ri”或“@DPTR”形式操作数的寻址方式称为寄存器______。
A.变址寻址B.间接寻址C.直接寻址D.立即寻址(2)能实现“先将操作数减1,若结果仍不为零则转移到目标地址”功能的汇编操作码是______。
A.DJNZ B.CJNE C.LJMP D.MOVX,执行下列第______项指令后可使其第3位置1。
(3)已知P0 = #23H,执行下列第A.ADD P0,#34H B.ANL P0,#3BH C.ORL P0,#3BH D.MOV P0,#34H (4)下列指令中,能访问外部数据存储器的正确指令为______。
A.MOV A,@DPTRB.MOVX A,Ri C.MOVC A,@A+DPTRD.MOVX A,@Ri (5)80C51汇编语言指令格式中,唯一不可缺少的部分是______。
A.标号B.操作码C.操作数D.注释(6)下列完成80C51片内RAM数据传送的指令是______。
A.MOVX A,@DPTRB.MOVC A,@A+PC C.MOV A,@RiD.JMP @A+DPTR (7)80C51的立即寻址的指令中,立即数就是______。
A.放在寄存器R0中的内容B.放在指令中的常数C.放在A中的内容D.放在B中的内容(8)指令JB 0E0H,LP 中的0E0H是指______。
A.累加器AB.累加器A的最高位C.累加器A的最低位D.一个字节地址(9)下列指令中条件转移指令是指______。
A.AJMP addr11B.SJMP rel C.JNZ relD.LJMP addr16(10)80C51指令MOV R0,20H中的20H是指______。
A.立即数B.内部RAM中的字节地址C.内部RAM中的位地址D.内部ROM中的字节地址(11)在80C51指令中,下列指令______是无条件转移指令。
A.LCALL addr16B.DJNZ direct,relC.SJMP relD.ACALL addr11(12)设A=0AFH,(20H)=81H,指令ADDC A,20H执行后的结果是______。
单片机原理及应用第三章课后答案
单片机原理及应用第三章课后答案第一节:单片机的概念和发展历程单片机是一种集成了处理器、存储器和各种输入输出接口的微型计算机系统。
它具有体积小、功耗低、功能强大等特点,广泛应用于各个领域。
单片机的发展经历了几个重要的阶段。
首先,20世纪70年代,中小型计算机开始出现,但体积庞大、功耗高,不适合实际应用。
之后,单片机技术的出现解决了这个问题,使得计算机系统可以被集成到一个芯片中。
1980年代,单片机开始应用于各种电子设备中,如家电、汽车等。
如今,随着技术的不断进步,单片机的功能更加强大,应用范围更为广泛。
第二节:单片机的工作原理单片机主要由CPU、存储器和外设接口等组成。
CPU是单片机的核心,负责指令的执行和数据的处理。
存储器主要用于存储程序和数据。
外设接口用于连接各种输入输出设备,如键盘、显示器、传感器等。
单片机的工作原理可以简单地描述为以下几个步骤:首先,单片机从存储器中获取指令,解析指令并执行相应的操作。
其次,单片机将处理的结果存储到存储器或输出到外设中。
最后,单片机不断地重复执行这些步骤,实现各种功能。
第三节:单片机的应用领域单片机广泛应用于各个领域,以下是几个典型的应用领域:1. 家电控制:单片机可用于控制家电设备,如空调、洗衣机、冰箱等。
通过编程,实现设备的自动化控制和智能化管理。
2. 工业自动化:单片机在工业领域中起着重要作用。
它可以实现生产线的自动化控制、监测和数据采集等功能,提高生产效率和质量。
3. 汽车电子:单片机在汽车中应用广泛,如引擎控制单元(ECU)、车载娱乐系统、车载导航系统等。
它可以实现发动机控制、车辆诊断、多媒体播放等功能。
4. 智能家居:单片机在智能家居中发挥着重要作用。
通过连接各种传感器和执行器,单片机可以实现家居设备的智能化控制,如灯光控制、门窗监测、安防系统等。
第四节:常见的单片机类型和特点1. 8051系列:8051是一种经典的单片机系列,具有成熟的开发环境和丰富的资源。
单片机第三章作业参考答案
MOV A, #78H;立即寻址,将立即数送入累加器AMOV A, 78H;直接寻址,将内部RAM 78H单元内容送累加器AMOV A, R6;寄存器寻址,将R6内容送累加器AINC @R0;寄存器间接寻址,将指针R0指向的内部RAM单元内容加1PUSH ACC;寄存器寻址,将累加器A的内容入栈RL A;寄存器寻址,将累加器A的内容左移1位CPL 30H;位寻址,将位变量30H的内容取反SJMP $;相对寻址,死循环指令MOVC A, @A+DPTR;基寄存器加变址寄存器间接寻址,从程序存储器中DPTR+A对应的地址单元取数到累加器A1.指出下列指令中哪些是非法的DEC DPTRMOV A, @R2MOV R1, @R0MOV , 30HMOV #30H, AMOV OV, 30HMOV A, @A+DPTRRRC 30HRL BXRL C, 30H2.如何将1个立即数30H送入内部RAM 90H单元如何将立即数送特殊功能寄存器P1(1)MOV R0, #90HMOV @R0, #30H(2)MOV P1, #30H3.执行下列一段程序后,试分析有关单元内容。
MOV PSW, #0;MOV R0, #30H;MOV 30H, #40HMOV 40H, #50MOV A, @R0ADDC A, #0CEHINC R0执行结果:(R0)=31H, (30H)=40H, (40H)=50, (A)=0EH, (PSW)=81H4.试编写一段程序,内部RAM 40H、41H单元内容传送到外部RAM 2000H、2001H单元中。
MOV DPTR, #2000HMOV R0, #40HMOV A, @R0MOVX @DPTR, AINC R0INC DPTRMOV A, @R0MOVX @DPTR, A5.试编写一段程序,根据累加器A的内容,到程序存储器1000H起始的表格中取一双字节数,送内部RAM 50H、51H单元。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
思考题:【3-1】汇编语言与C语言哪种语言的可读性和可移植性强?在对速度和时序敏感的场合应该使用什么语言?对于复杂的单片机系统一般采用C与汇编混合编程的形式这句话对吗?【3-2】二进制机器语言与C和汇编语言两者之间是什么关系?用C或汇编编制的程序在ROM中是以编译后的二进制代码的形式存放这句话对吗?【3-3】80C51系列单片机指令的格式包含哪几个部分?各部分之间的间隔符是什么?四个部分中哪个部分是必须存在的,哪几个部分是可有可无的?标号的格式和代表的意义是?【3-4】80C51系列单片机有哪几种寻址方式?【3-5】80C51单片机中立即数是存放在ROM中还是RAM中?【3-6】判断下列说法是否正确。
(1)立即数寻址方式是被操作的数据本身就在指令中,而不是它的地址在指令中。
()(2)指令周期是执行一条指令的时间。
()(3)指令中直接给出的操作数称为直接寻址。
()(4)内部寄存器Rn(n=0~7)可作为间接寻址寄存器。
()【3-7】80C51单片机可以进行直接寻址的区域是?【3-8】80C51单片机可以进行寄存器寻址的范围是?【3-9】80C51单片机可以进行寄存器间接寻址的寄存器是?寻址的范围是?【3-10】在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的()。
【3-11】80C51单片机变址寻址方式中可以作基址的寄存器是?可以作变址的寄存器是?@A+PC,@A+DPTR所找到的操作数是在ROM中对吗?【3-12】80C51单片机相对寻址改变的是PC的当前值,即改变的CPU执行指令的顺序这句话对否?【3-13】若访问特殊功能寄存器,只可以采用那种寻址方式?【3-14】若访问外部RAM单元,只可以使用哪种寻址方式?【3-15】若访问内部RAM单元,可使用哪些寻址方式?【3-16】若访问内外程序存储器,可使用哪些寻址方式?【3-17】80C51单片机可以进行位寻址的字节单元范围除11个可位寻址的特殊功能寄存器外还包括哪个区域?分别找出位地址是00H、08H、22H、7FH、D0H、E0H对应的字节地址?【3-18】已知(30H)=40H,(40H)=10H,(10H)=32H,(P1)=0EFH,试写出执行以下程序段后有关单元的内容。
MOV R0,#30HMOV A,@R0MOV R1,AMOV B,@RiMOV @R1,P1MOV P2,P1MOV 10H,#20HMOV 30H,10H【3-19】为什么对基本型的51子系列单片机(片内RAM为128B),其寄存器间接寻址方式(例如MOV A,@R0)中,规定R0或R1的内容不能超过7FH?【3-20】外部RAM数据传送指令有几条?试比较下面每一组中两条指令的区别?(1)MOVX A,@R1 MOVX A,@DPTR(2)MOVX A,@DPTR MOVX @DPTR,A(3)MOV @R0,A MOVX @R0,A(4)MOVC A,@A+DPTR MOVX A,@DPTR【3-21】假定累加器A中的内容为30H,执行指令 1000H:MOVC A,@A+PC 后,把程序存储器()单元的内容送入累加器A中。
【3-22】在AT89S51中,PC和DPTR都用于提供地址,但PC是为访问()提供地址,而DPTR 是为访问()和()提供地址。
【3-23】试写出完成以下数据传送的指令序列。
(1)R1的内容传送R0;(2)片外RAM 60H单元的内容送入R0;(3)片外RAM 60H单元的内容送入片内RAM 40H单元;(4)片外RAM 1000H单元的内容送入片外RAM 40H单元。
【3-24】试编程,将外部RAM 1000H单元中的数据与内部RAM 60H单元中的数据相互交换。
【3-25】对程序存储器的读操作。
只能使用()。
A)MOV指令 B)PUSH指令 C)MOVX指令 D)MOVC指令【3-26】(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后,(DPH)=(),(DPL)=(),(SP)=()。
POP DPHPOP DPLPOP SP【3-27】假定,(SP)=60H,(A)=30H,(B)=70H,执行下列指令后,SP的内容为(),61H单元的内容为(),62H单元的内容为()。
PUSH AccPUSH B【3-28】已知程序执行前有(A)=02H,(SP)=52H,(51H)=FFH,(52H)=FFH。
下述程序执行后,(A)=(),(SP)=(),(51H)=(),(52H)=(),(PC)=()。
POP DPHPOP DPLMOV DPTR,#4000HRL AMOV B,AMOVC A,@A+DPTRPUSH AccMOV A,BINC AMOVC A,@A+DPTRPUSH AccRETORG 4000HDB 10H,80H,30H,50H,30H,50H【3-29】已知(A)=5BH,(R1)=40H,(40H)=C3H,(PSW)=81H,试写出各条指令的执行结果,并说明程序状态字的状态。
(1)XCH A,R1(2)XCH A,40H(3)XCH A,@R1(4)XCHD A,@Rl(5)SWAP A(6)ADD A,R1(7)ADD A,40H(8)ADD A,#40H(9)ADDC A,40H(10)SUBB A,40H(11)SUBB A,#40H【3-30】试分析下面两组指令的执行结果有何不同?(1)MOV A,#0FFH (2)MOV A,#0FFHINC A ADD A,#O1H【3-31】DA A指令有什么作用?怎样使用?【3-32】已知(A)=87H,(R0)=42H,(42H)=24H,请写出执行下列程序段后A的内容。
ANL A,#23HORL 42H,AXRL A,@R0CPL A【3-33】写出完成如下要求的指令.但是不能改变未涉及位的内容。
(1)把Acc.3,Acc.4,Acc.5和Acc.6清0 。
(2)把累加器A的中间4位清0。
(3)把Acc.2和Acc.3置1。
【3-34】假定(A)=83H,(R0)=17H,(17H)=34H,执行以下指令后,(A)=()。
ANL A,#17HORL 17H,AXRL A,@R0CPL A【3-35】假设(A)=55H,(R3)=0AAH,在执行指令“ANL A,R3”后,(A)=(),(R3)=()。
【3-36】已知组合逻辑关系式为F=AB+C,请编写模拟其功能的程序。
设A、B、C、F均代表位地址。
【3-37】编程完成下述操作。
(1)将外部RAM 1000H单元的所有位取反;(2)将外部RAM 60H单元的高2位清零,低两位变反,其余位保持不变。
【3-38】试用位操作指令实现逻辑操作: P1.0=(10H∨P1.0),PSW.1=(18H∨CY)。
【3-39】仔细辨析下列指令的意义,找出错误的指令,并简要说明原因。
(1)CLR A(2)CLR EOH(3)CLR ACC(4)CLR ACC.0(5)CPL A(6)CPL EOH(7)CPL ACC(8)CPL ACC.0【3-40】指令LJMP addrl6和AJMP addrl1的区别是什么?【3-41】试分析以下两段程序中各条指令的作用,程序执行完将转向何处?(1)MOV p1,#0CAHMOV A,#56HJB P1.22,L1JNB ACC.3,L2……L1::L2::(2)MOV A,#43HJB ACC.2,L1JBC ACC.6,L2……L1::L2::【3-42】判断以下指令的正误。
(1)MOV 28H,@R2;(2)DEC DPTR;(3)INC DPTR;(4)CLR R0;(5)CPL R5(6)MOV R0,R1;(7)PUSH DPTR;(8)MOV F0,C;(9)MOV F0,Acc.3;(10)MOVX A,@R1;(11)MOV C,30H;(12)RLC R0【3-43】借助指令表(附录B),对如下指令代码(十六进制)进行手工反汇编。
FF C0 E0 E5 F0【3-44】以下指令中,属于单纯读引脚的指令是()。
A)MOV P1,AB)ORL P1,#0FHC)MOV C,Pl.5D)ANL P1,#0FH【3-45】用AT89S51单片机的P1口做输出,经驱动电路接8个发光二极管,见图3-11所示。
当输出位为“0”时,发光二极管点亮;输出为“1”时,发光二极管为暗。
试编制程序①将8个发光二极管全部点亮;②将8个发光二极管全部熄灭;③将8个发光二极管隔一个点亮一个;④每次亮一个,循环左移,一个一个地亮,循环不止。
图3-11 单片机P1口驱动发光二极管【3-46】如图3-12所示,这是由AT89C51构建的最小系统,外部连接了4个按键S1~S4及4个发光二极管LEDl-LED4,P1口的高4位用于接收按键的输入状态,而低4位用于驱动发光二极管。
请结合图示,编写程序,完成以下要求。
(1)若Sl闭合,则发光二极管LEDl点亮;若S2闭合,则发光二极管.LED2点亮……。
以此类推,即发光二极管实时反映按键状态。
(2)用4个发光二极管实现对按键键值的BCD编码显示。
即若Sl闭合,键值为1,编码为0001,LEDl点亮;若S2闭合,键值为2,编码为0010,LED2点亮;若S3闭合,键值为3,编码为0011,LEDI、LED2同时点亮;若S4闭合,键值为4,编码为0100,LED3点亮。
图3-12第三章思考题答案:【3-1】解答:(1)C语言那种语言的可读性和可移植性强,例如对于用C语言编制的51单片机程序,只需要稍作修改就可以移植到PIC类型的单片机上。
(2)汇编语言适用于对速度和时序敏感的场合。
(3)正确。
【3-2】解答:(1)C语言与汇编语言经过编译后将是二进制的机器语言。
(2)正确。
【3-3】解答:(1)一条完整的汇编语言指令包括标号、操作码、操作数和注释四部分。
(2)其中标号与操作码用冒号分隔,操作码和操作数之间用空格,多个操作数之间用逗号分隔,注释用冒号开头。
(3)四个部分中操作码是必须存在的,其他三部分在有的指令中可以不出现。
(4)标号是一种符号地址。
标号以字母开头,由1-8个字母或数字组成。
【3-4】解答:80C51系列单片机提供了七种寻址方式:立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址(基址寄存器+变址寄存器间接寻址)、相对寻址、位寻址。
【3-5】解答:立即寻址寻址方式中的立即数是存放在ROM中。
【3-6】解答:(1)正确(2)正确(3)错误(4)错误【3-7】解答:直接寻址方式可访问以下存储空间:①内部RAM低128个字节单元,指令中直接地址以单元地址的形式给出。