




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据传送指令数据传送指令 56这组指令用于存储器和CPU 寄存器间、存储器单元间或者CPU 寄存器间的数据转移。读入、存储和数据传送等指令根据数据的值自动更新条件码自动更新条件码。这允许BEQ、BNE、BPL 和BMI 等在载入、储存和数据传送指令后不需要运行特殊的测试或比较指令,而立即进行条件转移。Load A 和Load X是从存储器中取出一个8位数放入累加器A或寄存器X。Load H:X是从存储器中取出8位的数放入寄存器H,然后再从下一个存储单元取出8位数放入寄存器X。为了尽可能灵活的访问存储器,加载A 或X 都可使用8 种不同的寻址方式。而LDHX 可有7种不同的寻址方式来指定所取数的
2、存储单元。下列代码展示了加载指令的某些用法。这些指令在实际程序中并不这样用,它们只是些无关联的加载指令,用来说明可用不同方式来访问存储器的多种可行的寻址方式.因为操作数进入ALU 需要用到累加器A,所以通常在执行算术与逻辑操作时,要使用LDA 指令取得一个值,以便与第2 个操作数进行运算。;求A+B的和(假设总和累加器add oprB ;立即数A+立即数B-累加器在有些情况下,可设计程序使得放在累加器A 中的运算结果能用来作为后续运算的操作数。这样可以避免存储结果的过程以及将下一个操作数放入累加器的必要。;求A+B+C的和(假设总和累加器add oprB ;立即数A+立即数B-累加器add o
3、prC ;累加器+立即数C-累加器下面展示了中间值保存在堆栈中的例程。有时这样做比将临时结果存储在存储器中要快。存储的数量依赖于用何种寻址方式放置临时变量至存储器以及X 寄存器是否被其他操作所使用.;计算(A+B)-(C+D)(假设没有进位或借位)LDA oprC ;立即数C-累加器ADD oprD ;立即数C+立即数D-累加器PSHA ;中间结果放入堆栈SP+1LDA oprA ;立即数A-累加器ADD oprB ;立即数A+立即数B-累加器SUB 1,sp ;(A+B)-(C+D)结果放入累加器AIS #1 ;释放一个变量TAX 和TXA 提供了一个有效的方法来把A 寄存器的值送到X 寄存
4、器或者把寄存器X 的值送到寄存器A。如果寄存器X 未被使用,可以用来暂存累加器A 中的值,这样累加器就可以用来做其他操作。TAP 和TPA 提供了一个方法在寄存器A 到CCR 中或者从CCR 到寄存器A 传送数据。这种操作在类似调试监控等开发工具中比在通常用户程序中使用得更多。MOV指令从存储器区读一个8 位数值,并将这个数值存储到存储区的其他地方。就像加载和存储指令一样,MOV 根据被移动数据的值改变CCR 中N 和和Z 标志位。尽管加载和存储指令能够完成尽管加载和存储指令能够完成MOV 所做的事情,但MOV 不需要使用累加器,在传送操作期间,累加器A 能够正常使用。在许多情况下,MOV 比
5、加载-存储指令更快更小(目标代码的大小)。MOV 指令允许四种从指定源到目标的不同的寻址方式。下面的例子展示了使用传送指令初始化几个寄存器的值。284 C0DB 6E 03 00 mov #$03,PTAD ;0011到低4位285 C0DE 6E 0F 03 mov #$0F,PTADD ;使得低4位为输出286 C0E1 6E F0 01 mov #$F0,PTAPE ;上拉高4位下面例子展示了使用加载和存储指令实现字符串移动字符串移动操作数,而不用传送指令。;块移动例子,移动字符串到RAM块45 0088 LDHX #moveBlk1 ;指向RAM目标块D6 BF7F movLoop1:
6、 LDA (stringBytes-moveBlk1),x ;得到源字节27 04 BEQ dunLoop1 ;结束循环的条件F7 STA ,x ;保存到目标块5C INCX ;下一个位置(假设直接寻址)20 F7 BRA movLoop1 ;继续循环 dunLoop1: 算术运算指令94算术运算指令包含了传统的加、减、乘和除操作,还包含常用的指令如加一、减一、清零、求补(2 进制补码)、比较、测试和为处理BCD 码的十进制调整指令。比较指令实际上就是减操作,影响CCR 状态位但结果不返回到CPU 寄存器。测试指令影响着N和Z 位,但是不影响被测试的数据。ADD、ADC、SUB、SBC 32M
7、UL、DIV2INC、DEC、COM、NEG、CLR(CLRH)、TST 37CMP、CPX16CPHX4DAA1AIX、AIS2ADD 指令将寄存器A 中的数据加上存储器内的操作数,并将结果存储到寄存器A中。ADC 将寄存器A 中的数据加上由前一次操作产生的进位,再加上存储器中的操作数,将结果存储到寄存器A 中。该操作允许执行多字节加法,就像下例所示。;8位操作数到24位和的加法LDA oprA ;取8位操作数到寄存器AADD sum24+2 ;24位和的低字节STA sum24+2 ;更新24位和的低字节LDA sum24+1 ;取24位和的中间字节ADC #0 ;保持任何进位STA su
8、m24+1 ;更新中间字节LDA sum24 ;得到24位和的高字节ADC #0 ;保持进位到高字节中STA sum24 ;更新高字节SUB 指令将累加器A 中的数据减去存储器中的数据,然后将结果存储到累加器A中。对于这个指令,进位状态位是借位指示器。SBC 指令将累加器A 中的数据减去由前一次操作所影响的借位再减去存储器中的数据,然后将结果存储回寄存器A 中。这个操作允许执行多字节减法,就像下面例子所显示的。;16位减法.结果是16位=oprE-oprFLDA oprE+1 ;oprE的低8字节SUB oprF+1 ;oprE(低字节)-oprF(低字节)STA result16+1 ;结果
9、的低字节LDA oprE ;oprE的高字节SBC oprF ;oprE(高字节)-oprF(高字节)-借位STA result16 ;结果的高字节MUL 指令将寄存器X中无符号8位2进制数与累加器A中的无符号的8 位2进制数相乘,然后存储16位结果到X:A 中,高8 位的结果存储在X中,低8位存储在A中。这种情况下不可能发生进位(或者是溢出),其结果将总是适合X:A 的大小。因此在这个操作后C 将被清零。DIV 将H:A 中16 位无符号数除以X中无符号的8位值,然后存储8位结果到A寄存器中,余数存储到H寄存器中。在X中的除数无变化,因此他能够在随后的操作中被使用。如果商为0则Z标志被置1。
10、如果商大于255 就会有溢出发生,如果发生溢出或除数为0 则C 位被置1。下面这个除法的例子展示了简单8 位除以8 位得到一个8 位的结果。;8/8整数除法.A=A/XCLRH ;清零被除数高字节LDA divid8 ;加载8位被除数LDX divisor ;加载除数DIV ;H:A/X-A,余数-HSTA quotient8 ;保存结果另一个除法的例子证明了怎样使用DIV 指令来执行一个8 位到8 位的除法,并得到小数部分的结果(可以精确到小数点后8 位)。;8/8 整数除法,将余数变为8位的小数位;r8.f8=A/X,将余数变为8位的小数位;16位的结果-(8位整数).(8位小数)CLRH
11、 ;清零被除数的高字节LDA divid8 ;加载8位被除数LDX divisor ;加载除数DIV ;H:A/X-A,余数-HSTA quotient16 ;结果的高字节保存整数部分CLRA ; H:A=余数:0DIV ;H:A/X-ASTA quotient16+1 ;低字节放小数部分第三个除法的例子。用一个8 位的被除数来除一个大于8 位的除数得到16 位的小数结果,小数点在结果最高位的左边。在二进制中,MSB 的数值是整个数值的一半,右边的下一位占四分之一,依次类推。;8/8小数除法,16位的小数结果;r16=H/X,结果是一个16位的二进制小数;在H和X中,假设基数是在相同的位置;1
12、6位的结果-.(16位的小数);除数和被除数都被定义了,因此用ldhx加载H和XCLRA ;清零LS字节的被除数LDHX divid8 ;H:X=被除数:除数DIV ;H:A/X-A,余数-HSTA quotient16 ;结果的高字节CLRA ;H:A=余数:0DIV ;H:A/X-ASTA quotient16+1 ;结果的低字节第四个除法例子使用了类似长除法的技术,完成16 位整数除以8 位的数的操作.;极大的16/8整数除法(相当于长除法);r16.f8=H:A/X,结果是16位整数,8位二进制小数CLRH ;清零被除数的高字节LDA divid16 ;被除数的高字节LDX divis
13、or ;装载除数DIV ;H:A/X-A,余数-HSTA quotient24 ;结果的高字节LDA divid16+1 ;H:A=余数:被除数(低字节)DIV ;H:A/X-A,余数-HSTA quotient24+1 ;结果的下一个字节CLRA ;H:A=余数:0DIV ;H:A/X-ASTA quotient24+2 ;结果的小数位第五个例子展示了通过检查溢出来实现16 位数除以8 位数的操作。;有限的16/8整数除法(带溢出检查);r8= H:A/X,结果是8位的整数LDHX divid16 ;H:X=16位的被除数TXA ;H:A=16位的被除数LDX divisor ;X=8位的除
14、数DIV ;H:A/X-A,余数-HBCS divOvrflow ;是否溢出STA quotient8 ;结果的高字节divOvrflow: ;溢出转到这里加一、减一、清零和求补加一、减一、清零和求补 加一与减一指令可以通过加1 或减1 调整寄存器A、X 或存储器或存储器内的数据。清零指令可以将寄存器A、X、H 或者存储器中的8 位数值强制改为0。求补指令执行了二进制补码操作,求补指令等同于将一个8 位有符号数乘以-1。功能上等同于将寄存器A、X 或者存储器中的数据全部全部取反,然后加上一取反,然后加上一。数据$80 表示有符号数值负128,而不是+128。因为使用8 位2 进制补码所能表示的
15、最大是+127。如果寄存器的值是$80 然后若执行NEGA 指令,CPU 首先反转所有的位获得$7F,然后再加1 得$80。因为这个原因如果一个数据的符号由正变负,在CCR 中的V 标志位将标示为溢出错误。比较和测试比较和测试CMP 指令影响CCR 的位,就像相应的SUB 指令。但其结果不会存储回累加器中,因此A 寄存器和存储器操作数是不发生变化的。比较指令是比较寄存器A、X 或H:X内容与存储器中的操作数。在CPHX 指令执行时,M 指向存储位置的首地址,H 与存储器位置M 相对应,X 和存储器位置M+1 相对应。CPHX 执行一个16 位减法指令(存储结果不返回H:X 中)。测试指令是将寄
16、存器A、X 或者存储器中的操作数与0 相减。这个操作清零了V,然后依据测试的结果置位或者清零N 和Z,依据在测试指令的结果而定。测试指令不改变测试数的值。BCD的计算的计算在BCD 码数值中,16 进制数表示一个有符号的十进制数值0 到9。当两个8 位的BCD 数值相加,CPU 实际上执行普通的二进制加法。对于BCD 码,这个计算的结果可能不再是一个有效的BCD 码。根据ADD 或ADC 指令对2 个标准的BCD 数计算所改变的H 和和C 标志位标志位,DAA 指令可以对结果进行修正使其成为有效的有效的BCD 数并且修正数并且修正C 标志位的内容使其正确的表示使用BCD 加法后的结果。在过去完
17、成这些操作是非常复杂的,需要测试每一个BCD 数值的结果和H、C 标志位。而DAA 指令则能很简单的完成这个操作。下面例子展示了2 种可能的情况:当2 个8 位BCD 数据相加,并且使用DAA 指令对其进行修正,以修正BCD 和设置进位标志位。第一个例子展示了一种情况,BCD码加法后结果不需要调整。第二个例子展示了另一种情况,BCD 码加法后需要对结果调整。在第二个例子中DAA 指令对数值加上了一个修正的因数并且调整了进位标志使其正确表示BCD 加法的结果。LDA #$11 ;BCD 11ADD #$22 ;11 + 22 = 33DAA ;在这个情况中没有调整LDA #$59 ;BCD 59
18、ADD #$57 ;59+57=$B0;C=0,H=1,A=$B0 ;想得到59+57=116或者当进位置位时A=$16DAA ;加$66和设置进位;$B0+$66=$16进位置位逻辑操作指令 24逻辑操作指令 24这些指令执行8 位操作数的并行布尔运算。逻辑指令均包括了两个操作数,一个是累加器A,另一个在存储器中。立即寻址、直接寻址、扩展寻址或变址寻址等寻址方式(和H:X 或者SP 相关)也允许用来访问操作数。累加器的每个位都执行与、或和异或操作。逻辑操作的结果返回累加器,覆盖原来的操作数。LDA #$0C ;位形式为00001100AND #$0A ;位格式为00001010;结果是$08
19、 .00001000LDA #$35 ;位格式为00110101AND #$0F ;位格式为00001111;结果是 $05 .00000101逻辑操作指令从示例中可看出这些操作和BCLR 指令之间有些类似的地方。然而,BCLR 仅能够在$0000$00FF 存储区间使用,AND 能够清零任何合并位,而BCLR 仅能够清零一位。AND 能在几个不同的寻址方式下使用与A 运算的存储操作数。LDA #$0C ;位格式为00001100ORA #$0A ;位格式为00001010;结果是 $0E ;00001110ORA 操作和BSET 指令之间有一些类似的地方。然而,BSET 仅仅被使用在存储区$
20、0000$00FF,ORA 能够设置任何合并位,而BSET 仅能够置位一位。ORA 能在几个不同的寻址方式下使用与A 运算的存储操作数。逻辑操作指令A6 0C LDA #$0C ;位格式为00001100A8 0A EOR #$0A ;位格式为00001010;结果是 $06 ;00000110B6 00 LDA PTAD ;读I/O端口AA8 03 EOR #$03 ;低两位异或操作B7 00 STA PTAD ;更新I/O端口A“异或”常在操作数中用来钳制某些位,有时被认为是掩码,每个位在掩码通信时被设置成在另外的操作码有效位并被反向钳制。下面的例子是读I/O 端口,异或通过直接掩码值$0
21、3 钳制两个最小的有效位,然后向I/O 端口写入更新的结果。逻辑操作指令LDA #$C5 ;位格式为11000101COMA ;结果是00111010取反指令简单的转换操作数的每个位,不要和求补指令相混淆,取负指令执行的是一条算术运算指令,即等效于与一个负1 相乘。位操作指令 14位测试指令(逻辑操作)BCLR n,addr8 (其实是8条指令,见下页)BSET n,addr8 ( 8 )位操作指令 14位操作指令 14位测试指令(逻辑操作)位指令将相应存储地址中的操作数与A 寄存器的每个位进行“与操作”(就像A 与),但是结果不存储在累加器中。在执行位指令后,根据与操作的结果来置位或清零条件
22、码寄存器N 和Z 位,以实现条件跳转。如果使用“掩码”方法进行编程,则掩码中的每个对应位被测试,执行BIT 指令后,若测试位均不是1 则Z 位被置位。位操作指令 14位测试指令LDA SCI1S1 ;读SCI状态寄存器BIT #(mOR+mNF+mFE+mPF) ;所有的错误标志的掩码BNE sciError ;如果有任何的错误标志被置位则转移;A中值未被改变sciError:; 如果有任何的错误标志被置位,则跳转到此例如用于判断SCI1S1 中有关错误标志位的掩码:mOR equ %00001000 ;接收超时的掩码mNF equ %00000100 ;接收干扰标志的掩码mFE equ %0
23、0000010 ;接收端帧差错的掩码mPF equ %00000001 ;接收端奇偶校验失败的掩码如果希望当SCI1S1 中至少有一个错误标志被置位时转移,则采用复合掩码:#(mOR+mNF+mFE+mPF)。上述程序则采用这种方法.位操作指令 14位的置位与清零位的置位与清零 读修改写位的置位(BSET)与清零(BCLR)指令被认为是位级的存储指令,但是这些指令通常取一个完整的8位的数,修改指定的位,然后重写整个8 位的数。在某些情况下,例如当目标位置与RAM 变量不对应时,这个微妙的操作将导致意想不到的结果。如果BSET或BCLR 指令试图改变非易失性存储单元的某一位,通常这一位不会改变因
24、为非易失性存储器要求更复杂的操作步骤来改变这一位。某些状态位是通过一定步骤清零的,这一步骤包括读取状态位后写入到外设模块的其他寄存器。使用者会惊讶的发现BSET 和BCLR 指令能满足读取状态寄存器的要求。为了避免这样的问题,只要记住BSET 和BCLR 指令是能并行读取8 位数据的读-改-写指令。某些控制寄存器或I/O 寄存器不能够读写同一物理逻辑状态。一般来说,在这些地址区域不使用读-改-写指令,因为它们也许会产生意想不到的结果。BSET 和BCLR 指令能满足读取状态寄存器的要求.;置位的例子 打开TE而不需要改变RE16 1B BSET TE,SCI1C2 ;SCI传输使能;功能上与下
25、面是相同的B6 1B LDA SCI1C2 ;读当前SCCR2的值AA 08 ORA #mTE ;TE位上或操作(屏蔽)B7 1B STA SCI1C2 ;更新SCCR2中的值置位和清零进位位指令(SEC 和CLC),可以用于,在执行左移或右移指令前,改变进位位的值。 置位中断屏蔽(SEI)和清零中断屏蔽(CLI)指令被用来让中断使能和禁止。复位后,在堆栈指针和其他系统条件初始化之前,I 位需要被置位用来防止中断。当完成足够的系统初始化后,需要用CLI 指令来放开中断。在某些程序中,敏感的代码序列需要预防中断。当编写敏感代码序列时,SEI 在序列之前使用,CLI 在序列之后使用。移位类指令 3
26、6移位类指令 36所有的移位类指令在由8 位的A、X 或者存储器空间和在CCR 中的C 位组成的位组成的9位位空间上操作。附图描述了在指令执行时C 位如何配合左移位或者右移位操作。逻辑左移指令就是简单地把0 移位到有效值的最低位,最高位移位到进位位。算术移位指令将左移的值作为有符号二进制补码来处理。算术左移类似于乘2 操作,算术右移类似于除2 操作。算术右移(ASR)指令复制最初的最高有效位(MSB)返回到MSB,以保护操作数符号。ASL 和LSL 就像相同指令不同的写法,因为在逻辑和算术左右移位上,均没有功能上的较大区别。移位类指令 36在移位中包含了进位,移位允许将这些操作扩展成多字节操作
27、。下面的例子展示了一个24 位值被左移或者右移。;24位的左移操作CLC ;清零C位ROL sum24+2 ;C位转移到低字节的最低位ROL sum24+1 ;转移中间字节ROL sum24 ;转移高字节LSL sum24+2;24位的右移操作?跳转、转移和循环控制指令 501、无条件跳转和转移指令 7条BRanch AlwaysBRanch Never1、无条件跳转和转移指令跳转(JMP),转移(BRA)和无转移(BRN)指令是无条件的,不依靠任何CCR 位的状态。JMP 可以跳转到64K 字节地址空间的任何一个位置,而转移指令被限制在当前位置的-128 到+127 的区域空间。下面例子的指
28、令使用了使用了JMP 指令来扩展条件转移的范围指令来扩展条件转移的范围。对每一个条件转移指令来说,均有相反条件操作的转移指令存在。例如相对转移指令,就有相等转移指令(BEQ)和不相等转移指令(BNE)等等。假如写出了下面的指令。;BEQ farAway ;多于128字节汇编程序就会标志出一个错误,因为超过了128 字节的距离.也可以使用BNE 来替换BEQ,那执行起来就像下面这个跳转指令了。BNE aroundJ ;如果不相等则转移JMP faraway ;如果相等则转移aroundJ: ;如果不相等转移到这里跳转、转移和循环控制指令2、简单转移指令 12条Branch if EQualBra
29、nch if Carry bit ClearBranch if Not EqualBranch if Carry bit SetBranch if PLusBranch if MinusBranch if Irq pin LowBranch if Irq pin HighBranch if interrupt Mask ClearBranch if Half Carry bit Clear跳转、转移和循环控制指令2、简单转移指令 状态位与指令对照跳转、转移和循环控制指令3、有符号数转移指令 4条Branch if Less ThanBranch if Less than or EqualBra
30、nch if Greater than or EqualBranch if Greater Than有符号数的操作均可使用于诸如:小于转移(BLT),小于等于转移(BLE),大于等于转移(BGE)和大于转移(BGT)等指令。简单转移中的相等转移(BEQ)和不相等转移(BEN)等指令也可用于有符号数。M68HC05 系列没有CCR 中V 位,因此它不能够进行有符号转移。有符号和无符号转移的不同点是有符号转移使用N和V的异或来代替C 位作为控制转移的布尔条件。N 和V 的异或提供了一个高于+127(+32,767)或者低于128(32,768)溢出标志。C 位超过+255(+65,535)就显示出
31、溢出。跳转、转移和循环控制指令4、无符号数转移指令 4条小于转移(BLO)、小于等于转移(BLS)、大于等于转移(BHS)和大于转移(BHI)用在无符号数运算。简单转移、相等转移和不相等转移也能用在无符号数运算。Branch if Lowersame as BCSBranch if Lower or SameBranch if Higher or Samesame as BCCBranch if HIgher跳转、转移和循环控制指令5、位条件转移指令 2条这些转移指令测试直接寻址空间($0000$00FF)中的操作数的一个单独的位,如果测试位被置1,BRSET 则跳转,如果测试位为0,BRCL
32、R 则跳转。尽管这个操作数看起来像被限制在存储位置上,但它包含了所有的I/O 和控制寄存器空间和一些RAM 中的一部分重要的位置,这些位置用来存放程序中的变量。对于每个位置都有独立的操作数,这些指令有着特别的效果,仅需要3 字节的目标代码和5 个总线周期。waitRDRF: BRCLR RDRF,SCI1S1,waitRDRF ;等待RDRF被置位BRCLR OneSecond,flags,skipUpdateupdateTime: BCLR OneSecond,flags ;清除布尔变量skipUpdate:跳转、转移和循环控制指令5、循环控制指令 12条CBEQ 指令比较累加器和某个存储位
33、置的内容,如果它们彼此相等就跳转。CBEQA和CBEQX 允许寄存器A 或X 与一个立即数相比较。与CBEQ 指令相关的H:X 变址操作的特殊点是当比较A 和变址存储位置的内容后H:X 会自动增加。这些变化可被用来寻找存储器中特殊的值,例如字符串最后的空值、一个返回值或一个结束标志。CBEQ其他的变化可用来作为存储区域的循环记数(增加或减少该循环记数可通过另外的在循环中的指令来实现)。Compare and Branch if EQual Decrement and Branch if Not Zero LDA #$0D ;ASCII CBEQ oprA,gotCR ;如果立即数等于$0D则跳
34、转。;这里的立即数可以是任何数除了gotCR: ;如果立即数是则跳转;相似的,但是立即数寻址方式代替了直接寻址方式LDA SCI1DRL ;read SCI character ;读SCI字符CBEQ #$0D,gotCR ;如果它是则跳转前面对于寻址方式的讲解中也有CBEQ的例子。DBNZ 指令对寄存器A、X 或存储区域的值减1,如果结果值不为0 便转移。这提供了一个有效的实现循环计数的方法。LDA#4 ;循环记数STAdirectByte ;保存在RAM中loopTop: NOP ;开始程序循环DBNZ directByte,loopTop ; 循环直到计数值到;在堆栈中使用局部量来循环记
35、数LDA#4 ;循环记数PSHA;将循环记数压栈loopTop1: nop ;开始程序循环DBNZ 1,sp,loopTop1 ;循环直到计数值到跳转、转移和循环控制指令6、子程操作类指令 9条Jump to SubRoutine Branch to SubRoutine SoftWare Interrupt1中断入口低优先级高中断号入口地址模块标记允许位寄存器230 xFFD0:FFD1系统RTIFRTIESRTISC200 xFFD6:FFD7ACMPACFACIEACMPSC190 xFFD8:FFD9ADCCOCOAIENADCSC1180 xFFDA:FFDBKBIKBFKBIEKB
36、ISC170 xFFDC:FFDDIICIICIFIICIEIICC,IICS160 xFFDE:FFDFSCITDRE、TCTIE、TCIESCIC2150 xFFE0:FFE1SCI IDLE、RDRFILIE、RIESCIS1140 xFFE2:FFE3SCIOR,NF,FE,PFORIESCIC3130 xFFE4:FFE5SPISPIF,MODF,SPTEFSPIE,SPTIESPIC1120 xFFE6:FFE7 MTIMTOFTOIEMTIMSC70 xFFF0:FFF1TPMTOFTOIETPMSC60 xFFF2:FFF3TPMCH1FCH1IETPMC1SC50 xFFF4:FFF5TPMCH0FCHI0IETPMC0SC30 xFFF8:FFF9系统LVDFLVDIESPMSC120 xFFFA:FFFBIRQIRQFIRQIEIRQSC10 xFFFC:FFFDCPUSWI指令-00 xFFFE:FFFF系统COP,LVD,RST,POR,非法指令等。跳转、转移和循环控制指令6、子程操作类指令 9条ReTurn from SubroutineReTurn from Interrupt无条件跳转到子程序(JSR)和转移到子程序(BSR)指令用于转到程序中某个位置的系列指令(子程序)。通常,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 动力柜施工合同范本
- 公用商业装修合同范本
- 包装供应合同范本
- app合伙合同范本
- 以房换房合同范本
- 上传网贷合同范本
- 包材委托加工合同范本文库
- 2024年日照市某国有企业招聘考试真题
- 2024年青海海南州教育局招聘高中教师考试真题
- Module 2 public holidays unit 2英文版教学设计 2024-2025学年外研版英语九年级上册
- 2024下半年上海事业单位招考易考易错模拟试题(共500题)试卷后附参考答案
- 网络安全风险评估行业研究报告
- 新能源汽车充电设施安全检查记录表
- GB/T 38153.1-2024印刷技术测试印样的实验室制备第1部分:浆状油墨
- 2024高考物理考试大纲
- 《上市公司财务舞弊探究的国内外文献综述》5000字
- 2024年护师类之护士资格证考试题库
- 腰椎间盘突出症课件(共100张课件)
- 委托调解民事纠纷协议书合同
- 林学概论完整版本
- GB/T 44458.3-2024运动用眼部和面部保护第3部分:水面游泳用眼镜的要求和试验方法
评论
0/150
提交评论