2.2数据传送类和算逻运算类

2.2数据传送类和算逻运算类

ID:42114692

大小:2.26 MB

页数:47页

时间:2019-09-08

2.2数据传送类和算逻运算类_第1页
2.2数据传送类和算逻运算类_第2页
2.2数据传送类和算逻运算类_第3页
2.2数据传送类和算逻运算类_第4页
2.2数据传送类和算逻运算类_第5页
资源描述:

《2.2数据传送类和算逻运算类》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SunplusSPCE061A微控制器数据传送类和算逻运算类1SPCE061A的指令总共只有41种,可分为四类:数据传送类算逻运算类程序转移控制类其它控制类2指令分类3数据传送类指令立即数寻址、寄存器寻址、直接地址寻址变址寻址、寄存器间接寻址压栈出栈4立即数寻址、寄存器寻址、直接地址寻址这组指令会执行Rd=X的数据传送操作,即将源操作数X或源操作单元X中的字数据存入目标寄存器Rd。依据寻址方式的不同,X将有不同的意义。5应用举例R1=0x28     //IM6 R2=0x2400    //IM16R3=[BP+0x08] //[BP+IM6

2、]R4=[0x30]   //A6 R5=[0x2480]  //A16 SR=R2     //R立即数寻址【影响标志】N,Z 【格式】Rd=IM16//16位的立即数送入目标寄存器RdRd=IM6//6位的立即数扩展成16位后送入目标寄存器Rd 【举例】设传送前N=0,Z=1,S=0,C=1 R1=0xF001//R1的值变为0xF001,N=1,Z=0,S=0,C=1寄存器寻址【影响标志】N,Z 【格式】Rd=Rs//将源寄存器Rs的数据送给目标寄存器Rd 【举例】设传送前N=0,Z=1,S=0,C=1 R2=0xF001//R2的值为

3、0xF001,N=1,Z=0,S=0,C=1 R1=R2//R1的值变为0xF001,N=1,Z=0,S=0,C=1直接地址寻址【影响标志】N,Z 【格式】[A6]=Rs//将源寄存器Rs中的数据送给以A6为地址的存储单元[A16]=Rs//把Rs数据存储到A16指出的存储单元Rd=[A6]//把A6指定的存储单元数据读到Rd寄存器Rd=[A16]//把A16指定的存储单元数据读到Rd寄存器 【举例】设传送前N=1,Z=1,S=0,C=1 R1=0x0011//R1的值为0x0011,N=0,Z=0,S=0,C=1 [0x0010]=R1//[

4、0x0010]单元的值变为0x00118变址寻址、寄存器间接寻址这组指令会执行X=Rd的数据传送操作,即将寄存器Rd的内容存入目标操作单元X。依据寻址方式的不同,X将有不同的意义;9[BP+0x08]=R3//写入[BP+IM6] [0x30]=R4//写入[A6][0x2480]=R5//写入[A16] [R2++]=R1//R1的值存储于R2,且存储单元R2=R2+1应用举例10压栈PUSHRx,Ryto[Rs]PUSHRxto[Rs]将n(n=1~7,SIZE)个序列寄存器Rx~Ry(Rx~Ry≠SP)中的字数据压入Rs指出地址偏移量初值

5、的存储器中,且总是将序号高的寄存器内容先压入11应用举例12出栈POPRx,Ryfrom[Rs]POPRxfrom[Rs]将一组由Rs指出地址偏移量初值的存储器中的字数据拷贝到n(n=1~7,SIZE)个序列寄存器Rx~Ry(Rx~Ry≠SP)中,且总是先拷贝数据到序号低的寄存器内。弹出指令亦可用于从子程序返回或从中断服务子程序返回时用,即它等效于指令RETF或RETI。(当Rx~Ry=SR~PC时,POP指令的操等效于指令RETF或RETI)13应用举例14算逻运算类指令顾名思义这类指令就使用来完成一些算术逻辑运算的,基本是执行Rd=X#Y的

6、算术逻辑运算。依据寻址方式的不同,X、Y将有不同的意义。15加法运算这组指令会执行Rd=X+Y的算术运算,即将源操作数X、Y或源操作单元X、Y中的字数据进行不带进位的加法运算,结果存入Rd寄存器。16应用举例R1+=0x28     //IM6 R2=R1+0x2400  //IM16R3+=[BP+0x08] //[BP+IM6]R4+=[0x30]   //[A6] BP=R4+[0x2480] //[A16] SR+=R2     //R17带进位的加法运算这组指令会执行Rd=X+Y+C的算术运算,即将源操作数X、Y或源操作单元X、Y中的

7、字数据进行带进位的加法运算,结果存入Rd寄存器。18应用举例R1+=0x28,Carry   //R1=R1+IM6+进位C R2=R1+0x2400,Carry //R2=R1+IM16+进位C R3+=[BP+0x08],Carry //R3=R3+[BP+IM6]+进位C R4+=[0x30]//R4=R4+[A6]+进位CBP=R4+[0x2480],Carry//BP=R4+[A16]+进位C SR+=R2,Carry     //SR=SR+R2+进位CPC+=D:[BP++],Carry //写入PC19减法运算这组指令会执行Rd

8、=X-Y的算术运算,即将源操作数X、Y或源操作单元X、Y中的字数据进行不带借位的减法运算,结果存入Rd寄存器。20应用举例R1-=0x28     /

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。