上海工程技术大学单片微机应用技术第三章 第七节.pdfVIP

上海工程技术大学单片微机应用技术第三章 第七节.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.7 位操作指令 位操作又称布尔操作,由布尔处理器实现。布尔处理器实际上是一位的微 处理机,它以进位标志CY作为位累加器,以内部RAM的20H至2FH单 元及部分特殊功能寄存器为位存储器,以P0、P1、P2、P3为位I/O。 这一组指令的操作对象是内部RAM中的位寻址区,即20H~2FH 中连续的 128位(位地址00H~7FH),以及特殊功能寄存器SFR中可进行位寻 址的各位。 在指令中,位地址的表示方法主要有以下4 种(均以程序状态字寄存器 PSW的第五位F0 标志为例说明): (1) 直接位地址表示方式:如D5H; (2) 点操作符表示(说明是什么寄存器的什么位)方式:如PSW.5,说明 是PSW的第五位; (3) 位名称表示方法:如F0 ; (4) 用户定义名表示方式:如用户定义用FLG这一名称(位符号地址)来 代替F0。 3.7 位操作指令 对位地址空间具有丰富的位操作指令,包括布尔传送指令、布 尔状态控制指令、位逻辑操作指令及位条件转移指令。 位操作指令一般不影响标志位。助记符6种:MOV、CLR、 CPL、SETB、ANL 、ORL。 与字节操作指令中累加器ACC用字符“A”表示类似的是,在 位操作指令中,位累加器要用字符“C”表示(注:在位操 作指令中CY与具体的直接位地址D7H对应)。 3.7.1 位变量传送指令 位变量传送指令有如下互逆的两条双字节单周期指令, 可实现 进位位CY与某直接寻址位bit间内容的传送。 MOV C,bit ;(CY)← (bit) MOV bit,C ;(bit)← (CY) 3.7 位操作指令 功能:将源操作数(位地址或布尔累加器)送到目的操作数 (布尔累加器或位地址)中去。其中一个操作数必须为进 位标志CY,另一个操作数可以是任何可直接寻址位。bit为 直接寻址位,C为进位标志CY的简写。第1条指令是把bit 中的一位二进制数送位累加器CY中,不影响其余标志。第 2条指令是将C中的内容传送给指定位。 由于两个寻址位之间没有直接的传送指令,常用上述两条指 令并通过C作为中间媒介来进行寻址位间的传送。 例 若(CY)=1,(P3)=1100 0101B,(P1)=0011 0101B。执行以 下指令: MOV P1.3,C MOV C,P3.3 MOV P1.2,C 结果为:(CY)=0,P3的内容未变,P1的内容变为0011 1001B。 3.7 位操作指令 例 将内部RAM中20H 单元的第7位(位地址为07H)的内容,送入P1 口 的P1.0中的程序如下: MOV C,07H ;(CY )← (07H) MOV P1.0,C ;(P1.0)← (CY) 当(20H )=A3H,(P1)时,执行上述指令后修改了P1 口第0 位,即(CY)=1,(P1)。 例 编写程序将20H.0的内容传送到22H.0。 解:程序如下: MOV C,20H.0 MOV 22H.0,C 也可写成: MOV C,00H ;(CY)←20H.0 MOV 10H,C ;22H.0← (CY) 值得注意的是:后两条指令中的00H和10H分别为20H.0和22H.0位地址, 不是字节地址。 3.7 位操作指令 3.7.2 位变量修改指令 位变量修改指令共有6条,分别是对位进行清0、置1和取反指令,不影响其它标志。 CLR C ;(CY)←0 CLR bit ;(bit)←0 SETB C ;(CY)←1 SETB bit ;(bit)←1 CPL C ;(CY)← (/CY ) CPL bit ;(bit)← (/bit) 功能:第1、2两条指令可以实现位累加器内容和位地址内容的清0。第3、4两条指 令

您可能关注的文档

文档评论(0)

ormition + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档