好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

最新存贮器配置PPT课件.ppt

31页
  • 卖家[上传人]:pu****.1
  • 文档编号:575273352
  • 上传时间:2024-08-17
  • 文档格式:PPT
  • 文档大小:631KB
  • / 31 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 存贮器配置存贮器配置 3.3.1 微机的存贮器结构分类 l普林斯顿结构和哈佛结构 l普林斯顿结构 微机只有一个地址空间,ROM和RAM可以随意安排在这一地址范围内不同的空间,即ROM和RAM的地址同在一个队列里分配不同的地址空间CPU访问存储器时,一个地址对应唯一的存储器单元,可以是ROM也可以是RAM,并用同类访问指令 程序存储器的某些单元留给系统使用 存储单元保留目的0000H一0002H复位后初始化引导程序0003H一000AH外部中断0000BH一0012H定时器0溢出中断0013H一001AH外部中断1001BH一002AH定时器1溢出中断0023H一002AH串行端口中断002BH定时器2中断(8052才有) 存储单元0000H一0002H用作8051上电复位后引导程序存放单元 因为8051/8031/8751上电复位后程序计数器PC的内容为0000H,所以CPU总是从0000H开始执行程序● 在这三个单元中存有转移指令,那么程序就被引导到转移指令指定的ROM/EPROM空间去执行因此,在8051的程序存贮器的开头都安排的是一条转移指令AJMP #add13; LJMP#add16; ●● 中断矢量区l0003H—002AH单元均匀地分为五段,用作五个中断服务程序的入口。

      l例如,外部中断引脚INT0(P3.2)有效时,即引起中断申请,lCPU响应中断后自动将地址0003H装入PC,程序就自动转向0003H单元开始执行l如果事先在0O03H—000AH存有引导(转移)指令,程序就被引导(转移指令)到指定的中断服务程序空间去执行l0003H称中断矢量地址 中断矢量地址表 中断源 中断服务程序入口地址外部中断0 0003H定时/计数器0溢出000BH外部中断10013H定时/计数器1溢出001BH 串行口0023H 二、数据存储器地址空间 l数据存储器RAM用于存放运算的中间结果、数据暂存和缓冲、标志位等 l 数据存储器空间也分成片内和片外两大部分,即片内RAM和片外RAM l8051片外数据存储器空间为64K,从OO00H—FFFFH;l片内存储器空间为256字节,地址从0000H——00FFH (一)片外RAM l片外数据存储器与片内数据存储器空间低地址0000H—00FFH是重迭的,l如何区别片内、片外RAM空间呢?l8051有MOV和MOVX两种指令、用以区分片内、片外RAM空间l片内RAM使用MOV指令,l片外64K RAM空间专门为MOVX指令所用。

      (二)片内RAM l片内数据存储器最大可寻址256个单元,l它们又分为两个部分:低128字节(00H一7FH)是真正的RAM区,高128字节(80H—FFH)为 特殊功能寄存器(SFR)区 1.低128字节RAM (00H——7FH) l分为三个区:–工作寄存器 区(00H——1FH)–位寻址区 (20H——2FH)–真正的RAM区 (30H——7FH) 工作寄存器 区(00H——1FH)l00H—lFH地址安排为四组工作寄存器区,l每组有8个工作寄存器(R0一R7),共占32个单元l通过对程序状态字PSW中RSl、RS0的设置,l每组寄存器均可选作CPU的当前工作寄存器组l若程序中并不需要四组,那么其余可用作一般RAM单元lCPU复位后,选中第0组工作寄存器 工作寄存器组 选择 位寻址区 (20H——2FH)字节地址 D7 D6 D5 D4 D3 D2 D1 D0 2FH 7FH 7EH 7DH 7CH 7BH 7AH 79H 78H 2EH 77H 76H 75H 74H 73H 72H 7 1H 70H … … … … … 20H 07H 06H 05H 04H 03H 02H 01H 00H l低128字节RAM单元地址范围也是00H一7FH,l805l采用不同寻址方式来加以区分,l即访问128个位地址用位寻址方式,l访问低128字节单元用直接寻址和间接寻址,这样就可以区分开00H一7FH是位地址还是字节地址。

      l这些可寻址位,通过执行指令可直接对某一位操作,如置1、清0或判l、判0等,可用作软件标志位或用于位(布尔)处理l这种位寻址能力是8051的一个重要特点 真正的RAM区l地址范围:30H——7FHl真正用作RAM:非常灵活–应合理安排;如:堆栈区,显示区单片机软件水平的高低与RAM区的应用有很大关系 2. 高128字节RAM一特殊功能寄存器(SFR) l 8051片内高128字节RAM中,除程序计数器PC外,有21个专用寄存器(SFR),也称特殊功能寄存器,l它们离散地分布在80H—FFH的RAM空间中l访问特殊功能仅允许使用直接寻址方式l在21个特殊功能寄存器SFR中,有11个特殊功能寄存器具有位寻址能力,它们的字节地址正好能被8整除, l下下面面介介绍绍部部分分特特殊殊功功能能寄寄存存器器(SFR),,其其余余将将在后续的章节中讲述在后续的章节中讲述l 累加器ACC(E0H) 累加器ACC是8051最常用、最繁忙的8位特殊功能寄存器,许多指令的操作数取自于ACC,许多运算结果也存放于ACC中在指令系统中采用A作为累加器ACC的助记符l 寄存器B(FOH) 在乘、除指令中,用到了8位B寄存器。

      乘法指令的两个操作数分别取自A和B,乘积存于B、A两个8位寄存器中除法指令中,A中存放被除数,B中放除数,商存放于A中,B中存放余数 在其它指令中,B可作为一般通用寄存器或一个RAM单元使用 l 程序状态寄存器PSW(D0H) PSW是一个8位特殊功能寄存器,它的各位包含了程序执行后的状态信息,供程序查询或判别之用各位的含义及其格式如下: CY AC FORS1 RS0OV -P lCY(PSW.7) 进位标志位在执行加法(或减法)运算指令时,如果运算结果最高位(位7)向前有进位(或借位),CY位由硬件自动置“1”;如运算结果最高位(位7)无进位(或借位),则CY清“0”CY也是8051在进行位操作(布尔操作)时的位累加器 lAC(PSW.6) 半进位标志位,也称辅助进位标志当执行加法(或减法)操作时,其运算结果(和或差)产生由低半字节(位3)向高半字节有半进位(或借位)时,AC位将被硬件自动置“1”,否则AC被自动情“0” lF0(PSW.5) 用户标志位用户可以根据自己的需要对F0位赋予一定的含义,由用户置拉、复位,作为软件标志l RSO和RSl(PSW.4和PSW.5) 工作寄存器组选择控 制位。

      l OV(PSW.2) 溢出标志位当进行补码运算时,如有溢出,即当运算结果超出+127~—128的范围时,OV位由硬件自动置OV=1;无溢出时,OV=0 lPSW.1为保留位,805l末用,8052为Fl用户标志位l P(PSW.o) 奇偶检验标志位每条指令执行完后,该位始终跟踪指示累加器A中“l”的个数:如结果A中有奇数个“l”,则置P=1,否则P=0常用于校验串行通讯中的数据传送是否出错 (4) 栈指针SP(81H) l 8051同一般微处理器一样,设有堆栈在片内RAM中专门开辟出来一个区域,数据的存取是以“后进先出”的结构方式处理的这种数据结构方式对于处理中断、调用子程序都非常方便l堆栈指针SP为8位特殊功能寄存器,SP的内容即堆栈指针可指向8051片内00H~7FH RAM的任何单元l实际堆栈区只能在30H~7FH之间l系统复位后,SP初始化为07H,即指向07H的RAM单元 l8051的堆栈结构属于向上生长型的堆栈l在使用堆栈之前,先给SP赋值,以规定堆栈的起始位置,称为栈底l当数据压入堆栈后,SP自动加1,即RAM地址单元加1以指出当前栈顶位置。

      (5) 数据指针DPTR(83H,82H) lDPTR是一个16位的特殊功能寄存器,其高位字节寄存器用DPH表示(地址83H),低位字节寄存器用DPL表示(地址82H)lDPTR既可以作为一个16位寄存器来处理,也可以作为两个独立的8位寄存器DPH和DPL使用 lDPTR主要用以存放16位地址,以便对64K片外RAM作间接寻址 (6) I(6) I//OO端口端口P0—P3(80HP0—P3(80H,,90H90H,,A0HA0H,,B0H)B0H) l P0—P3为四个8位特殊功能寄存器,分别是四个并行I/O端口的锁存器它们都有字节地址,每一个口锁存器还有位地址,所以每一条I/O线独立地用作输入或输出时,数据可以锁存;作输入时,数据可以缓冲l 当I/O端口某一位用于输入信号时,对应的锁存器位须先置“1”。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.