- 1、本文档共133页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机原理及实用技术 第3章SPCE061指令系统
功能:Rs^IM16→Rd 说明:将Rs的数据与16位立即数进行逻辑异或操作,结果送Rd寄存器。 例如,假设开始时的标志位为N=0,Z=1,S=0,C=1。 R1=0x0F00 //R1的初值为0x0F00,Z=0,N=0 R1^=0x0FFF //R1的值变为0x00FF,Z=0,N=0 2. 直接寻址 格式1:Rd^=[A6]或Rd=Rd^[A6] 功能:Rd ^ [A6] →Rd 说明:将Rd 和A6 指定存储单元的数据进行逻辑异或操作,结果送Rd 寄存器。 格式2:Rd=Rs^[A16] 功能:Rs^[A16] →Rd 说明:将Rs的数据和A16指定存储单元的数据进行逻辑异或操作,结果送Rd寄存器。 例如,假设开始时的标志位为N=0,Z=1,S=0,C=1。 R1=0x0F00 //R1的初值为0x0F00,Z=0,N=0 R2=0x0FF0 [0x0010]=R2 R1^=[0x0010] //R1的值变为0x00F0,Z=0,N=0 3. 寄存器寻址 格式:Rd ^= Rs 功能:Rd ^ Rs→Rd 说明:将Rd 和Rs 的数据进行逻辑异或操作,结果送Rd 寄存器。 例如,假设开始时的标志位为N=0,Z=1,S=0,C=1。 R1=0x0E01 //R1的初值为0x0E01,Z=0,N=0 R2=0x0FF1 //R2的初值为0x0FF1,Z=0,N=0 R1^=R2 //R1的值变为0x01F0,Z=0,N=0 4. 寄存器间接寻址 格式1:Rd^= [Rs] 功能:Rd^[Rs]→Rd 说明:将Rd的数据与Rs指定的存储单元的数据进行逻辑异或操作,结果送Rd寄存器。 格式2:Rd^= [Rs++] 功能:Rd^[Rs] →Rd,Rs + 1→Rs 说明:将Rd的数据与Rs指定的存储单元的数据进行逻辑异或操作,结果送Rd寄存器,并使Rs加1。 格式3:Rd^=[Rs--] 功能:Rd^[Rs]→Rd,Rs–1→Rs 说明:将Rd的数据与Rs 指定的存储单元中的数据进行逻辑异或操作,结果送Rd寄存器,并使Rs 减1。 格式4:Rd^=[++Rs] 功能:Rs+1→Rs , Rd^[Rs]→Rd 说明:首先使Rs 加1,然后Rd 的数据与Rs 指定的存储单元中的数据进行逻辑异或操作,结果送Rd 寄存器。 例如,假设开始时的标志位为N=0,Z=1,S=0,C=1。 R1=0x0000 //R1的初值为0x0000,Z=1,N=0 R2=0xFFFF //R2的初值为0xFFFF,N=1,Z=0 [0x0002]=R2 R2=0x0002 R1^=[R2] //R1的值变为0xFFFF, Z=0,N=1 3.4.4 测试指令 测试指令是将两个数进行逻辑与操作,不存储结果,只影响N和Z标志位。 1. 立即寻址 格式1:TEST Rd,IM6 说明:将Rd与IM6进行逻辑与操作,不存储结果,只影响N和Z标志位。 格式2:TEST Rd,IM16 说明:将Rd与IM16进行逻辑与操作,不存储结果,只影响N和Z标志位。 例如,假设初始时标志位分别为N=0,Z=1,S=0,C=1。 R1=0x0E01 //R1的初值为0x0E01,N=0,Z=0,S=0,C=1 TEST R1,0x0000 //测试R1和0x0000 相与的结 果,N=0,Z=1,S=0,C=1 JZ loop1 //测试结果为0,跳转到loop1 R2=0x0020 loop1: R1=0x0001 //标号 2. 直接寻址
文档评论(0)