




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 2 28 可编辑 1 Thumb指令集 2020 2 28 可编辑 2 Thumb指令 Thumb指令集可以看作是ARM指令压缩形式的子集 它是为减小代码量而提出的 具有16位的代码密度 Thumb指令体系不完整 只支持通用功能 必要时仍需要使用ARM指令 如进入异常时 2020 2 28 可编辑 3 简单的Thumb程序 功能 使用BX指令切换处理器状态AREAExample8 CODE READONLYENTRYCODE32ARM CODEADRR0 THUMB CODE 1BXR0 跳转并切换处理器状态CODE16THUMB CODEMOVR0 10 R0 10MOVR1 20 R1 20ADDR0 R1 R0 R0 R1B END 在Thumb程序段之前要用CODE16声明 2020 2 28 可编辑 4 Thumb指令集 1 Thumb指令集与ARM指令集的区别52 存储器访问指令73 数据处理指令254 分支指令575 杂项指令626 伪指令64 2020 2 28 可编辑 5 Thumb指令集与ARM指令集的区别 Thumb指令集较ARM指令集有如下限制 只有B指令可以条件执行 其它指令都不能条件执行 分支指令的跳转范围有更多限制 数据处理指令的操作结果必须放入其中一个 单寄存器访问指令 只能操作R0 R7 LDM和STM指令可以对R0 R7的任何子集进行操作 2020 2 28 可编辑 6 Thumb指令集 1 Thumb指令集与ARM指令集的区别2 存储器访问指令3 数据处理指令4 分支指令5 杂项指令6 伪指令 2020 2 28 可编辑 7 Thumb存储器访问指令 单寄存器访问指令 2020 2 28 可编辑 8 LDR和STR 加载 存储指令根据指令的寻址方式不同 可以分为以下三类 立即数偏移寻址 寄存器偏移寻址 PC或SP相对偏移寻址 Thumb存储器访问指令 2020 2 28 可编辑 9 单寄存器访问指令 立即数偏移寻址 以这种寻址方式对存储器访问时 存储器的地址以一个寄存器的内容为基址 再偏移一个立即数后指明 指令格式如下 LDRRd Rn immed 5 4 加载内存中的字数据到寄存器Rd中STRRd Rn immed 5 4 将Rd中的字数据存储到指定地址的内存中LDRHRd Rn immed 5 2 加载内存中的半字数据到寄存器Rd的低16位中STRHRd Rn immed 5 2 存储Rd中的低16位半字数据到指定的内存单元LDRBRd Rn immed 5 1 加载内存中的字节数据到寄存器Rd中STRBRd Rn immed 5 1 存储Rd中的低8位字节数据到指定的内存单元其中 Rd表示加载或存储的寄存器 必须为R0 R7 Rn表示基址寄存器 必须为R0 R7 immed 5 N表示立即数偏移量 其取值范围为 0 31 N 2020 2 28 可编辑 10 单寄存器访问指令 立即数偏移指令编码 指令执行的操作码 0110b LDR STR指令 1000b LDRH STRH指令 0111b LDRB STRB指令 L用于区别加载 L为1 或存储 L为0 Immed 5 5位无符号立即数偏移 Rn 基址寄存器 Rd 源或目标寄存器 2020 2 28 可编辑 11 单寄存器访问指令 立即数偏移寻址 注意 进行字数据访问时 必须保证传送地址为32位对齐 进行半字数据访问时 必须保证传送地址为16位对齐 应用示例 LDRR0 R1 0 x4 STRR3 R4 LDRHR5 R0 0 x02 STRHR1 R0 0 x08 LDRBR3 R6 20 STRBR1 R0 31 2020 2 28 可编辑 12 单寄存器访问指令 寄存器偏移寻址 这种寻址方式是以一个寄存器的内容为基址 以另一个寄存器的内容为偏移量 两者相加作为存储器的地址 指令格式如下 LDRRd Rn Rm 加载一个字数据STRRd Rn Rm 存储一个字数据LDRHRd Rn Rm 加载一个无符号半字数据STRHRd Rn Rm 存储一个无符号半字数据LDRBRd Rn Rm 加载一个无符号字节数据STRBRd Rn Rm 存储一个无符号字节数据LDRSHRd Rn Rm 加载一个有符号半字数据LDRSBRd Rn Rm 存储一个有符号半字数据其中 Rd表示加载或存储的寄存器 必须为R0 R7 Rn表示基址寄存器 必须为R0 R7 Rm表示内含数偏移量的寄存器 必须为R0 R7 2020 2 28 可编辑 13 单寄存器访问指令 寄存器偏移指令编码 指令执行的操作码 00b LDR STR指令 01b LDRH STRH指令 10b LDRB STRB指令 L用于区别加载 L为1 或存储 L为0 Rm 偏移量寄存器 Rn 基址寄存器 Rd 源或目标寄存器 说明 当opcode位为11b时 L位为0代表指令 LDRSB L位为1代表指令 LDRSH 2020 2 28 可编辑 14 单寄存器访问指令 寄存器偏移寻址 注意 进行字数据访问时 必须保证传送地址为32位对齐 进行半字数据访问时 必须保证传送地址为16位对齐 应用示例 LDRR3 R1 R0 STRR1 R0 R2 LDRHR6 R0 R1 STRHR0 R4 R5 LDRBR2 R5 R1 STRBR1 R3 R2 LDRSHR7 R6 R3 LDRSBR5 R7 R2 2020 2 28 可编辑 15 单寄存器访问指令 相对偏移寻址 这种寻址方式是以PC或SP寄存器的内容为基址 以一个立即数为偏移量 两者相加作为存储器的地址 指令格式如下 LDRRd PC immed 8 4 LDRRd labelLDRRd SP immed 8 4 STRRd SP immed 8 4 其中 Rd表示加载或存储的寄存器 必须为R0 R7 immed 8 4表示偏移量 取值范围是 0 255 4 label表示程序相对偏移表达式 Label必须在当前指令之后的1KB范围内 2020 2 28 可编辑 16 单寄存器访问指令 相对偏移指令编码 L 用于区别加载 L为1 或存储 L为0 Rd 目标或源寄存器 immed8 偏移量 PC相对偏移LDR指令编码 SP相对偏移LDR STR指令编码 2020 2 28 可编辑 17 注意 以PC作为基地址的相对偏移寻址指令只有LDR 而没有STR指令 应用示例 LDRR0 PC 0 x08 读取PC 0 x08地址上的字数据 保存到R0中LDRR7 LOCALDAT 读取LOCALDAT地址上的 字数据 保存到R7中LDRR3 SP 1020 读取SP 1020地址上的字数据 保存到R3中STRR2 SP 存储R2寄存器的数据到SP 指向的存储单元 偏移量为0 单寄存器访问指令 相对偏移寻址 2020 2 28 可编辑 18 PUSH和POP 寄存器入栈及出栈指令 实现低寄存器和可选的LR寄存器入栈及低寄存器和可选的PC寄存器出栈操作 堆栈地址由SP寄存器设置 堆栈是满递减堆栈 2020 2 28 可编辑 19 寄存器入栈及出栈指令 PUSH reglist LR POP reglist PC 其中 reglist入栈 出栈低寄存器列表 即R0 R7 LR入栈时的可选寄存器 PC出栈时的可选寄存器 指令编码 指令格式 L用于区别出栈 L为1 或入栈 L为0 R用于区别操作寄存器中是否有LR PC寄存器 有则R为1 否则为0 2020 2 28 可编辑 20 PUSH reglist LR POP reglist PC 其中 reglist入栈 出栈低寄存器列表 即R0 R7 LR入栈时的可选寄存器 PC出栈时的可选寄存器 指令格式 应用示例 PUSH R0 R7 LR 将低寄存器R0 R7全部入栈 LR也入栈POP R0 R7 PC 将堆栈中的数据弹出到 低寄存器R0 R7及PC中 寄存器入栈及出栈指令 2020 2 28 可编辑 21 LDMIA和STMIA 多寄存器加载 存储指令 可以实现在一组寄存器和一块连续的内存单元之间传输数据 LDMIA为加载多个寄存器 STMIA为存储多个寄存器 使用它们允许一条指令传送8个低寄存器R0 R7的任何子集 2020 2 28 可编辑 22 多寄存器加载 存储指令 LDMIARn reglistSTMIARn reglist其中 Rn加载 存储的起始地址寄存器 Rn必须为R0 R7 reglist加载 存储的寄存器列表 寄存器必须为R0 R7 指令编码 指令格式 L用于区别加载 L为1 还是存储 L为0 2020 2 28 可编辑 23 应用示例 LDMIAR0 R2 R7 加载R0指向的地址上的多字数据 保存到R2 R7中 R0的值更新 STMIAR1 R2 R7 将R2 R7的数据存储到R1指向的 地址上 R1值更新 LDMIA STMIA的主要用于数据复制 参数传送等 进行数据传送时 每次传送后地址加4 若Rn在寄存器列表中 对于LDMIA指令 Rn的最终值是加载的值 而不是增加后的地址 对于STMIA指令 若Rn是寄存器列表中的最低数字的寄存器 则Rn存储的值为Rn初值 其它情况不可预知 多寄存器加载 存储指令 2020 2 28 可编辑 24 Thumb指令集 1 Thumb指令集与ARM指令集的区别2 存储器访问指令3 数据处理指令4 分支指令5 杂项指令6 伪指令 2020 2 28 可编辑 25 Thumb数据处理指令 Thumb数据处理指令涵盖了编译器需要的大多数操作 大部分的Thumb数据处理指令采用2地址格式 不能在单指令中同时完成一个操作数的移位及一个ALU操作 所以数据处理操作比ARM状态的更少 并且访问寄存器R8 R15受到限制 数据处理指令分为两类 数据传送指令算术逻辑运算指令 2020 2 28 可编辑 26 数据传送指令 2020 2 28 可编辑 27 MOV指令将8位立即数或寄存器传送到目标寄存器中 其指令格式如下 数据传送指令 MOV MOVRd exprMOVRd Rm其中 Rd目标寄存器 MOVRd expr时 Rd必须在R0 R7之间 exper8位立即数 即0 255 Rm源寄存器 为R0 R15 指令编码 立即数传送 指令编码 寄存器传送 2020 2 28 可编辑 28 注意 MOVRd expr 指令会更新N和Z标志 对标志C和V无影响 MOVRd Rm 指令 若Rd或Rm是高寄存器 R8 R15 则标志不受影响 若Rd或Rm都是低寄存器 R0 R7 则更新标志N和Z 且清除标志C和V 应用示例 MOVR1 0 x10 R1 0 x10MOVR0 R8 R0 R8MOVPC LR PC LR 子程序返回 数据传送指令 MOV 2020 2 28 可编辑 29 数据传送指令 MVN MVN指令将寄存器Rm按位取反后传送到目标寄存器Rd中 指令的执行会更新N和Z标志 对标志C和V无影响 其指令格式如下 MVNRd Rm其中 Rd目标寄存器 MOVRd expr时 Rd必须在R0 R7之间 Rm源寄存器 为R0 R15 指令编码 2020 2 28 可编辑 30 应用示例 MVNR1 R2 将R2取反 结果存于R1 MVNRd Rm其中 Rd目标寄存器 MOVRd expr时 Rd必须在R0 R7之间 Rm源寄存器 为R0 R15 MVN指令将寄存器Rm按位取反后传送到目标寄存器Rd中 指令的执行会更新N和Z标志 对标志C和V无影响 其指令格式如下 数据传送指令 MVN 2020 2 28 可编辑 31 数据传送指令 NEG NEGRd Rm其中 Rd目标寄存器 必须在R0 R7之间 Rm源寄存器 为R0 R15 指令编码 NEG指令将寄存器Rm乘以 1后传送到目标寄存器Rd中 指令会更新N Z C和V标志 其指令格式如下 2020 2 28 可编辑 32 NEGRd Rm其中 Rd目标寄存器 必须在R0 R7之间 Rm源寄存器 为R0 R15 NEG指令将寄存器Rm乘以 1后传送到目标寄存器Rd中 指令会更新N Z C和V标志 其指令格式如下 应用示例 NEGR1 R0 R1 R0 数据传送指令 NEG 2020 2 28 可编辑 33 算术逻辑运算指令 算术逻辑指令包括以下几类 算术指令逻辑运算指令移位指令比较指令 2020 2 28 可编辑 34 ADD指令将两个数据相加 结果保存到Rd寄存器中 算术运算指令 ADD ADDRd Rn RmADDRd Rn expr3ADDRd expr8其中 Rd目标寄存器 必须在R0 R7之间 Rn第1个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 expr33位立即数 即0 7 expr88位立即数 即0 255 低寄存器的ADD指令格式 应用示例 ADDR1 R1 R0 R1 R0 R1ADDR1 R1 7 R1 R1 7ADDR1 200 R1 R1 200 2020 2 28 可编辑 35 ADD指令将两个数据相加 结果保存到Rd寄存器中 ADDRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 Rm第2个操作数寄存器 高或低寄存器的ADD指令格式 应用示例 ADDR1 R0 R1 R1 R0 算术运算指令 ADD 2020 2 28 可编辑 36 ADD指令将两个数据相加 结果保存到Rd寄存器中 ADDSP expr其中 SP目标寄存器 也是第一个操作数寄存器 expr立即数 在 508 508之间的4的整数倍的数 SP操作的ADD指令格式 应用示例 ADDSP 500 SP SP 500 算术运算指令 ADD 2020 2 28 可编辑 37 SUB指令将两个数据相减 结果保存到Rd寄存器中 算术运算指令 SUB SUBRd Rn RmSUBRd Rn expr3SUBRd expr8其中 Rd目标寄存器 必须在R0 R7之间 Rn第1个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 expr33位立即数 即0 7 expr88位立即数 即0 255 低寄存器的SUB指令格式 应用示例 SUBR1 R1 R0 R1 R1 R0SUBR1 R1 7 R1 R1 7SUBR1 200 R1 R1 200 2020 2 28 可编辑 38 SUB指令将两个数据相减 结果保存到Rd寄存器中 SUBSP expr其中 SP目标寄存器 也是第一个操作数寄存器 expr立即数 在 508 508之间的4的整数倍的数 SP操作的SUB指令格式 应用示例 SUBSP 380 SP SP 380 算术运算指令 SUB 2020 2 28 可编辑 39 ADC指令将Rm的值相加 再加上CPSR中的C条件标志位 结果保存到Rd寄存器 算术运算指令 ADC ADCRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 ADC指令格式 应用示例 64位加法 ADDR0 R2ADCR1 R3 R1 R0 R1 R0 R3 R2 2020 2 28 可编辑 40 SBC指令用寄存器Rd减去Rm 再减去CPSR中的C条件标志位的非 结果保存到Rd寄存器 算术运算指令 SBC SBCRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 SBC指令格式 应用示例 64位减法 SUBR0 R2SBCR1 R3 R1 R0 R1 R0 R3 R2 2020 2 28 可编辑 41 MUL乘法指令用寄存器Rd乘以Rm 结果保存到Rd寄存器 算术运算指令 MUL MULRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 MUL指令格式 应用示例 MULR0 R1 R0 R0 R1 2020 2 28 可编辑 42 AND指令将寄存器Rd的值与寄存器Rm的值按位作逻辑 与 操作 结果保存到Rd寄存器中 逻辑运算指令 AND ADDRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 AND指令格式 应用示例 MOVR1 0 x0FANDR0 R1 R0 R0 R1 清零R0高28位 2020 2 28 可编辑 43 ORR指令将寄存器Rd的值与寄存器Rn的值按位作逻辑 或 操作 结果保存到Rd寄存器中 逻辑运算指令 ORR ORRRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 ORR指令格式 应用示例 MOVR1 0 x0FORRR0 R1 R0 R0 R1 置位R0低4位 2020 2 28 可编辑 44 EOR指令将寄存器Rd的值与寄存器Rn的值按位作逻辑 异或 操作 结果保存到Rd寄存器中 逻辑运算指令 EOR EORRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 EOR指令格式 应用示例 MOVR1 0 x0FEORR0 R1 R0 R0 R1 取反R0低4位 2020 2 28 可编辑 45 BIC指令将寄存器Rd的值与寄存器Rm的值的反码作逻辑 与 操作 结果保存到Rd寄存器中 逻辑运算指令 BIC BICRd Rm其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rm第2个操作数寄存器 必须在R0 R7之间 BIC指令格式 应用示例 MOVR1 0 x02BICR0 R1 清零R0的第2位 其它位不变 2020 2 28 可编辑 46 ASR指令将数据算术右移 将符号位拷贝到左侧空出的位 移位结果保存到Rd寄存器中 移位指令 ASR ASRRd RsASRRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 32 ASR指令格式 若移位位数为32 则Rd清零 最后移出的位保留在标志C中 若移位位数大于32 则Rd和标志C均被清零 若移位位数为0 则不影响C标志 2020 2 28 可编辑 47 ASR指令将数据算术右移 将符号位拷贝到左侧空出的位 移位结果保存到Rd寄存器中 ASRRd RsASRRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 32 ASR指令格式 应用示例 ASRR1 R2ASRR3 R1 2 移位指令 ASR 2020 2 28 可编辑 48 LSL指令将数据逻辑左移 空位清零 移位结果保存到Rd寄存器中 移位指令 LSL LSLRd RsLSLRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 31 LSL指令格式 若移位位数为32 则Rd清零 最后移出的位保留在标志C中 若移位位数大于32 则Rd和标志C均被清零 若移位位数为0 则不影响C标志 2020 2 28 可编辑 49 LSL指令将数据逻辑左移 空位清零 移位结果保存到Rd寄存器中 LSLRd RsLSLRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 31 LSL指令格式 应用示例 LSLR6 R7LSLR1 R6 2 移位指令 LSL 2020 2 28 可编辑 50 LSR指令将数据逻辑右移 空位清零 移位结果保存到Rd寄存器中 移位指令 LSR LSRRd RsLSRRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 32 LSR指令格式 若移位位数为32 则Rd清零 最后移出的位保留在标志C中 若移位位数大于32 则Rd和标志C均被清零 若移位位数为0 则不影响C标志 2020 2 28 可编辑 51 LSR指令将数据逻辑右移 空位清零 移位结果保存到Rd寄存器中 LSRRd RsLSRRd Rm expr其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间Rm立即数移位的源寄存器 必须在R0 R7之间expr立即数移位位数 值为1 32 LSR指令格式 应用示例 LSRR3 R0LSRR5 R2 2 移位指令 LSR 2020 2 28 可编辑 52 ROR指令将数据循环右移 寄存器右侧移出的位放入左侧空出的位上 移位结果保存到Rd寄存器中 移位指令 ROR RORRd Rs其中 Rd目标寄存器 也是第一个操作数寄存器 必须在R0 R7之间 Rs寄存器控制移位中包含移位位数的寄存器 必须在R0 R7之间 ROR指令格式 应用示例 RORR3 R0 2020 2 28 可编辑 53 CMP指令使用寄存器Rn的值减去第二个操作数的值 根据操作的结果更新CPSR中的N Z C和V标志位 比较指令 CMP CMPRn RmCMPRn expr其中 Rn第一个操作数寄存器 必须在R0 R7之间 Rm第二个操作数寄存器 必须在R0 R7之间 expr立即数 值为0 255 ROR指令格式 应用示例 CMPR1 10 R1与10比较 设置相关标志位CMPR1 R2 R1与R2比较 设置相关标志位 2020 2 28 可编辑 54 CMN指令使用寄存器Rn的值加上寄存器Rm的值 根据操作的结果更新CPSR中的N Z C和V标志位 比较指令 CMN CMNRn Rm其中 Rn第一个操作数寄存器 必须在R0 R7之间 Rm第二个操作数寄存器 必须在R0 R7之间 ROR指令格式 应用示例 CMNR0 R2 R0与 R2比较 设置相关标志位 2020 2 28 可编辑 55 TST指令将寄存器Rn的值与寄存器Rm的值按位作逻辑 与 操作 根据操作的结果更新CPSR中的N Z C和V标志位 比较指令 TST TSTRn Rm其中 Rn第一个操作数寄存器 必须在R0 R7之间 Rm第二个操作数寄存器 必须在R0 R7之间 TST指令格式 应用示例 MOVR0 0 x01TSTR1 R0 判断R1的最低位是否为0 2020 2 28 可编辑 56 Thumb指令集 1 Thumb指令集与ARM指令集的区别2 存储器访问指令3 数据处理指令4 分支指令5 杂项指令6 伪指令 2020 2 28 可编辑 57 Thumb分支指令 2020 2 28 可编辑 58 B指令跳转到指定的地址执行程序 它是Thumb指令集中的唯一有条件执行指令 如果使用了条件执行 那么跳转范围在 252 256字节内 如果没有使用条件执行 那么跳转范围在 2K内 分支指令 B B cond label其中 label表示程序标号 B指令格式 应用示例 BWAITB WAITB标号在当前指令的 2K范围内BEQLOOP1 LOOP1标号在当前指令的 252 256范围内 2020 2 28 可编辑 59 BL指令在跳转到指定地址执行程序前 将下一条指令的地址拷贝到R14链接寄存器中 分支指令 BL BLlabel其中 label表示程序标号 BL指令格式 注意 由于BL指令通常需要大的地址范围 很难用16位指令格式实现 为此 Thumb采用两条这样的指令组合成22位半字偏移 符号扩展为32位 使指令转移范围为 4MB 应用示例 反汇编代码 ADDR0 R1BLRstInit 0 x1809 addr1 r1 r0 0 xf9dcf000 blRstInit 32位长的机器码 2020 2 28 可编辑 60 BX指令是带状态切换的分支指令 跳转地址由Rm指定 同时根据Rm的最低位的值切换处理器状态 当最低两位均为0时 切换到ARM状态 分支指令 BX BXRm其中 Rm保存有目标地址的寄存器 BX指令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖南湘潭市雨湖区招聘教师80人模拟试卷含答案详解
- 2025年潍坊职业学院高层次高技能人才引进(招聘)(10人)模拟试卷及一套完整答案详解
- 2025贵州黔南州瓮安县卫生健康局招聘公益性岗位人员2人模拟试卷带答案详解
- 2025广东广州市黄埔区老人院招聘5人考前自测高频考点模拟试题及答案详解(有一套)
- 2025广东阳江市阳春市统计局招聘编外人员1人模拟试卷附答案详解(典型题)
- 2025年四川省成都市青白江区七所“两自一包”公办学校招聘教师(152人)模拟试卷及完整答案详解1套
- 2025年合肥庐阳科技创新集团有限公司招聘6人考前自测高频考点模拟试题含答案详解
- 2025湖南邵阳公安局警务辅助人员招聘126人模拟试卷有完整答案详解
- 2025北京市第十九中学招聘考前自测高频考点模拟试题及答案详解(新)
- 2025湖北正源电力集团有限公司招聘146人(第三批)模拟试卷及答案详解一套
- 国企食堂承包服务方案(3篇)
- T-CAV 016-2025 T-CAS 1049-2025 二代测序法在灭活疫苗候选株筛选应用的技术要求
- 造林工技师、高级技师参考题及答案
- 艾滋病的诊断和鉴别诊断
- 云鹤电商公司管理制度
- 教育行业电销话术
- 2025-2030全球及中国汽车后桥转向系统行业市场现状供需分析及投资评估规划分析研究报告
- 租房安全协议合同书
- 智能书架解决方案
- 五金厂生产管理方案
- 江苏省南京师范大学附属中学2023-2024学年高二上学期期初测试数学试题
评论
0/150
提交评论