单片机专用寄存器.ppt

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机专用寄存器

2.7 专用寄存器 2.7.1 专用寄存器的基本情况 1. 主要包括 累加寄存器A,辅助寄存器B、程序状态寄存器PSW、电源控制寄存器PCON 程序计数器PC、对栈指针SP、数据指针DPTR, P端口数据寄存器 中断相关的寄存器:IE,IP… 其它外设控制、工作方式、例如TMOD,SCON;时间常数寄存器TL0、TH0、……、数据缓冲寄存器SBUF…… 2. 地址空间与访问的寻址方式 (1)地址空间 专用寄存器位于内部RAM地址空间的高128字节位置(80H~0FFH), (2)寻址方式 只能使用直接寻址方式访问。 例如从P1口读入数据 MOV A,90H ; 90H是P1端口的地址。 (MOV A,P1) ; P1是P1端口的符号地址, 3. 许多寄存器具有位寻址操作功能。 例如A: ACC.0,ACC.1 端口寄存器P1:P1.0,P1.2 (地址能被8整除的专用寄存器,具有位寻址功能) 4.主要寄存器的地址表(1) 主要寄存器的地址表(2) 主要寄存器的地址表(3) 这些特殊功能寄存器中,凡是地址能被8整除的寄存器,都具有位寻址功能. 即寄存器中的每位都具有位地址,可以按位寻址操作。例如 例如P0: 地址为80H,能被8整除,它的每一位都可以进行位寻址, P0 :P0.0,P0.1……P0.7 寄存器A(ACC)的地址:0E0H,也能进行位寻址:ACC.0,ACC.1,…,ACC.7 11个主要的可位寻址寄存器的位地址如图所示。 2.7.2 专用寄存器介绍 只介绍51/52中的一些主要的专用寄存器,其它扩展型号还有很多扩展的专用寄存器,在使用实再查相关使用说明书。 1。程序计数器PC 是一个独立的16为寄存器,不占用内部SFR空间。 作用:存放下一条要执行的指令的地址。 每取出一条指令,它的内容都要自动进行修改,指向下一条要执行的指令。 不能直接访问PC。 2. 累加寄存器A (1)地址:0E0H; (2)作用:累加寄存器。 在运算中,大部分单操作数指令的操作数取自A;许多双操作数指令的一个操作数取自A;算术运算指令的结果保存在A。(或B,A) (3)符号:用符号A表示。 3。寄存器B (1)可寻址的寄存器,地址:0F0H,符号:B; (2)作用:辅助寄存器,乘法指令中,作为第二操作数,并存放结果高位字节;除法指令:除数,并存放结果的余数部分;其他情况,做一般寄存器使用。 (3)B寄存器的各位具有独立的位地址,可以进行位寻址访问操作。 4. 程序状态字PSW (1)地址:0D0H; PSW的各位具有独立的位地址,可以进行位寻址操作。 不同位具有不同的作用。 (2)结构 (3)PSW标志位介绍 CY(PSW.7):进位标志位。在进行加法(或减法)运算时,若运算结果最高位有进位或借位,则CY自动置“1”,否则CY置“0”。 在进行布尔操作运算时,CY(简称C)作为布尔处理器 AC:辅助进位标志位。当进行加法或减法时,若低4位向高4位有进位(或借位)时,AC被置“1”,否则AC被置“0”。在十进制调整指令中AC还作为十进制调整的判别位。 F0:用户标志位。用户可用软件对F0位置“1”或清“0”,也可以用软件测试F0 以决定程序的流向 PSW标志位介绍(续) OV:溢出标志位,当运算结果溢出时OV为“1”,否则为“0”。 PSW.1:未定义位。 P(PSW.0):奇偶标志位。当累加器A中“1”的个数为奇数时,P置“1”,否则P置“0”。 RS1、RS0:工作寄存器区选择位,软件设置。 该二位可以为寻址操作,利用软件置“1”或清“0”,例如SETB RS0, CLR RS1。 设置1区 5. 堆栈指针SP (1)堆栈:它是一个特殊的存储空间,在该存储空间,可以使用特殊的指令按特殊的规则进行访问。这个规则就是后进先出原则。 一般有两条指令: 数据按特殊规则存入该空间——压栈。 从该空间按特殊的规则取出——弹出。 数据在该空间的存放位置,由一个寄存器指示——堆栈指针SP。 (6)由于0~1FH是4个工作寄存器区,20H~2FH是可以为寻址的区域,一般应该将堆栈设为30H以后。 通常将堆栈设置在程序工作用缓存空间后,也就是内部RAM的高地址空间。例如30H~0BFH为数据缓存空间,则对站可以设定在0C0H~0FFH。 (7)直接给SP赋值,设定堆栈的位置,例如 MOV SP ,#0CFH, 设定堆栈从0D0H开始(第一个压入的数据存放在(SP)+1=0CFH+1=0D0H)。 6. 数据指针DPTR 16位的寄存器。由两个8位寄存器构成。高8位DPH,低8

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档