写程序的时候就是通过定义程序状态字来选择使用不同的寄存器组。 对 RS1和 RS0赋值。 (最后一问同题 7)
也可以直接
13. 程序状态寄存器 PSW的作用是什么 ?常用标志有哪些位 ?作用是什么 ? 答:PSW是一个 SFR(特殊功能寄存器)
位于片内 RAM的高 128B
具体地址 D0H(00H~FFH)(片内 RAM的编址)(8bits 编址方法) PSW=Program Status Word (程序状态字) PSW 的常用标志位有哪些? CY=Carry (进位标志位) AC=Auxiliary Carry F0
用户标志位
(辅助进位标志位) (半进位标志位)
RS1 ,RS0,用来选择当前工作寄存器组( R0~R7)(4 选 1) OV=Overflow (溢出标志位) P=Parity
(奇偶校验位)
14. 位地址 7CH与字节地址 7CH如何区别?位地址 7CH具体在片内 RAM中的什么 位置?
答:用不同的寻址方式来加以区分, 即访问 128 个位地址用位寻址方式, 访问低 128 字节单元用字节寻址和间接寻址。
具体地址为 2F 的第五位,即为 7C。
15. 89C51 单片机的时钟周期与振荡周期之间有什么关系 令周期?
答:时钟信号的周期称为机器状态周期, 是振荡周期的两倍。 一个机器周期是指 CPU访问存储器一次所需的时间。指令周期是执行一条指令所需的时间。 16. 一个机器周期的时序如何划分 ?
答:一个机器周期 =12个震荡周期 =6 个时钟周期(状态周期)
S1P1 ,S1P2,S2P1,S2P2,S3P1,S3P2,S4P1,S4P2,S5P1,S5P2,S6P1, S6P2 其中 s=state (状态),p=phase(相位)
17. 什么叫堆栈 ?堆栈指针 SP的作用是什么 ?89C51单片机堆栈的容量不能超过 多少字节 ?
答:堆栈都是一种数据项按序排列的数据结构,只能在一端
( 称为栈顶(top)) 对 ?什么叫机器周期和指
数据项进行插入和删除。 要点:堆:顺序随意栈: 后进先出(Last-In/First-Out)
5
在调用子程序时需要保存调用函数的 CPU寄存器 PC指针,PC指针是被 CALL 指令自动压入 SP所指向的片内存储器 ,CPU寄存器要由用户用 PUSH指令自行保 存, 因此 SP 的作用就是一个指针 , 当进行中断调用 , 子函数调用时将现场数据压 入 SP所指向的存储器 ,SP 自动增加 1 或 2, 当中断结束 RETI,调用返回 RET,POP 时将 SP数据弹出,SP 自动减 1 或,2 8051最大为 128字节的片内存储器 , 18. 89C51 有几种低功耗方式?如何实现? 答:空闲方式和掉电方式
空闲方式和掉电方式是通过对 SFR中的 PCO(N地址 87H)相应位置 1 而启动 的。
当 CPU执行完置 IDL=1(PCON.1)的指令后,系统进入空闲工作方式。这时,内 部时钟不向 CPU提供,而只供给中断、串行口、定时器部分。 CPU的内部状态维 持,即包括堆栈指针 SP、程序计数器 PC、程序状态字 PSW、累加器 ACC所有的 内容保持不变,端口状态也保持不变。 ALE和 PSEN保持逻辑高电平。
当 CPU执行一条置 PCON.1位(PD)为 1 的指令后,系统进入掉电工作方式。在 这种工作方式下,内部振荡器停止工作。由于没有振荡时钟,因此,所有的功能 部件都停止工作。 但内部 RAM区和特殊功能寄存器的内容被保留, 而端口的输出 状态值都保存在对应的 SFR中,ALE和 PSEN都为低电平。 19. PC 与 DPTR各有哪些特点?有何异同? 答:(1) 程序计数器 PC作为不可寻址寄存器的特点
程序计数器 PC是中央控制器申最基本的寄存器,是一个独立的计数器,存 放着下一条将程序存储器中取出的指令的地址。
程序计数器 PC变化的轨迹决定程序的流程。程序计数器的宽度决定了程序 存储器可以 寻址的范围。
程序计数器 PC的基本工作方式有 :
①程序计数器 PC自动加 1。这是最基本的工作方式,也是这个专用寄存器 被称为计数 器的原因。
②执行条件或无条件转移指令时, 程序计数器将被置入新的数值, 程序的流 向发生变化。
变化的方式有下列几种 : 带符号的相对跳转 SJMP、短跳转 AJMP、长跳转 LJMP及 JMP @A+DPTR等。
6
③在执行调用指令或响应中断时 :
●PC的现行值,即下一条将要执行的指令的地址送入堆栈,加以保护 ●将子程序的入口地址或者中断矢量地址送入 行子程序或中断服务程序 ;
●子程序或中断服务程序执行完毕,遇到返回指令 (2)
地址指针 DPTR的特点
RET或 RETI时,将栈顶
;
PC,程序流向发生变化,执
的内容送到 PC寄存器中,程序流程又返回到原来的地方,继续执行。
地址指针 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,#XXXX,H INC DPTP。 20. 89C51 端口锁存器的“读—修改—写”操作与“读引脚”操作有何区别? 答:指令系统中有些指令读锁存器的值 , 有些指令则读引脚上的值。 读锁存器指 令是从锁存器中读取一个值并进行处理
, 把处理后的值 ( 原值或已修改后的值 )
重新写入锁存器中。这类指令称为读 - 修改- 写指令。
对于读- 修改- 写指令。直接读锁存器而不是读端口引脚 , 是因为从引脚上读 出的数据不一定能真正反映锁存器的状态。
7
第三章
1、 指令:CPU 根据人的意图来执行某种操作的命令
指令系统:一台计算机所能执行的全部指令集合
机器语言:用二进制编码表示,计算机能直接识别和执行的语言 汇编语言:用助记符、符号和数字来表示指令的程序语言
高级语言:独立于机器的,在编程时不需要对机器结构及其指令系统有深入 了解的通用性语言 2、 见第1题
3、 操作码 [目的操作数 ] [,源操作数 ] 4、 寻址方式 立即数寻址 直接寻址 寄存器寻址 寄存器间接寻址 变址寻址 相对寻址 位寻址
寻址空间 程序存储器 ROM
片内 RAM低128B、特殊功能寄存器 工作寄存器 R0-R7、A、B、C、DPTR 片内 RAM低128B、片外 RAM 程序存储器( @A+PC,@A+DP)TR 程序存储器 256B范围(PC+偏移量) 片内 RAM的20H-2FH字节地址、部分 SFR
5、要访问特殊功能寄存器和片外数据存储器,应采用哪些寻址方式? 答 SFR:直接寻址,位寻址,寄存器寻址;片外
RAM :寄存器间接寻址
6、 MOV A,40H ;直接寻址 (40H)→A
;寄存器寻址
(A)→R0 0F0→P1
MOV R0,A
MOV P1,#0F0H ;立即数寻址
MOV @R0,30H ;直接寻址( 30H)→(R0)
8
相关推荐: