汇编指令二进制代码手册_第1页
汇编指令二进制代码手册_第2页
汇编指令二进制代码手册_第3页
汇编指令二进制代码手册_第4页
汇编指令二进制代码手册_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

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

文档简介

1、汇编指令与二进制代码对应手册汇编指令与二进制代码具有一一对应关系,也就是说,一条汇编指令必将唯一对应一条二进制代码指令,而一条二进制代码指令也唯一对应一条汇编指令,这就为写一个汇编语言与二进制指令相互对应的参考表成为可能。手册的使用范围本手册的读者需要据有一定的计算机专业知识,了解CPU的工作原理及内部的体系结构,熟悉IBM汇编、NASM或其它汇编语言,并且对汇编语言指令的二进制代码有足够的兴趣。本手册列出了绝大部分的中文汇编指令与二进制指令的对应关系,及相应的英文汇编指令名称。由于作者水平有限,而且本手册主要是对照NASM汇编语言指令集、Intel 微处理器结构、编程与接口中文第六版及其In

2、tel公司公布的IA-32 Intel Architecture Software Developers Manual2001年版的PDF格式文档指令集而生成的,或许有一些比较新的指令或者其他CPU特有的指令,并未收集在本手册中。汇编指令解析一、操作码 汇编指令按其功能可分为:一般指令、浮点指令、多媒体指令和SIMD流式扩展(SSE)指令。汇编指令因其繁多且对应的二进制代码有多种变化而变得异常复杂,二进制代码的指令都是由操作码与操作数构成,就指令与操作数的关系而言,指令无非是无操作数、单操作数、双操作数和三操作数。所谓的操作码就是唯一代表着指令的意义的一段二进制码,操作码可以是单字节或者是双字

3、节。有一种特殊的操作码,它与操作数合起来共用一个字节或者两个字节,这种操作码的操作数都是寄存器,而且寄存器的二进制代码都为这操作码字节的最后三位,在参照表中用“操作数指令”字段表示,如果这个段中的数据为“是”就表示这个操作码是与寄存器操作数共用一个字节或两个字节,否则就不是。从对照表中,我们可以看出,实事上二进制操作码与汇编指令名称并非一一对应,一条汇编指令的名称如:转移指令,它可以对应多个操作码,只有当指令名称与指令操作数合在一起,才与操作码和操作数有一一对应的关系。也就是说同一个指令名称,指令操作数类型不同,对应的二进制操作码也可能不同。操作码在对照表是用“操作码”字段表示。在操作码字节中

4、通常又有方向位、符号位、操作数大小修饰位值得注意,它们都用一个二进制位来表示,方向位与符号位通常都在操作码的倒数第二位,而操作数修饰位通常在操作码的最后一位。举例说明:如果倒数第二位是方向位,那么如果这一位值为0,那么表示操作数是从左到右,如果是1表示操作数从右到左;如果倒数第二位是表示符号位,那么如果这一位值为0表示操作数是无符号操作数,如果值为1表示操作数为有符号操作数;如果最后一位是修饰操作数位,那么最后一位为0表示操作数是八位操作数,就是字节操作数,最后一位为1表示操作数大小由汇编模式决定,如果是16位汇编就表示是16位操作数,即字操作数,如果是32位汇编就表示是32位操作数,即双字操

5、作数。汇编模式是16位还是32位,由汇编代码决定,在NASM汇编中默认为32位模式,如果代码显示地给出BIT16就表示汇编成16位模式,如果代码显示地给出BIT32就表示汇编成32位模式。汇编模式不同,操作数也不相同,具体请看操作数节中介绍。二、操作数 计算机指令之所以复杂的一个主要原因就是操作数有多种变化,最为简单的指令就是无操作数指令。其中操作数可以是立即数、寄存器和内存地址。通常情况下,操作数含有立即数的指令与不含立即数的指令,指令操作码不同;操作数都为寄存器的,通用寄存器、段寄存器、控制寄存器、调试寄存器和任务寄存器的指令操作码不同;多媒体指令、浮点指令和SIMD指令都有各自的指令系统

6、。最为复杂的变化是当操作数为寄存器或内存的时候,之所以把它们放在一起,是因为它们都由一个叫做模数(MOD)的两位二进制数来决定。计算机指令是如何分辨多变的操作数的呢?前面提到,如果操作数是立即数,那么就用操作码来区分。当操作数是寄存器或是内存地址时,主要是用一个字节来区分,这个字节的前两位就是模数(MOD),后三位是寄存器的二进制代码,最后三位的值由开始两位的模数来决定具体的类型,如果模数为11那么最后三位就用来表示寄存器。内存地址是用寄存器的值来表示的,有的内存地址带有位移量,于是,当模数为00时字节的最后三位就表示寄存器内的数据是内存地址,并且没有位移量,当模数为01时,字节最后三位表示寄

7、存器内的数据是内存地址,并且在这一字节之后有8位数的位移量,当模数为10时字节后面有16位或32位,是16位还是32位由汇编模式来决定。16位模式常用于实模式,可使用16位寄存器,如AX、BX等,32位常用于保护模式,可使用32位寄存器,如EAX、EBX等。然而,只用一个字节的最后三位来表示内存地址,不可能用来表示众多的寄存器组合,于是模数为00时(没有位移量),就有在16位汇编模式,当nnn=000(nnn表示是用来表示内存的三位二进制数)时,内存地址为DS:BX+SI,在32位汇编模式时nnn=000,内存地址为DS:EAX,其它的值请参照后面的对应表。于是,我们知道了,计算机指令是通过模

8、数、寄存器和寄/内三个域来决定操作数的,其实除此之外,还有一种特殊的情况,就是操作数并没有都用到这三个域,而是把第二个域的值设为一个预设值,也就是说,第二个用来表示寄存器的域设成了固定值,而不是可变的寄存器,那么这就出现了只有一个寄存器或是内存地址操作数的变型,其实它是由前一种类型变化得来的。有三个操作数的指令又是如何的呢?实事上搞明白了上一种变化,三个操作数就很容易了,它只不过是在两个寄存器或内存地址操作数之后再加一个立即数,这种情况同样有一种特例,那就是有两个相同寄存器操作数,和一个立即数,那么在写汇编代码的时候就把这种情况认为是一个寄存器和一个立即数,而实际翻译成二进制代码时要翻译成两个

9、相同的寄存器和一个立即数,它同样是属于三个操作数的情况,IMUL指令就属于这一种特例。在具体的指令中还有一些例外,比如,一个看上去只有一个操作码,不含操作数的指令,而实际上它有隐含的寄存器作为它的操作数如计数寄存器,或者它的寄存器操作数被指令指定了,而不是可变的,如只使用累加寄存器,这也是比较常见的,这些在对照表中有详细的注明。三、指令前缀 有些指令通过添加前缀来改变默认段或超越指令模式。所谓超越指令模式是指在16位汇编模式时使用了32位的寄存器或者由32位寄存器组成的内存地址,或者在32位汇编模式时使用了16位寄存器或者由16位寄存器组成的内存地址。当使用超越前缀时,应把前缀字节放在指令的面

10、前,有多个前缀时前缀字节没有顺序地排列。超越前缀表前缀字节 作用26H ES:段超越前缀2EH CS:段超越前缀36H SS:段超越前缀3EH DS:段超越前缀64H FS:段超越前缀65H GS:段超越前缀2EH 分支未获取前缀(原英文是:Branch not taken,分支暗示前缀-仅用于条件跳转(Jcc)指令)3EH 分支被获取前缀(原英文是:Branch taken,分支暗示前缀-仅用于条件跳转(Jcc)指令)66H 对操作数长度的指令模式超越67H 对内存地址长度的指令模式超越F0H 锁(LOCK)指令前缀F2H 不相等重复/不为零重复前缀(REPNE/REPNZ)指令前缀(只适用

11、于字符串操作指令)F3H 重复(REP)指令前缀(只适用于字符串操作指令)F3H 相等重复/为零重复前缀(REP/REP)指令前缀(只适用于字符串操作指令)四、总结 通过以上的分析,我们可以总结出计算机指令的结构,由于286以前(含286)的处理器只能识别16位地址指令,且不能识别超越前缀字节,因此,这种16位地址指令的格式又与32位地址,即386以后(含386)的处理器的指令格式有所不同,如下表: 16位计算机指令格式(适用于286以前的处理器) 操作码操作数0x带模数的寄存器和寄/内操作数内存位移量立即数1-2字节0-1字节0-2字节0-2字节32位计算机指令格式(适用于386以后的处理器

12、)指令超越前缀操作码操作数0x66/0x670x带模数的寄存器和寄/内操作数比例变址*内存位移量立即数由前缀个数而定1-2字节0-1字节0-1字节0-4字节0-4字节*值得注意的是,操作数域中的比例变址只适用于32位寻址方式,且此时jjj/nnn=100 比例变址字节的前两位表示比例因子,后三位表示变址寄存器,最后三位表示基地寄存器,最终得到的地址值是:比例因子*变址+基址,当比例因子为00时乘以1,当比例因子为01是乘以2,当比例因子为10时乘以4,当比例因子为11时乘以8。其中“带模数的寄存器和寄/内操作数”这一操作数域仅占一个字节,如下表示:mm jjj jjj/nnn mm是两位模数

13、jjj是三位表示的寄存器 nnn是三位用寄存器的值来表示的内地地址当mm=11时 jjj/nnn的值就表示为寄存器,即:11 jjj jjj当mm=00时 jjj/nnn的值就表示为内存地址,即:00 jjj nnn 且此时“内存位移量”域不取值,没有位移量当mm=01时 jjj/nnn的值就表示为内存地址,即:01 jjj nnn 且此时“内存位移量”域取8位的位移量当mm=10时 jjj/nnn的值就表示为内存地址,即:10 jjj nnn 且此时“内存位移量”域取16位或32位的位移量,如果是16位汇编模式则取16位的位移量,如果是32位汇编模式则取32位的位移量。是否有最后面的立即数操

14、作数则由操作码来决定。如果汇编代码指定为16位汇编模式,但指令的操作数中使用了32位的寄存器,则就需要在指令前加0x66的超越前缀,如果是使用了32位寄存器的值来表示内存地址,则需要在指令前加0x67的超越前缀,同理,汇编代码指定为32位汇编模式时,在指令的操作数中使用了16位的寄存器,也需要在指令前加0x66的超越前缀,如果是使用了16位寄存器的值来表示内存地址,则需要在指令前加0x67的超越前缀。其每条指令的这两种超越前缀已经在指令对照表中完整给出。寄存器中文-英文命名对照表类型中文名称英文名称二进制码寄存器说明多 功 能 寄 存 器累加低八AL000累加寄存器低八位累加高八AH100累加

15、寄存器低八位累加16AX00016位累加寄存器累加32EAX00032位累加寄存器基址低八BL011基址寄存器低八位基址高八BH111基址寄存器低八位基址16BX01116位基址寄存器基址32EBX01132位基址寄存器计数低八CL001计数寄存器低八位计数高八CH101计数寄存器低八位计数16CX00116位计数寄存器计数32ECX00132位计数寄存器数据低八DL010数据寄存器低八位数据高八DH110数据寄存器低八位数据16DX01016位数据寄存器数据32EDX01032位数据寄存器类型中文名称英文名称二进制码寄存器说明指针寄存器堆栈指针16SP10016位堆栈指针寄存器堆栈指针32E

16、SP10032位堆栈指针寄存器基址指针16BP10116位基址指针寄存器基址指针32EBP10132位基址指针寄存器变址寄存器目标变址16DI11116位目标变址寄存器目标变址32EDI11132位目标变址寄存器源变址16SI11016位源变址寄存器源变址32ESI11032位源变址寄存器专用寄存器指令指针16IP*16位指令指针寄存器指令指针32EIP*32位指令指针寄存器标志16FLAGS*16位标志寄存器标志32EFLAGS*32位标志寄存器段寄存器代码段CS001代码段寄存器数据段DS011数据段寄存器附加段ES000附加段寄存器堆栈段SS010堆栈段寄存器标志段FS100标志段寄存器

17、全局段GS101全局段寄存器控制寄存器控制零CR0000控制寄存器零控制一CR1*001控制寄存器一控制二CR2010控制寄存器二控制三CR3011控制寄存器三控制四CR4100控制寄存器四控制五CR5*101控制寄存器五控制六CR6*110控制寄存器六控制七CR7*111控制寄存器七调试寄存器调试零DR0000调试寄存器零调试一DR1001调试寄存器一调试二DR2010调试寄存器二调试三DR3011调试寄存器三调试四DR4*100调试寄存器四调试五DR5*101调试寄存器五调试六DR6110调试寄存器六调试七DR7111调试寄存器七任务寄存器任务零TR0000任务寄存器零任务一TR1001任

18、务寄存器一任务二TR2010任务寄存器二任务三TR3011任务寄存器三任务四TR4100任务寄存器四任务五TR5101任务寄存器五任务六TR6110任务寄存器六任务七TR7111任务寄存器七浮点寄存器浮点零ST0000浮点寄存器零浮点一ST1001浮点寄存器一浮点二ST2010浮点寄存器二浮点三ST3011浮点寄存器三浮点四ST4100浮点寄存器四浮点五ST5101浮点寄存器五浮点六ST6110浮点寄存器六浮点七ST7111浮点寄存器七多媒体寄存器媒体零MM0000媒体寄存器零媒体一MM1001媒体寄存器一媒体二MM2010媒体寄存器二媒体三MM3011媒体寄存器三媒体四MM4100媒体寄存器

19、四媒体五MM5101媒体寄存器五媒体六MM6110媒体寄存器六媒体七MM7111媒体寄存器七单指令流、多数据流寄存器单流零XMM0000单指令流、多数据流寄存器零单流一XMM1001单指令流、多数据流寄存器一单流二XMM2010单指令流、多数据流寄存器二单流三XMM3011单指令流、多数据流寄存器三单流四XMM4100单指令流、多数据流寄存器四单流五XMM5101单指令流、多数据流寄存器五单流六XMM6110单指令流、多数据流寄存器六单流七XMM7111单指令流、多数据流寄存器七注:英文名称有星号“*”的表示作为保留域,实际并没有使用,二进制码有星号“*”表示无需二进制数表示寻址方式16位寻址

20、方式时模数mm与内存寻址nnn可能的组合mm nnn 寻址方式中文表示 寻址方式英文表示00 000 数据段:基址16+源变址16 DS:BX+SI00 001 数据段:基址16+目标变址16 DS:BX+DI00 010 堆栈段:基址指针16+源变址16 SS:BP+SI00 011 堆栈段:基址指针16+目标变址16 SS:BP+DI00 100 数据段:源变址16 DS:SI00 101 数据段:目标变址16 DS:DI00 110 堆栈段:基址指针16 SS:BP00 111 数据段:基址16 DS:BX01 000 数据段:基址16+源变址16+8位符号位移 DS:BX+SI+sig

21、n_disp801 001 数据段:基址16+目标变址16+8位符号位移 DS:BX+DI+sign_disp801 010 堆栈段:基址指针16+源变址16+8位符号位移 SS:BP+SI+sign_disp801 011 堆栈段:基址指针16+目标变址16+8位符号位移 SS:BP+DI+sign_disp801 100 数据段:源变址16+8位符号位移 DS:SI+sign_disp801 101 数据段:目标变址16+8位符号位移 DS:DI+sign_disp801 110 堆栈段:基址指针16+8位符号位移 SS:BP+sign_disp801 111 数据段:基址16+8位符号位

22、移 DS:BX+sign_disp810 000 数据段:基址16+源变址16+16位符号位移 DS:BX+SI+disp1610 001 数据段:基址16+目标变址16+16位符号位移 DS:BX+DI+disp1610 010 堆栈段:基址指针16+源变址16+16位符号位移 SS:BP+SI+disp1610 011 堆栈段:基址指针16+目标变址16+16位符号位移 SS:BP+DI+disp1610 100 数据段:源变址16+16位符号位移 DS:SI+disp1610 101 数据段:目标变址16+16位符号位移 DS:DI+disp1610 110 堆栈段:基址指针16+16位

23、符号位移 SS:BP+disp1610 111 数据段:基址16+16位符号位移 DS:BX+disp16注意:当处理器执行时,将所有8位符号位移量符号扩展成16位的位移量,如果8位的位移量是00H-7FH(正的),则在位移地址之前扩展成0000H-007FH,如果8位的位移量是80H-FFH(负的),则在位移地址之前扩展成FF80H-FFFFH,因此,这个工作也可由汇编器来完成,在编译时将模数设为10,地址扩展成16的位移量,所以有些汇编程序不使用8位的位移量。32位寻址方式时模数mm与内存寻址nnn及比例因子字节基址域jjj可能的组合mm nnn jjj 寻址方式中文表示 寻址方式英文表示

24、00 000 - 数据段:累加32 DS:EAX00 001 - 数据段:计数32 DS:ECX00 010 - 数据段:数据32 DS:EDX00 011 - 数据段:基址32 DS:EBX00 100 000 数据段:累加32+比例变址 DS:EAX+比例变址00 100 001 数据段:计数32+比例变址 DS:ECX+比例变址00 100 010 数据段:数据32+比例变址 DS:EDX+比例变址00 100 011 数据段:基址32+比例变址 DS:EBX+比例变址00 100 100 数据段:堆栈指针32+比例变址 DS:ESP+比例变址00 100 101 数据段:32位位移量+

25、比例变址 DS:32位位移量+比例变址00 100 110 数据段:源变址32+比例变址 DS:源变址32+比例变址00 100 111 数据段:目标变址32+比例变址 DS:目标变址32+比例变址00 101 - 数据段:32位位移量 DS:32位位移量00 110 - 数据段:源变址32 DS:ESI00 111 - 数据段:目标变址32 DS:EDI01 000 - 数据段:累加32+8位位移量 DS:EAX+8位位移量01 001 - 数据段:计数32+8位位移量 DS:ECX+8位位移量01 010 - 数据段:数据32+8位位移量 DS:EDX+8位位移量01 011 - 数据段:

26、基址32+8位位移量 DS:EBX+8位位移量01 100 000 数据段:累加32+比例变址+8位位移量 DS:EAX+比例变址+8位位移量01 100 001 数据段:计数32+比例变址+8位位移量 DS:ECX+比例变址+8位位移量01 100 010 数据段:数据32+比例变址+8位位移量 DS:EDX+比例变址+8位位移量01 100 011 数据段:基址32+比例变址+8位位移量 DS:EBX+比例变址+8位位移量01 100 100 堆栈段:堆栈指针32+比例变址+8位位移量 SS:ESP+比例变址+8位位移量01 100 101 堆栈段:基址指针32+比例变址+8位位移量 SS

27、:EBP+比例变址+8位位移量01 100 110 数据段:源变址32+比例变址+8位位移量 DS:ESI+比例变址+8位位移量01 100 111 数据段:目标变址32+比例变址+8位位移量 DS:EDI+比例变址+8位位移量01 101 - 堆栈段:基址指针32+8位位移量 SS:EBP+8位位移量01 110 - 数据段:源变址32+8位位移量 DS:ESI+8位位移量01 111 - 数据段:目标变址32+8位位移量 DS:EDI+8位位移量10 000 - 数据段:累加32+32位位移量 DS:EAX+32位位移量10 001 - 数据段:计数32+32位位移量 DS:ECX+32位

28、位移量10 010 - 数据段:数据32+32位位移量 DS:EDX+32位位移量10 011 - 数据段:基址32+32位位移量 DS:EBX+32位位移量10 100 000 数据段:累加32+比例变址+32位位移量 DS:EAX+比例变址+32位位移量10 100 001 数据段:计数32+比例变址+32位位移量 DS:ECX+比例变址+32位位移量10 100 010 数据段:数据32+比例变址+32位位移量 DS:EDX+比例变址+32位位移量10 100 011 数据段:基址32+比例变址+32位位移量 DS:EBX+比例变址+32位位移量10 100 100 堆栈段:堆栈指针32

29、+比例变址+32位位移量 SS:ESP+比例变址+32位位移量10 100 101 堆栈段:基址指针32+比例变址+32位位移量 SS:EBP+比例变址+32位位移量10 100 110 数据段:源变址32+比例变址+32位位移量 DS:ESI+比例变址+32位位移量10 100 111 数据段:目标变址32+比例变址+32位位移量 DS:EDI+比例变址+32位位移量10 101 - 堆栈段:基址指针32+32位位移量 SS:EBP+32位位移量10 110 - 数据段:源变址32+32位位移量 DS:ESI+32位位移量10 111 - 数据段:目标变址32+32位位移量 DS:EDI+3

30、2位位移量指令代码对照表说明一、字段说明 指令内码是中文汇编语言程序使用的指令内部代码,它是一个以数字编号为主体的字符串。中文名称是中文汇编程序使用的指令名称。英文名称是对应指令的英文名称。操作数类型是指令操作数的种类,它包括:无操作数;单操作数中的单寄存器、单内存和单立即数;双操作数中的寄存器到寄存器、内存到寄存器、立即数到寄存器、寄存器到内存,立即数到内存;三操作数中的寄存器到寄存器到寄存器、立即数到寄存器到寄存器、立即数到内存到寄存器、立即数到寄存器到内存。还有几种特例种类,是寄存器被指定为累加器或是计数器寄存器。操作码是唯一代表本指令意义的二进制代码,表中用十六进制数表示。模数是“带模

31、数的寄存器和寄/内操作数”字节的最前两位数,用来指定“寄/内”位是寄存器还是内存地址及内存位移量。操作数是指令的操作数具体表现形式,比如操作数类型是寄存器到寄存器,那么就可能是8位寄存器到8位寄存器或者16位寄存器到16寄存器等,具体请参照对应表。操作数大小是操作数的长度,通常是字节(Byte)、字(Word)或双字(Dword),也有一些特有的指令的操作数大小为四字或更长的操作数。符号是指指令的操作数是否有正负符号之分,如果有则指令操作码的倒数第二位表示符号位。方向是指指令的源操作数与目标操作数是从左到右还是从右到左的关系,0表示从左到右,1表示从右到左。芯片型号是指令适用的芯片类型,有80

32、86、386、Pentium 、AMD等值。操作数指令表示此指令的操作码中是否含有操作数,此类操作数通常为寄存器,且在占操作码的最后三位。操作数预设值是表示有些指令的“带模数的寄存器和寄/内操作数”的字节中,第一个寄存器(从左到右两位模数之后的三位)被预设为的定值。16位和32位字段是指令在汇编16位汇编模式下和在32汇编模式下对应的前缀,用十六进制数表示。二、简称说明 为了使表不至于过份冗长,使用下例简称来表示内容:寄-寄存器、内-内存、寄:XXX-指定的寄存器、数-立即数、数:X-定值立即数、11-8位寄存器、12-16位寄存器、13-32位寄存器、41-8位立即数、数16-16位立即数、

33、数32-32位立即数、31-8位位移量、32-16位位移量、33-32位位移量。三、其它说明 表中表示内存的方式就是使用了NASM汇编风格,所有的内存地址都用中括号“”括起来,所有没有用中括号括起来的值(除在中括号之前用来修饰操作数大小的数)都表示立即数或者寄存器。由于对内存地址操作时,并不知道操作数的大小,根据源操作数与目地操作数大小匹配的原则(除某些特例指令外),如果未能识别操作数大小的对内存操作都有必要在内存前面加操作数大小修饰,因此,在中括号前面有8、16或32数值是有来修饰操作数大小的,在汇编语言中常用byte、word或dword来修饰操作数的大小。在操作数字段中还有“=>”

34、和“<=”两组符号,它表示源操作数与目的操作数的关系,在操作数字段中,操作数的顺序是按真实的指令操作数排列,对于许多有方向性指令的,通常操作码的倒数第二位为方向位,“=>”这个符号的左边为源操作数,右边为目的操作数,“<=”符号与“=>”符号操作数相反。这样看起来比较直观,并且反映指令操作数的真实形式。对于有方向性的指令可解释为“从源操作数到目的操作数”,而对于没有方向性的指令可解释为“源操作数作用于目的操作数”。这一点有别于所有当前的汇编程序,当前的汇编程序都是以逗号“,”隔开操作数,并默认从左到右或从右到左为源操作数到目的操作数的顺序。指令代码对照表中文名称英文名称

35、操作数操作码模数寄存器1寄内器位移量立即数符号方向芯片型号16位32位调整加AAA0x378086调整除AAD0xD50A8086调整除AAD数80xD5110Pentium调整乘AAM0xD40A8086调整乘AAM数80xD410Pentium调整减AAS0x3F8086进位加ADC寄:累加08<=数80x141038086进位加ADC寄:累加16<=数160x1510380860x66进位加ADC寄:累加32<=数320x151033860x66进位加ADC寄8=>寄80x10111338086进位加ADC寄16=>寄160x111113380860x66进

36、位加ADC寄32=>寄320x11111333860x66进位加ADC寄8<=寄80x12111338086进位加ADC寄16<=寄160x131113380860x66进位加ADC寄32<=寄32066进位加ADC寄8<= 寄160x120015380860x67进位加ADC寄8<=寄320x12001533860x67进位加ADC寄16<=寄160x130015380860x6667进位加ADC寄16<=寄320670x66进位加ADC寄32<= 寄16066

37、0x67进位加ADC寄32<=寄3206667进位加ADC寄8<= 寄16+位移80x1201159380860x67进位加ADC寄8<=寄32+位移80x120115933860x67进位加ADC寄16<=寄16+位移80x1301159380860x6667进位加ADC寄16<=寄32+位移80x130115933860x670x66进位加ADC寄32<= 寄16+位移80x130115933860x660x67进位加ADC寄32<=寄32+位移80x130115933860x6667进位加ADC寄8<= 寄16+位

38、移160x1210159380860x67进位加ADC寄8<=寄32+位移320x121015933860x67进位加ADC寄16<=寄16+位移160x1310159380860x6667进位加ADC寄16<=寄32+位移320x131015933860x670x66进位加ADC寄32<= 寄16+位移160x131015933860x660x67进位加ADC寄32<=寄32+位移320x131015933860x6667进位加ADC寄16<=数80x8311010310有380860x66进位加ADC寄32<=数80x8311010310有3386

39、0x66进位加ADC寄8<=数80x801101031038086进位加ADC寄16<=数160x8111010310380860x66进位加ADC寄32<=数320x811101031033860x66进位加ADC寄8=>寄160x100015380860x67进位加ADC寄8=>寄320x10001533860x67进位加ADC寄16=>寄160x110015380860x6667进位加ADC寄16=> 寄320x11001533860x670x66进位加ADC寄32=> 寄160x11001533860x660x67进位加ADC寄32=&g

40、t; 寄320x11001533860x6667进位加ADC寄8=>寄16+位移80x1001159380860x67进位加ADC寄8=>寄32+位移80x100115933860x67进位加ADC寄16=>寄16+位移80x1101159380860x6667进位加ADC寄16=> 寄32+位移80x110115933860x670x66进位加ADC寄32=> 寄16+位移80x110115933860x660x67进位加ADC寄32=> 寄32+位移80x110115933860x6667进位加ADC寄8=>寄16+位移160x1010159380860x67进位加ADC寄8=>寄32+位移320x101015933860x67进位加ADC寄16=>寄16+位移160x1110159380860x6667进位加ADC寄16=> 寄32+位移320x111015933860x670x66进位加ADC寄32=&

温馨提示

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

评论

0/150

提交评论