好文档 - 专业文书写作范文服务资料分享网站

单片机原理及接口技术-习题答案第四版李朝青(修订后)

天下 分享 时间: 加入收藏 我要投稿 点赞

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

21. 89C51有几种低功耗方式?如何实现? 答:空闲方式和掉电方式

空闲方式和掉电方式是通过对SFR中的PCON(地址87H)相应位置1而启动的。

当CPU执行完置IDL=1(PCON.1)的指令后,系统进入空闲工作方式。这时,内部时钟不向CPU提供,而只供给中断、串行口、定时器部分。CPU的内部状态维持,即包括堆栈指针SP、程序计数器PC、程序状态字PSW、累加器ACC所有的内容保持不变,端口状态也保持不变。ALE和PSEN保持逻辑高电平。 当CPU执行一条置PCON.1位(PD)为1的指令后,系统进入掉电工作方式。在这种工作方式下,内部振荡器停止工作。由于没有振荡时钟,因此,所有的功能部件都停止工作。但内部RAM区和特殊功能寄存器的内容被保留,而端口的输出状态值都保存在对应的SFR中,ALE和PSEN都为低电平。 22. PC与DPTR各有哪些特点?有何异同? 答:(1)程序计数器PC作为不可寻址寄存器的特点

程序计数器PC是中央控制器申最基本的寄存器,是一个独立的计数器,存放着下一条将程序存储器中取出的指令的地址。

程序计数器PC变化的轨迹决定程序的流程。程序计数器的宽度决定了程序存储器可以 寻址的范围。

程序计数器PC的基本工作方式有:

①程序计数器PC自动加1。这是最基本的工作方式,也是这个专用寄存器被称为计数 器的原因。

②执行条件或无条件转移指令时,程序计数器将被置入新的数值,程序的流向发生变化。

变化的方式有下列几种:带符号的相对跳转SJMP、短跳转AJMP、长跳转LJMP及JMP @A+DPTR等。

③在执行调用指令或响应中断时:

●PC的现行值,即下一条将要执行的指令的地址送入堆栈,加以保护; ●将子程序的入口地址或者中断矢量地址送入PC,程序流向发生变化,执行子程序或中断服务程序;

●子程序或中断服务程序执行完毕,遇到返回指令RET或RETI时,将栈顶的内容送到PC寄存器中,程序流程又返回到原来的地方,继续执行。 (2)地址指针DPTR的特点

6

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

地址指针DPTR的特点是,它作为片外数据存储器寻址用的地址寄存器(间接寻址)。

(3)地址指针DPTR与程序计数器PC的异同 ①相同之处:

●两者都是与地址有关的、16位的寄存器。其中,PC与程序存储器的地址有关,而

DPTR与数据存储器的地址有关。

●作为地址寄存器使用时,PC与DPTR都是通过P0和P2口(作为16位地址总线)输

出的。但是,PC的输出与ALE及PSEN有关;DPTR的输出,则与ALE、RD及WR相联系。 ②不同之处:

●PC只能作为16位寄存器对待,由于有自动加1的功能,故又称为计数器; DPTR可以作为16位寄存器对待,也可以作为两个8位寄存器对待。 ●PC是不可以访问的,有自己独特的变化方式,它的变化轨迹决定了程序执行的流程;

DPTR是可以访问的,如MOV DPTR,#XXXXH,INC DPTP。

23. 89C51端口锁存器的“读—修改—写”操作与“读引脚”操作有何区别? 答:指令系统中有些指令读锁存器的值, 有些指令则读引脚上的值。读锁存器指令是从锁存器中读取一个值并进行处理, 把处理后的值(原值或已修改后的值)重新写入锁存器中。这类指令称为读-修改-写指令。

对于读-修改-写指令。直接读锁存器而不是读端口引脚, 是因为从引脚上读出的数据不一定能真正反映锁存器的状态。 第三章

1、 指令:CPU根据人的意图来执行某种操作的命令 指令系统:一台计算机所能执行的全部指令集合

机器语言:用二进制编码表示,计算机能直接识别和执行的语言 汇编语言:用助记符、符号和数字来表示指令的程序语言

高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入了解的通用性语言 2、 见第1题

3、 操作码 [目的操作数] [,源操作数]

7

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

4、 寻址方式 立即数寻址 直接寻址 寄存器寻址 寄存器间接寻址 变址寻址 相对寻址 位寻址

5、要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式? 答 SFR:直接寻址,位寻址,寄存器寻址;片外RAM:寄存器间接寻址 6、 MOV A,40H ;直接寻址 (40H)→A MOV R0,A ;寄存器寻址 (A)→R0 MOV P1,#0F0H ;立即数寻址 0F0→P1 MOV @R0,30H ;直接寻址(30H)→(R0) MOV DPTR,#3848H ;立即数寻址 3848H→DPTR MOV 40H,38H ;直接寻址(38H)→40H MOV R0,30H ;直接寻址(30H)→R0 MOV P0,R0 ;寄存器寻址 (R0)→P0 MOV 18H,#30H ;立即数寻址 30H→18H MOV A,@R0 ;寄存器间接寻址((R0))→A MOV 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

8

寻址空间 程序存储器ROM 片内RAM低128B、特殊功能寄存器 工作寄存器R0-R7、A、B、C、DPTR 片内RAM低128B、片外RAM 程序存储器(@A+PC,@A+DPTR) 程序存储器256B范围(PC+偏移量) 片内RAM的20H-2FH字节地址、部分SFR 文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

注意:→左边是内容,右边是单元

7、对89C51/S51片内RAM的高128字节的地址空间寻址要注意什么? 答 用直接寻址,位寻址,寄存器寻址 8、指出下列指令的本质区别?

MOV A,DATA ;直接寻址 2字节1周期 MOV A,#DATA ;立即数寻址 2字节1周期 MOV DATA1,DATA2 ;直接寻址 3字节2周期 MOV 74H,#78H ;立即数寻址 3字节2周期

如果想查某一指令的机器码,字节数或周期数可查阅书本后面的附录A 9、

MOV A,@R0 ;((R0))=80H→A MOV @R0,40H ;(40H)=08H→(R0) MOV 40H,A ;(A)=80→40H MOV R0,#35H ;35H→R0

最后结果:(R0)=35H (A)=80H,(32H)=08H,(40H)=80H 10、如何访问SFR?

用直接寻址,位寻址,寄存器寻址 11、如何访问片外RAM?

只能采用寄存器间接寻址(用MOVX指令) 12、如何访问片内RAM?

低128字节:直接寻址,位寻址,寄存器间接寻址,寄存器寻址(R0~R7) 高128字节:直接寻址,位寻址,寄存器寻址 13、如何访问片内外ROM?

采用变址寻址(用MOVC指令) 14、说明十进制调整的原因和方法

答:压缩BCD码在进行加法运算时应逢十进一,而计算机只将其当作十六进制数处理,此时得到的结果不正确。用DA A指令调整(加06H,60H,66H) 15、说明89C51/S51的布尔处理机功能

9

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.

答:用来进行位操作

16、ANL A,#17H ;83H∧17H=03H→A

ORL 17H,A ;34H∨03H=37H→17H XRL A,@R0 ;03H⊕37H=34H CPL A ;34H求反等于CBH 所以(A)=CBH

17、(1)SETB ACC.0或SETB E0H ;E0H是累加器的地址

(2)CLR ACC.7 CLR ACC.6 CLR ACC.5 CLR ACC.4 (3)CLR ACC.6 CLR ACC.5 CLR ACC.4 CLR ACC.3 18、MOV 27H,R7 MOV 26H,R6 MOV 25H,R5 MOV 24H,R4 MOV 23H,R3 MOV 22H,R2 MOV 21H,R1 MOV 20H,R0 19、MOV 2FH,20 MOV 2EH,21 MOV 2DH,22 20、CLR C

MOV A,#5DH ;被减数的低8位→A MOV R2,#B4H ;减数低8位→R2

SUBB A,R2 ;被减数减去减数,差→A MOV 30H,A ;低8位结果→30H

10

单片机原理及接口技术-习题答案第四版李朝青(修订后)

文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.21.89C51有几种低功耗方式?如何实现?答:空闲方式和掉电方式空闲方式和掉电方式是通过对SFR中的PCON(地址87H)相应位置1而启动的。当CPU执行完置IDL=1(PCON.1)的指令后,系统进入空闲工作方式。这时,内部时钟不向CPU提供,而只供给中断、串行口、
推荐度:
点击下载文档文档为doc格式
8qmse6s8w93fre38hic91cf865brly010lv
领取福利

微信扫码领取福利

微信扫码分享