DSP的指令系统_第1页
DSP的指令系统_第2页
DSP的指令系统_第3页
DSP的指令系统_第4页
DSP的指令系统_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第三章第三章TMS320C55XTMS320C55X的指令系统的指令系统uTMS320TMS320的汇编程序包含的汇编程序包含 汇编伪指令(汇编伪指令(assembler directivesassembler directives)、)、 汇编语言指令(汇编语言指令(assembly language assembly language instructionsinstructions) 宏指令(宏指令(macro directivesmacro directives) 注释(注释(commentscomments)汇编语言源文件的书写格式汇编语言源文件的书写格式 标号标号 : 助记符助记

2、符 操作数操作数 ; 注释注释例,例, SYM1 .set 2 ;SYM1 = 2 Begin: MOV #SYM1, AR1 ;AR1=2 .data .byte 016h ; 初始化初始化(016h)汇编语言源文件格式汇编语言源文件格式标号、空格标号、空格*,;,;字母、数字、字母、数字、_、$常数、符号、表常数、符号、表达式,操作数之达式,操作数之间用间用“,”分开分开 3.1 3.1 寻址方式寻址方式3.1.1 3.1.1 绝对寻址模式绝对寻址模式3.1.2 3.1.2 直接寻址模式直接寻址模式3.1.3 3.1.3 间接寻址模式间接寻址模式 3.2 C55X3.2 C55X的指令系统

3、的指令系统TMS320C55XTMS320C55X的指令系统的指令系统1. k161. k16绝对寻址绝对寻址u*abs16(#k16)k16是一个是一个16位无符号常数位无符号常数地址的高地址的高7位有位有DPH 寄存器提供寄存器提供例:例: MOV #01H, DPH ; DPH=1 MOV *abs16(#2000h), T0 ;将(将(01 2000h)T0 MOV *abs16(#200Ah),AC1 ;将(将(01 200Ah)AC13.1.1 绝对寻址绝对寻址3.1.1 绝对寻址绝对寻址 2. k23绝对寻址绝对寻址u*(#k23)其中:其中:k23是一个无符号的是一个无符号的2

4、3位常数位常数例:例: MOV * (#012000h),T0 ;将(将( 012000h )T0 MOV * (#01200Ah),AC1 ;将(将( 01200Ah )AC13.1.1 绝对寻址绝对寻址 3. I/O 3. I/O绝对寻址绝对寻址uport(#k16)其中,其中,k16是一个是一个16位无符号立即数位无符号立即数例:设例:设A/D的端口地址为的端口地址为8F07HMOV port(#8F07h), T2 ;3.1.2 直接寻址直接寻址v ST1_55 ST1_55中的中的CPLCPL位决定使用位决定使用DPDP还是还是SPSPvCPL=0 CPL=0 数据页指针数据页指针D

5、PDPvCPL=1 CPL=1 堆栈指针堆栈指针SPSPDPHDP+Doffset数据空间数据空间000 0000.000 00000000 0000 0000 0000.1111 1111 1111 1111主数据页主数据页0: 00 0000h00 FFFFh000 0001.000 00010000 0000 0000 0000.1111 1111 1111 1111主数据页主数据页1: 01 0000h01 FFFFh . . .111 1111.111 11110000 0000 0000 0000.1111 1111 1111 1111主数据页主数据页127: 7F 0000h7F

6、 FFFFh1. DP1. DP寻址寻址lCPU连接连接DPH和和DP成为一个扩展数据页指针成为一个扩展数据页指针XDPu可以使用两条指令独立地装入可以使用两条指令独立地装入DPH和和DPu也可以使用一条指令装入也可以使用一条指令装入XDPl计算偏移地址的方法计算偏移地址的方法: 例例1:访问数据存储空间:访问数据存储空间 BCLR CPL .CPL_OFF ; ;使使CPL=0CPL=0 AMOV #012000H,XDP ; ;指向数据页指向数据页1 1,DP=0DP=0 .dp #2000h ;告诉汇编器;告诉汇编器DP=2000hDP=2000h MOV 1H,T0 ;将数据页;将数据

7、页1 1,地址,地址2001H2001H中的数据给中的数据给T0T0 MOV BH,AC1 ;将数据页;将数据页1,地址,地址200BH200BH中的数据给中的数据给AC1AC11. DP直接寻址直接寻址例例2:访问存储器映射寄存器:访问存储器映射寄存器 MOV mmap(AC0L),AR2 ;CPU从从00 0008h处读取数据装入处读取数据装入AR2DPH=DP=0, CPL=0l23位地址的形成位地址的形成高高7位由位由SPH提供提供低低16位为位为SP和一个和一个7 位的偏移地址(位的偏移地址(offset)的和)的和lSPH和和SP合并后形成扩展数据堆栈指针(合并后形成扩展数据堆栈指

8、针(XSP)可单独向可单独向SPH和和SP赋值,也可使用一条指令向赋值,也可使用一条指令向XSP赋值赋值 2. SP寻址寻址2. SP寻址寻址例:例:BSET CPLBSET CPL .CPL_ON .CPL_ON ; ;使使CPL=1CPL=1MOV #01H,SPHMOV #01H,SPH ;SPH=1;SPH=1MOV #2000H,SP MOV #2000H,SP ;SP=2000H;SP=2000H MOV 2,T0MOV 2,T0 ; ;将将(012002H)(012002H)T0T0MOV 12,AC1MOV 12,AC1 ; ;将将(01200CH)(01200CH) AC1A

9、C13. 3. 寄存器位直接寻址寄存器位直接寻址u操作数中的偏移操作数中的偏移bitoffsetbitoffset是相对于寄存器最低是相对于寄存器最低位来说的位来说的u仅有寄存器位测试仅有寄存器位测试/ /设置设置/ /清零清零/ /求补等指令支持求补等指令支持这种寻址方式这种寻址方式u仅能访问下列寄存器的各位:仅能访问下列寄存器的各位:AC0AC0AC3AC3,AR0AR0AR7AR7,T0T0T3T3BSET 0,AC3 ; 将将AC3的位的位0置为置为1例:例:l9 9位的外设数据页寄存器(位的外设数据页寄存器(PDPPDP)选取选取512512个外设数据页(个外设数据页(0 05115

10、11)中的一页,每)中的一页,每页有页有128128个字,由指令中的个字,由指令中的7 7 位偏移指定位偏移指定l使用时必须用使用时必须用port( )port( )限定词限定词指定要访问的是指定要访问的是I/OI/O空间,而不是数据存储单元空间,而不是数据存储单元port()port()限定词的括号内是限定词的括号内是7 7 位的偏移(位的偏移(PoffsetPoffset)例:设例:设A/D的端口地址为的端口地址为8F07HMOV #11EH,PDP ;设置数据页为;设置数据页为11EHMOV port(7),T2 ;将偏移地址为;将偏移地址为7的数据给的数据给T24. PDP4. PDP

11、直接寻址直接寻址3.1.3 间接寻址间接寻址v由由8个辅助寄存器(个辅助寄存器(AR0-AR7),以及一个),以及一个系数寄存器系数寄存器CDP来实现来实现1. AR间接寻址间接寻址 使用辅助寄存器使用辅助寄存器ARn(n=07)指向数据指向数据 CPU使用使用ARn产生地址的方式取决于访问的数产生地址的方式取决于访问的数据类型据类型表表3-7 AR间接寻址方式时间接寻址方式时AR的内容的内容寻址空间寻址空间AR内容内容数据空间(存储空间或寄存数据空间(存储空间或寄存器)器)23位地址的低位地址的低16位,而高位,而高7位由位由ARnH提供提供寄存器位或双位寄存器位或双位位的相对位置位的相对位

12、置I/O空间空间一个一个16位的位的I/O地址地址AR间接寻址间接寻址DSP模式模式序序 号号操操 作作 数数地地 址址 修修 改改1*ARnARn未修改未修改2*ARn +在生成地址之后增加:在生成地址之后增加:16位操作,位操作,ARn =ARn + 1 32位操作,位操作,ARn =ARn + 2 3*ARn 在生成地址之后减少:在生成地址之后减少:16位操作,位操作,ARn =ARn 1 32位操作,位操作,ARn =Arn 2 4* + ARn在生成地址之前增加:在生成地址之前增加:16位操作,位操作,ARn =ARn + 1 32位操作,位操作,ARn =ARn + 2 5* AR

13、n在生成地址之前减少:在生成地址之前减少:16位操作,位操作,ARn =ARn 1 32位操作,位操作,ARn =ARn 2 6*(ARn + T0/AR0)在生成地址之后,在生成地址之后,ARn 加上加上T0或或ARn 中中16位带符位带符号的常数:号的常数:如果如果C54CM = 0,ARn =ARn + T0 如果如果C54CM = 1,ARn =ARn + AR0 表表3-9 DSP模式下的模式下的AR间接寻址模式(间接寻址模式(2)操作数操作数指针修改方式指针修改方式访问数据类型访问数据类型*ARn(T0/AR0)ARn作为基地址不变,作为基地址不变,T0或或AR0的值作为的值作为偏

14、移地址偏移地址Smem、Lmem、Baddr*(ARn+T0B/AR0B)地址产生后,指针的值变化:地址产生后,指针的值变化:如果如果C54CM=0,有,有ARn=ARn+T0;如果如果C54CM=1,有,有ARn=ARn+AR0;上述加法按位倒序进位规律进行相加上述加法按位倒序进位规律进行相加Smem、Lmem、Baddr*(ARn-T0B/AR0B)地址产生后,指针的值变化:地址产生后,指针的值变化:如果如果C54CM=0,有,有ARn=ARn-T0;如果如果C54CM=1,有,有ARn=ARn-AR0;上述加法按位倒序借位规律进行相加上述加法按位倒序借位规律进行相加Smem、Lmem、B

15、addr*(ARn+T1)地址产生后,指针的值为地址产生后,指针的值为ARn= ARn+T1Smem、Lmem、Baddr*(ARn-T1)地址产生后,指针的值为地址产生后,指针的值为ARn= ARn-T1Smem、Lmem、Baddr*ARn(T1)ARn作为基地址不变作为基地址不变,T1值作为偏移地址值作为偏移地址Smem、Lmem、Baddr*ARn(#K16)ARn作为基地址不变作为基地址不变,K16值作为偏移地址值作为偏移地址Smem、Lmem、Baddr*+ARn(#K16)地址产生前,指针的值变为地址产生前,指针的值变为ARn=ARn+K16Smem、Lmem、Baddr寻址方式

16、间接寻址寻址方式间接寻址u ADD ADD * *ARnARn,#8#8,ACxACx ;将当前辅助寄;将当前辅助寄存器所指的地址里的数据,左移存器所指的地址里的数据,左移8-bit8-bit后后加给加给ACxACxuADD ADD * *ARn+ARn+,#8#8,ACxACx ;数据左移;数据左移8bit8bit,加,加给给ACxACx后,当前辅助寄存器加后,当前辅助寄存器加1 1uADD ADD * *ARn(T0/T1/AR0)ARn(T0/T1/AR0),#8#8,ACxACx ;以;以ARnARn为基为基址不变,加上以址不变,加上以T0T0、T1T1或或AR0AR0的值(偏移地址)

17、作的值(偏移地址)作为地址,寻找对应数据,左移为地址,寻找对应数据,左移8bit8bit后与后与ACxACx的值相的值相加,结果给加,结果给ACxACx 。寻址方式间接寻址寻址方式间接寻址u ADD ADD * *(ARn+T0/T1/AR0)(ARn+T0/T1/AR0),#8#8,ACxACx ;执;执行加法后,将行加法后,将T0T0或或AR0AR0的值加给当前辅助寄的值加给当前辅助寄存器存器u ADD ADD * *(ARn+T0B/AR0B)(ARn+T0B/AR0B),#8#8,ACxACx ;执行加法后,将执行加法后,将T0T0或或AR0AR0的值加给当前辅助的值加给当前辅助寄存器

18、寄存器, ,但加法按但加法按位倒序位倒序进位规律相加进位规律相加u ADD ADD * *ARn(#8ARn(#8),),#8#8,ACxACx ; ARnARn基址基址不变,加上以立即数不变,加上以立即数8 8(偏移地址)作为地(偏移地址)作为地址,对应地址里的数据左移址,对应地址里的数据左移8bit8bit后加给后加给ACxACx正向进位与反向进位正向进位与反向进位 1 0 0 1 0 0 + 1 0 0 + 1 0 0 1 0 0 0 0 1 0 AR0 = 100, AR1 = 000 按按AR1寻址后,将寻址后,将AR0加给加给AR1,反向进位,反向进位原序原序 原址原址 位倒序后地

19、址位倒序后地址 序号序号0 000 000 01 001 100 42 010 010 23 011 110 6 4 100 001 1 5 101 101 56 110 011 37 111 111 72. 双双AR间接寻址方式间接寻址方式u执行一个指令,同时访问两个执行一个指令,同时访问两个16位数据存储器位数据存储器 ADD Xmem,Ymem,ACxu并行执行两个指令,每个指令访问一个数据存并行执行两个指令,每个指令访问一个数据存储器储器 MOV Smem,dstAND Smem,src,dst3.CDP3.CDP间接寻址间接寻址4.4.系数间接寻址系数间接寻址(CDP(CDP寄存器)

20、寄存器)u MAC *AR1+,*CDP,AC0 :MAC *AR2+,*CDP,AC1;AC0=AC0+(AR1)*(CDP), AR1=AR1+1; AC1=AC1+(AR2)*(CDP), AR2=AR2+1例:例: TMS320C55x指令集按操作类型可分为以指令集按操作类型可分为以下下6种:种: 算术运算指令算术运算指令 位操作指令位操作指令 扩展辅助寄存器操作指令扩展辅助寄存器操作指令 逻辑运算指令逻辑运算指令 移动指令移动指令 程序控制指令程序控制指令 一、算术运算指令一、算术运算指令 用于完成加减乘除等运算,按照功能可分成以下几类:用于完成加减乘除等运算,按照功能可分成以下几类

21、: 加法指令加法指令 减法指令:减法指令:减法,条件减法,条件加减法,条件减法,条件加/ /减减 乘法指令乘法指令:乘法,乘加,乘减,双乘加乘法,乘加,乘减,双乘加/ /减减 双双1616比特算术指令比特算术指令 比较运算指令:比较运算指令:比较并求极值比较并求极值, ,最大最大/ /最小值最小值, ,存储单元比较存储单元比较, ,寄存寄存器比较器比较 移位指令移位指令:条件移位、带符号的移位条件移位、带符号的移位。 寄存器修改寄存器修改:辅助寄存器修改、堆栈指针辅助寄存器修改、堆栈指针SPSP修改修改 隐含的并行指令隐含的并行指令 专用指令专用指令:绝对值、归一化、有限冲激响应滤波绝对值、归

22、一化、有限冲激响应滤波FIRFIR、最小均方、最小均方LMSLMS等等1 1、加法指令、加法指令 助记符指令助记符指令代代 数数 指指 令令说说 明明ADD src, dstdst = dst + src两个寄存器的内容相加两个寄存器的内容相加ADD k4,dstdst = dst + k44位无符号立即数加到寄存器位无符号立即数加到寄存器ADD K16,src,dstdst = src + K1616位有符号立即数和源寄存器的内位有符号立即数和源寄存器的内容相加容相加ADD Smem,src,dst dst = src + Smem 操作数和源寄存器的内容相加操作数和源寄存器的内容相加 AD

23、D ACxTx, ACy ACy = ACy + (ACxTx) 累加器累加器ACx根据根据Tx中的内容移位后,中的内容移位后,再和累加器再和累加器ACy相加相加 ADD ACx#SHIFTW, ACy ACy = ACy + (ACx#SHIFTW) 累加器累加器ACx移位后与累加器移位后与累加器ACy相相加加 ADD uns( Smem),CARRY,ACx,ADD uns( Smem)#SHIFTW,ADD K16#16,ACx,ACyACy = ACx + (K16#16)16位有符号立即数左移位有符号立即数左移16位后加到累加器位后加到累加器ADD K16#SHFT,ACx,ACyA

24、Cy = ACx + (K16#SHFT)16位有符号立即数移位位有符号立即数移位后加到累加器后加到累加器ADD SmemTx,ACx,ACyACy = ACx + (SmemTx)操作数根据操作数根据Tx中的内容中的内容移位后,再和累加器移位后,再和累加器ACx相加相加ADD Smem#16,ACx,ACyACy = ACx + (Smem#16)操作数左移操作数左移16位后,再位后,再和累加器和累加器ACx相加相加ADD uns( )Smem,CARRY,ACx,ACyACy = ACx + uns(Smem) + CARRY操作数带进位加到累加操作数带进位加到累加器器ADD uns(Sm

25、em),ACx,ACyACy = ACx + uns(Smem) 操作数加到累加器操作数加到累加器ADD uns(Smem)#SHIFTW,ACx,ACyACy = ACx + (uns(Smem) #SHIFTW)操作数移位后加到累加操作数移位后加到累加器器ADD dbl(Lmem),ACx,ACyACy = ACx + dbl(Lmem)32位操作数加到累加器位操作数加到累加器ADD Xmem, Ymem, ACx ACx = (Xmem#16) + (Ymem#16)两操作数均左移两操作数均左移16位后位后加到累加器加到累加器ADD K16, SmemSmem = Smem + K16操

26、作数和操作数和16位有符号立位有符号立即数相加即数相加举例举例ADD *AR3+, T0, T1执行前执行前AR3T0T1CARRY0302330000数据存储器EF000302执行后执行后AR3T0T1CARRY0303330022001数据存储器EF000302;AR3间接寻址得到的内容与间接寻址得到的内容与T0的内的内 容相加,结果装入容相加,结果装入T1,并将,并将AR3增增1ADD *AR1T0,AC1,AC0执行前执行前AC0AC1T0AR1SXMDM40ACOV0CARRY00 0000 000000 2300 0000000C0200数据存储器数据存储器030002000000

27、执行后执行后AC0AC1T0AR1SXMDM40ACOV0CARRY00 2330 000000 2300 0000000C0200030002000001数据存储器数据存储器;将由将由AR1寻址得到的内容左移寻址得到的内容左移T0位与位与AC1相加,结果装入相加,结果装入AC0 Test ADD instructionTest ADD instruction BSET CARRY BSET CARRY AMOV #010000h AMOV #010000h,XAR3XAR3 MOV #0001h MOV #0001h,AR3 AR3 MOV #00E2h MOV #00E2h,* * AR3

28、 AR3 MOV #0005h MOV #0005h,AC1AC1 ADD uns( ADD uns(* *AR3)AR3),CARRYCARRY,AC1AC1,AC0 AC0 ;AC0=(AC0=(* *AR3)+CARRY+AC1=00000000E8hAR3)+CARRY+AC1=00000000E8h ADD ADD * *(#010001h)16(#010001h)16,AC1AC1,AC0 AC0 ; AC0=(00E216)+AC1=0000E20005h; AC0=(00E216)+AC1=0000E20005h2 2、减法指令、减法指令 常规减法常规减法:在在D D单元或单元

29、或A A单元执行减法操作单元执行减法操作。 条件减法条件减法:在在D D单元中执行,先执行减法,然后根据结果进行单元中执行,先执行减法,然后根据结果进行移位移位。 条件加条件加/ /减减:在在D D单元根据单元根据TC1TC1或或TC2TC2的状态执行加的状态执行加/ /减运算。减运算。(1 1)语法;()语法;(2 2)操作数;()操作数;(3 3)状态位)状态位例例1 1( (常规减法常规减法) ): BCLR CARRY BCLR CARRY ;BORROW=1BORROW=1 AMOV #010000h AMOV #010000h,XAR1XAR1 MOV #0300h MOV #03

30、00h,AR1AR1 MOV #0200h MOV #0200h,* * AR1 AR1 MOV #0300h MOV #0300h,AC0AC0 SUB SUB * *AR1AR1,BORROWBORROW,AC0AC0,AC1AC1 ; AC1AC1AC0AC0( (* *AR1)AR1)BORROW=00FFhBORROW=00FFh例例2(2(条件减法条件减法) )SUBC *AR1,AC0,AC1如果如果(AC0-(AC0-(* *AR1)0AR1)0,AC1=AC0-( (AC1=AC0-( (* *AR1)AR1)15)#1+115)#1+1如果如果(AC0-(AC0-(* *A

31、R1)#15)0AR1)#15)0,AC1= AC0#1AC1= AC0#1减法指令,有借减法指令,有借位时,位时,CARRYCARRY清清零。没有借位时,零。没有借位时,CARRYCARRY置置1 1。SUBC Smem, ACx, ACy ;if (ACx (Smem = 0) ;ACy = (ACx (Smem #15) #1 + 1 ;else ACy = ACx #1 举例举例SUBC SUBC * *AR1, AC0, AC1 AR1, AC0, AC1 ; ;如果如果 (AC0 (AC0 (* *AR1)= 0AR1)= 0 ; ;则则AC1 = (AC0 (AC1 = (AC0

32、 (* *AR1) #15) #1 + AR1) #15) #1 + 1 1 ; ;否则否则AC1 = AC0 #1AC1 = AC0 #1执行前执行前AC0AC1AR1SXMDACOV0CARRY23 4300 000000 0000 00000300数据存储器数据存储器02000300000执行后执行后AC0AC1AR1SXMDACOV0CARRY23 4300 000046 8400 00010300数据存储器数据存储器020003000113 3、乘法指令、乘法指令 v常规乘法常规乘法(MPY)(MPY):在:在D D单元的一个单元的一个MACMAC中执行乘法运算。中执行乘法运算。 乘

33、加和乘减运算乘加和乘减运算(MAC/MAS)(MAC/MAS):在:在D D单元的一个单元的一个MACMAC中执行乘中执行乘法,然后执行加法或减法运算。法,然后执行加法或减法运算。 双乘加双乘加/ /减减(Dual-MAC/S):(Dual-MAC/S): 利用利用D D单元的两个单元的两个MACMAC同时执行两个同时执行两个乘法或乘加乘法或乘加/ /乘减运算。乘减运算。例例1( 1(常规乘法常规乘法) ) MPY AC0 MPY AC0,AC1AC1说明:说明:AC1=AC1=AC0(3216)AC0(3216)AC1(3216)AC1(3216)执行前执行前AC0AC1M40FRCTACO

34、V102 6000 340000 C000 0000001执行后执行后AC0AC1M40FRCTACOV102 6000 340000 4800 0000001例例2(2(乘加运算乘加运算) ) AMOV #010000h,XAR1AMOV #010000h,XAR1 AMOV #010000h,XCDP AMOV #010000h,XCDP MOV #0300h,AR1 MOV #0300h,AR1 MOV #0200h,CDP MOV #0200h,CDP MOV #0 xFE00, MOV #0 xFE00,* *AR1AR1 MOV #0400h, MOV #0400h,* *CDPC

35、DP MACMR MACMR * *AR1,AR1,* *CDP,AC2CDP,AC2说明:说明:AC2=AC2+(AC2=AC2+(* *AR1)AR1)* *( (* *CDP)CDP)执行前执行前AC2AR1CDPACOV200 EC00 000003000200004002000数据存储器数据存储器FE000300执行后执行后AC2AR1CDPACOV200 EC40 000003000200004002001FE000300二、比特操作指令二、比特操作指令 比特域的比较指令比特域的比较指令 比特域的抽取与扩展指令比特域的抽取与扩展指令 存储器比特位操作指令存储器比特位操作指令 寄存器

36、比特位操作指令寄存器比特位操作指令 状态比特的清零与置位状态比特的清零与置位 状态比特位的清零与置位状态比特位的清零与置位 对对C55xC55x的状态寄存器的状态寄存器ST0ST3ST0ST3的比特位进行清零的比特位进行清零/ /置位操作。置位操作。例例1 1:BCLR #5BCLR #5,ST1_55ST1_55 以以5 5作为比特位地址,对作为比特位地址,对ST1_55ST1_55中的比特位中的比特位5(C54CM)5(C54CM)进行清进行清零。零。例例2 2:BSET C54CMBSET C54CM ; ;对对ST1_55ST1_55中的状态位字段中的状态位字段C54CMC54CM置位

37、置位E060 ST1_55E040 ST1_550040 ST1_550060 ST1_55三、扩展辅助寄存器操作指令三、扩展辅助寄存器操作指令 对扩展辅助寄存器对扩展辅助寄存器XAR0XAR7XAR0XAR7、XSPXSP、XSSPXSSP和和XCDPXCDP进行修改进行修改操作。操作。例:例:MOV AC0MOV AC0,XAR1XAR1 XAR1=AC0(220)XAR1=AC0(220)FF 00A0 0040 AC070 0000XAR1FF 00A0 0040AC020 0040XAR1四、逻辑运算指令四、逻辑运算指令包括:按位与、按位或、按位异或、按位取反、比特计数、逻辑包括:按

38、位与、按位或、按位异或、按位取反、比特计数、逻辑 移位和旋转。移位和旋转。1 1、按位与、按位与/ /或或/ /异或异或例:例:OR AC0#4OR AC0#4,AC1AC1 AC1=AC1 OR (AC0#4) AC1=AC1 OR (AC0#4)7E 2355 4FC0 AC00F 3340 5678AC17E 2355 4FC0AC0EF F754 FE78AC12 2、按位取反、比特计数、逻辑移位和旋转、按位取反、比特计数、逻辑移位和旋转例例1 1: NOT AC0NOT AC0,AC1 AC1 ;按位取反,;按位取反,AC1=not(AC0)AC1=not(AC0)五、五、MOVEM

39、OVE操作指令操作指令 累加器、临时寄存器或辅助寄存器的装载、存储和交换。累加器、临时寄存器或辅助寄存器的装载、存储和交换。 存储器单元的数据移动存储器单元的数据移动 堆栈操作堆栈操作 CPUCPU寄存器的装载、存储与数据移动寄存器的装载、存储与数据移动1 1、累加器、临时寄存器或辅助寄存器的装载、存储和交换。、累加器、临时寄存器或辅助寄存器的装载、存储和交换。例例1 1: MOV MOV * *AR3+#16AR3+#16,AC1AC100 0200 FC0000 0200 FC00AC1AC102000200AR3AR3340034000200020000 3400 000000 3400 0000AC1AC102010201AR3AR334003400累加器装载:累加器装载:AC1=(AC1=(* *AR3)#16AR3)SPR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论