




已阅读5页,还剩79页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2013 08GLUT C 1 1 480X86处理器的寄存器 2013 08GLUT C 2 1 4 18086处理器的寄存器 1 4 1 18086的寄存器8086是16位处理器 16位数据总线宽度 内部寄存器 ALU都是16位的 地址总线 20位 以字节为单位对存储器进行编制 可寻址220 1M字节 我们只讨论与程序设计有关的寄存器 2013 08GLUT C 3 8086的编程结构 2013 08GLUT C 4 与程序设计有关的寄存器 4 4个16位数据寄存器可分为8个8位寄存器使用 2013 08GLUT C 5 从功能上 8086分为两部分 即总线接口单元 businterfaceunit BIU 执行单元 executionunit EU 2013 08GLUT C 6 1 执行单元EU 执行单元EU的功能只是负责执行指令 执行的指令从指令队列缓冲器中直接得到 执行指令时若需要从存储器或I O端口读写操作数时 由EU向BIU发出请求 再由BIU对存储器或I O端口进行访问 2013 08GLUT C 7 16位算术逻辑单元 ALU 进行算术和逻辑运算 16位标志寄存器FLAGS 存放CPU运算的状态和控制标志 数据暂存寄存器 暂存参加运算的数据 通用寄存器 包括4个16位数据寄存器AX BX CX DX和4个16位指针与变址寄存器SP BP与SI DI EU控制电路 它是控制 定时与状态逻辑电路 接收从BIU中指令队列取来的指令 经过指令译码形成各种定时控制信号 对EU的各个部件实现特定的定时操作 1 执行单元EU由下列部件组成 2013 08GLUT C 8 2 EU的任务 执行指令 它负责从BIU的指令队列中取指令 并对指令进行译码 根据指令的要求向EU内部各部件发出控制信号 执行指令规定的操作功能 2013 08GLUT C 9 3 EU的寄存器 包括通用寄存器 A B C D 堆栈指针寄存器SP地址指针寄存器BP SI DI标志寄存器FLAGS这些寄存器是程序设计中频繁使用的寄存器 2013 08GLUT C 10 4个通用寄存器 四个16位通用寄存器 AX BX CX DX 16位字长这四个通用寄存器每个都可以作为2个独立的8位寄存器使用 8位寄存器符号 AH AL BH BL CH CL DH DL 2013 08GLUT C 11 4个专用寄存器 即基地址指针寄存器BP BasePointer 堆栈指针寄存器SP StackPointer 源变址寄存器SI SourceIndex 目的变址寄存器DI DestinationIndex 2013 08GLUT C 12 标志寄存器 标志寄存器共有16位 其中7位未用 所用的各位含义如下 根据功能 8086的标志可以分为两类 状态标志控制标志 2013 08GLUT C 13 状态标志有6个 即SF ZF PF CF AF和OF 符号标志SF SignFlag 负数SF 1 零标志ZF ZeroFlag 运算结果 0 ZF 1 奇偶标志PF ParityFlag 运算结果低8位中1的个数为偶数 PF 1 PE 低8位中1的个数为奇数 PF 0 PO 进位标志CF CarryFlag 最高位产生进位CF 1 辅助进位标志 AuxiliarycarryFlag 溢出标志OF OverflowFlag 算术运算产生溢出 8位运算结果超出 128 127 16位运算结果超出 32768 32767 2013 08GLUT C 14 控制标志有3个 即 方向标志DF directionflag 中断允许标志IF interruptenableflag 跟踪标志TF trapflag 又称为单步标志80X86的标志寄存器各位可以通过程序进行修改 由于它特别重要 为防止意外被修改 因此对标志寄存器的修改有特殊的指令和方法 2013 08GLUT C 15 6 标志寄存器16位寄存器 其中有7位未用 D15 D0 OFDFIFTFSFZFAFPFCF 进借位标志 奇偶标志 半进借位标志 零标志 符号标志 单步中断 中断允许 方向标志 溢出标志 1 有进 借位0 无进 借位 1 低8位有偶数个10 低8位有奇数个1 1 低4位向高4位有进 借位0 低4位向高4位无进 借位 1 结果为00 结果不为0 2013 08GLUT C 16 0101010000111001 01000101011010101001100110100011最高位 1SF 1低八位1的个数为4个PF 1运算结果不为0ZF 0低4位向前有进位AF 1最高位向前没有进位CF 0次高位向前有进位 最高位无进位CF 0 DF 1 OF 1 最高位无进位 CF 0 向高4位有进位 AF 1 2013 08GLUT C 17 例 设变量x 11101111B y 11001000B A 0101101000001010B B 0100110010100011B 请问分别执行x y和A B操作后标志寄存器中各状态位的状态如何 11101111 1100100010110111 1 010110100000101001001100101000111010011010101101 CF 0 CF 1 DF 1 DF 1 x y A B AF 1 CF 1 次高位进位信号DF 1最高位进位信号CF 1OF CFDF 0 低8位有5个1 PF 0 低8位有6个1 PF 1 2013 08GLUT C 18 2013 08GLUT C 19 2 总线接口部件 1 总线接口单元BIU的任务 依据EU的请求 完成CPU与存储器 CPU与I O设备之间的信息传送 读指令 当指令队列出现空字节 8088有1个空字节 8086有2个空字节 时 从内存取出后续指令 BIU取指令时 并不影响EU的执行 两者并行工作 大大提高了CPU的执行速度 读操作数 EU需要从内存或外设端口读取操作数时 根据EU给出的地址从内存或外设端口读取数据供EU使用 写操作数 EU的运算结果 数据或控制命令等由BIU送往指定的内存单元或外设端口 2013 08GLUT C 20 4个16位段寄存器 代码段寄存器CS CodeSegment 数据段寄存器DS DataSegment 堆栈段寄存器SS StackSegment 和附加数据段寄存器ES ExtraSegment 一个16位的指令指针寄存器IP InstructionPointer 一个20位地址加法器 6字节指令队列缓冲器 一个与EU通讯的内部寄存器以及总线控制电路等 2 总线接口单元 BIU 的组成 2013 08GLUT C 21 段寄存器8086CPU的地址引脚有20根 能提供20位的地址信息 可直接对1M个存储单元进行访问 但CPU内部可用来提供地址信息的寄存器都是16位的 那么如何用16位寄存器实现20位地址的寻址呢 3 BIU寄存器简介 2013 08GLUT C 22 8086 8088采用了分段结构的内存管理的方法 将指令代码和数据分别存储在代码段数据段堆栈段附加数据段 简城附加段 中 每一段最大64KB 216个字节 可用16位的地址寄存器管理 2013 08GLUT C 23 这些段的段基地址分别由段寄存器CS DS SS ES提供 而代码或数据在段内的偏移地址则由有关寄存器或立即数给出 2013 08GLUT C 24 代码段寄存器CS 存储程序当前使用的代码段的段地址 代码段用来存放程序的指令代码 下一条要读取指令在代码段中的偏移地址由指令指针寄存器IP提供 数据段寄存器DS 用来存放程序当前使用的数据段的段地址 一般来说 程序中所用到的原始数据 中间结果以及最终结果都存放在数据段中 2013 08GLUT C 25 堆栈段寄存器SS 用来存放程序当前所使用的堆栈段的段地址 堆栈是在存储器中开辟的一个特定区域 附加数据段寄存器ES 用来存放程序当前使用的附加数据段的段地址 附加数据段通常用于存放字符串操作时的目的字符串 2013 08GLUT C 26 程序员在编写汇编语言源程序时 应该按照上述规定将程序的各个部分放在规定的段内 每个源程序必须至少有一个代码段 而数据段 堆栈段和附加数据段则根据程序的需要决定是否设置 2013 08GLUT C 27 指令指针寄存器指令指针寄存器IP 用来存放下一条要读取的指令在代码段中的偏移地址 IP在程序运行中能自动修正 从而使其始终存放的是下一条要读取的指令在代码段的偏移地址 由于CS和IP的内容决定了程序的执行顺序 因此程序员不能直接用赋值指令对其内容进行修改 有些指令能使IP和CS的值改变 如跳转指令 或使其值压入堆栈或从堆栈中弹出恢复原值 如子程序调用指令和返回指令 2013 08GLUT C 28 20位地址加法器8086 8088CPU在对存储单元进行访问以读取指令或读 写操作数时 必须在地址总线上提供20位的地址信息 以便选中对应的存储单元 CPU的寄存器都是16位 段基址寄存器和偏移地址都是 那么 CPU是如何产生20位地址的呢 CPU提供的用来对存储单元进行访问的20位地址是由BIU中的地址加法器产生的 2013 08GLUT C 29 存储器中每个存储单元的地址可有以下两种表示方式 逻辑地址 其表达形式为 段地址 段内偏移地址 的地址 段内偏移地址又称为 有效地址EA EffectiveAddress 在读指令时 段地址由代码段寄存器CS提供 当前要读取指令在代码段中的偏移地址由指令指针寄存器IP提供 在读取或存储操作数时 根据具体操作 段地址由DS ES或SS提供 段内偏移地址由指令给出 2013 08GLUT C 30 物理地址 CPU与存储器进行数据交换时在地址总线上提供的20位地址信息称为物理地址 物理地址的形成过程如图所示 2013 08GLUT C 31 段寄存器内容左移四位后 相当于乘以10H 与16位段内偏移地址 在BIU中的地址加法器中进行相加 形成一个20位的物理地址 这就是由逻辑地址求出物理地址的方法 由逻辑地址求物理地址的公式为 物理地址 段地址 10H 段内偏移地址 例如 假设当前 CS 1000H 取出当前指令后指令指针 IP 4052H 求下一条指令的地址 1000H左移4位后为 10000H 它与4052H相加10000 4052 14052h 下一条指令所在存储单元的物理地址为14052H 2013 08GLUT C 32 指令队列缓冲器8086的指令队列有6个字节 8088的指令队列有4个字节 对8086而言 当指令队列出现2个空字节 对8088而言 指令队列出现1个空字节时 BIU就自动执行一次取指令操作 将下一条要执行的指令 1个字 从内存单元读入到指令队列 指令队列采用 先进先出 原则 按顺序存放 并按顺序取到EU中去执行 指令队列的引入使得EU和BIU可并行工作 即BIU在读指令时 并不影响EU单元执行指令 EU单元可以连续不断地直接从指令队列中取到要执行的指令代码 从而减少了CPU为取指令而等待的时间 提高了CPU的利用率 加快了整机的运行速度 2013 08GLUT C 33 二者内部结构基本相似 执行单元EU完全相同 其指令系统 寻址方式及程序设计方法都相同 区别仅在于总线接口单元BIU 归纳起来主要有以下几个方面的差异 外部数据总线位数不同 8086外部数据总线16位 8088外部数据总线8位 指令队列缓冲器大小不同 8086指令队列可容纳6个字节 而8088指令队列只能容纳4个字节 部分引脚的功能定义有所区别 3 8088CPU与8086CPU的异同 2013 08GLUT C 34 4 8086的总线周期的概念 计算机中的所有工作 都是在严格的时钟脉冲控制下进行的 总线周期 完成一次总线操作所需要的时钟周期数 一般总线操作 一次存储器读或写操作 2013 08GLUT C 35 典型的8086总线周期序列 由4个基本时钟周期和若干个等待周期 可以是0个等待周期 组成 2013 08GLUT C 36 T1状态 发地址信息 T2状态 总线的高4位输出状态信息 T3状态 高4位输出状态信息 低16位数据 T3之后 可能插入TW 存储器或外设提供 在T4状态 本总线周期结束 2013 08GLUT C 37 1 4 1 28086的引脚信号和工作模式 最大工作模式的功能 2013 08GLUT C 38 1 最小模式和最大模式的概念 1 最小模式 在系统中只有一个微处理器 所有总线控制信号都有CPU直接产生 2 最大模式 两个或多个微处理器 主处理器 协处理器 总线控制信号由专门的电路产生 与8086配合的协处理器 8087 数值运算处理器 8089 输入 输出协处理器 2013 08GLUT C 39 2 8086 8088的引脚信号和功能 注意点 8086 8088的数据线和地址线复用 8086有16根数据线 第21脚 RESET 为输入复位信号 第22引脚为 准备好 READY 信号 RD 指示读 WR 指示写操作 高4位地址和状态线复用 2013 08GLUT C 40 各引脚信号 GND V 地和电源 AD15 AD0地址 数据复用 A19 S6 A16 S3地址 状态复用 BHE S7高8位数据总线允许 状态复用 NMI非屏蔽中断输入 2013 08GLUT C 41 INTR可屏蔽中断请求信号输入 RD 读信号输出 CLK时钟输入 RESET复位信号输入 READY 准备好 信号输入 TEST 测试信号输入 MN MX 最小和最大模式控制输入带 的信号表示低电平有效 2013 08GLUT C 42 3 最小模式 引脚信号 INTA 中断响应信号输出 ALE地址锁存允许信号输出 DEN 数据允许信号 DT R 数据收发信号输出 2013 08GLUT C 43 M IO 存储器 输入输出控制信号输出 WR 写信号输出 HOLD总线保持请求信号输入 HLDA总线保持响应信号输出 2013 08GLUT C 44 8086在最小模式下的典型配置 2013 08GLUT C 45 8086的引脚MN nMAX 1 选择最小模式 在最小模式下 需要一片时钟发生器IC提供时钟 复位信号 并同步外部READY信号提供给CPU 在最小模式下 系统的全部控制信号都由8086产生 注意在硬件连接上 地址信号一定要在外部锁存 锁存器可以使用Intel的8282 也可以使用通用的74LS373 锁存控制信号 ALE数据信号是否需要驱动 要看外部接了多少器件 一般带负载能力 8个TTL负载 如果接在AD15 AD0上的逻辑电路 存储器 外设 较多 则需要用总线收发器来增加数据总线的驱动能力 驱动可使用8286 也可使用74LS245 2013 08GLUT C 46 CPU对存储器 外设的操作 读或写 由信号M nIO nRD nWR的组合确定 注意 nRD前面的小写n表示该信号RD低电平有效 画不出上划线 2013 08GLUT C 47 4 最大模式 最大模式 接地 2013 08GLUT C 48 MN MAX信号接地 8086工作于最大模式 引脚信号 QS1 QS0指令队列状态信号输出 2013 08GLUT C 49 S2 S1 S0 总线周期状态信号输出 它对应的总线操作如表2 4所示 总线控制器8288就是利用CPU提供的这些状态信号来产生计算机系统的相关控制信号 2013 08GLUT C 50 LOCK lock 总线封锁信号输出 RQ GT1 RQ GT0 总线请求信号输入 总线授权信号输出8086在最大模式下的典型电路如下图 2013 08GLUT C 51 2013 08GLUT C 52 1 4 280286的寄存器 通用寄存器 段寄存器 指令指针 堆栈指针等与8086完全相同AX BX CX DX SP BP SI DI CS DS ES SS IP四个通用寄存器AX BX CX DX可做16位通用寄存器使用 也可作8位寄存器使用 AH AL BH BL CH CL DH DL区别 1 标志寄存器增加了两个标志任务嵌套标志NT D14 和I O特权级标志IOPL D13 D12 2 增加了一个机器状态字寄存器MSW 2013 08GLUT C 53 53 80286增加了2位 6 标志寄存器16位寄存器 其中有7位未用 D15 D0 进借位标志 奇偶标志 半进借位标志 零标志 符号标志 单步中断 中断允许 方向标志 溢出标志 1 有进 借位0 无进 借位 1 低8位有偶数个10 低8位有奇数个1 1 低4位向高4位有进 借位0 低4位向高4位无进 借位 1 结果为00 结果不为0 任务嵌套标志 IO特权层标志 2013 08GLUT C 54 1 4 380386处理器的寄存器 80386有2累寄存器 基本寄存器和系统寄存器80386有三种工作方式 实地址方式 realaddressmode 保护虚拟地址方式 protectedvirtualaddressmode 即保护方式虚拟8086方式 virtual8086mode 2013 08GLUT C 55 1 基本寄存器 1 通用寄存器将8086的8个通用寄存器AX BX CX DX SP BP SI DI扩展为32位寄存器 低16位就是8086的寄存器 32位寄存器符号 EAX EBX ECX EDX ESP EBP ESI EDI仍然可用于16位寄存器 做十六位寄存器使用时 符号为AX BX CX DX SP BP SI DIAX BX CX DX可以作为8个8位寄存器使用 符号AH AL BH BL CH CL DH DL 2013 08GLUT C 56 2 指令指针和标志寄存器 扩展为32位 符号 EIP EFLAGS 它们的低16位就是8086的对应寄存器IP FLAGS 仍然可使用16位寄存器IP FLAGS在实模式下只能使用IP和FLAGS在标志寄存器高位字 D31 D16 增加了虚拟8086方式标志VM和恢复标志RF 2013 08GLUT C 57 3 段寄存器 除了与8086相同的4个段寄存器CS DS SS ES外 增加了两个16位段寄存器FS GS FS GS与ES的作用相同 在实地址模式 段寄存器内容为段基地址在保护模式下 段寄存器作为段选择子 通过段选择子在段描述符表中选择段描述符 由段描述符给出段基地址及其他相关信息 2013 08GLUT C 58 2 系统寄存器 1 系统地址寄存器四个 GDTR 全局描述符表寄存器IDTR 中断描述符表寄存器LDTR 局部描述符表寄存器TR 任务寄存器用于保护模式下的存储器管理 2013 08GLUT C 59 2 控制寄存器四个控制寄存器 CR0 CR1 CR2 CR3 3 调试寄存器8个调试寄存器 DR0 DR7 4 测试寄存器2个测试寄存器 TR6 TR7 2013 08GLUT C 60 1 4 480486的寄存器 在80386基础上新增了3个测试寄存器 TR3 TR4 TR5对标志寄存器进行了扩充 在D18增加了一个对准检查标志AC增加了浮点处理单元及相关寄存器其他与80386相同 2013 08GLUT C 61 1 4 5Pentium的寄存器 Pentium的寄存器包括 基本寄存器 系统寄存器 浮点寄存器1 基本寄存器类似于8086 如有图所示除了段寄存器 其他寄存器扩展为32位 2013 08GLUT C 62 1 通用寄存器 8个32位通用寄存器这个通用寄存器的低16位可以作为16位寄存器使用 类似于8086处理器 AX DX还可以分为两个8位寄存器使用 2013 08GLUT C 63 2 指令指针EIP 又叫指令指示器EIP是32位的 它用来存放下一条指令的偏移地址 每取出一条指令 EIP会自动修改 指向下一条指令EIP的低16位就是8086处理器的IP IP可以单独使用在保护模式下 处理器的指令指针是32位的EIP在实地址模式下 处理器只是用16位指令指针IP 2013 08GLUT C 64 3 标志寄存器EFLAGS 标志寄存器EFLAGS为32位 2013 08GLUT C 65 65 状态标志 最基本的标志 有6个用来记录指令执行结果的辅助信息加减运算和逻辑运算指令是主要设置它们其他有些指令的执行也会相应地设置它们处理器主要使用其中5个构成各种条件 分支指令判断这些条件实现程序分支 这些标志与8086相同 2013 08GLUT C 66 2013 08GLUT C 67 67 控制标志DF 方向标志DF DirectionFlag 与8086相同 仅用于串操作指令 控制地址的变化方向设置DF 0 每次串操作后的存储器地址就自动增加 即从低地址向高地址处理数据串设置DF 1 每次串操作后的存储器地址就自动减少 即从高地址向低地址处理数据串执行CLD指令设置DF 0执行STD指令设置DF 1 2013 08GLUT C 68 68 系统标志 用于控制操作系统或者核心管理程序的操作方式 A 与8086相同的 a 中断允许标志IF Interrupt enableFlag 设置IF 1 允许中断 设置IF 0禁止中断 b 陷阱标志TF TrapFlag 单步标志TF 1 处理器进入单步操作方式 每条指令执行完毕 均产生一次内部中断 利用这个内部中断 可以显示指令执行后处理器各寄存器的状态 或等待用户操作指令 DEBUG程序的单步运行方式就是将TF置1实现的 2013 08GLUT C 69 69 B 80286已经增加的2位 a I O特权层标志IOPL I OPrivilegeLevel D13 D12用于定义允许执行的I O指令的I O访问的特权级别 0级最高 3级最低 在保护模式的虚地址下 用于控制对I O地址空间的访问 如果某个当前任务的I O特权级别高于或等于IOPL中设定的级别 则可以执行该任务中的I O指令 否则产生异常中断 b 任务嵌套标志NT用于控制中断返回指令的执行 1表示当前任务被嵌套在另一个任务内 执行中断返回指令返回前一个任务 0 执行常规中断返回 2013 08GLUT C 70 70 C 在80386已增加的1位 虚拟8086方式标志 VM 1 处理器由保护模式切换到虚拟8086模式 0 处理器工作在保护模式 注 在实地址模式下 该位无用 2013 08GLUT C 71 D 恢复标志RF 该标志与测试寄存器配合使用 用于控制是否接受调试故障 1 忽略调试故障 0 接受调试故障每执行完一条指令 该位自动清0接受调试故障而调试失败时 微处理器将此位置1 强迫程序恢复执行 2013 08GLUT C 72 E 对齐检测标志 AC 在对字 双字 四字访问时 用于指示是否检查他没的启示字节的地址是否对准 所谓对准就是它们的其实字节的地址符合下述约定 字 A0 0双字 A1 0 A0 0四字 A2 0 A1 0 A0 0AC 1 且CR0的AM 1 就进行对齐检查 如果进行非对准的字 双字 四字数据访问 将产生异常中断 2013 08GLUT C 73 F CPU识别标志 ID IdentificationFlag 1 允许使用CPU识别指令CPUID读取Pentium处理器的IDG 虚拟中断标志 VIF虚拟8086模式下 中断标志IF的虚拟映像 H 虚拟中断挂起标志 VIP 1表示在虚拟8086模式下有被刮起的中断未出理 2013 08GLUT C 74 4 段寄存器 Pentium的逻辑地址仍然由段寄存器和偏移地址两部分构成 Pentium有6个段寄存器 CS DS SS ES FS GS根据运行模式 段寄存器的作用不同 物理地址的生成方式也不同 实地址模式与8086相同物理地址 段寄存器 左移4位二进制位 偏移地址 2013 08GLUT C 75 保护模式 段寄存器的内容是段选择子 段选择字的格式如下 DI 在段描述符表中检索描述符 描述符表可以有8192个描述符TI 描述符表指示标志 0 从GDT检索描述符 1 从LDT检索描述符RPL 请求特权级 0 3级 3级最低 2013 08GLUT C 76 CS 当前代码段段选择字SS 当前堆栈段段选择字DS 当前数据段段选择字ES FS GS 附加数据段段选择字 2013 08GLUT C 77 2 系统寄存器 1 系统地址寄存器 GDTR 全局表述附表寄存器 48位 1 系统地址寄存器 GDTR 全局描述符表寄存器 48位 IDTR 中断描述符表寄存器 48位 2013 08GLUT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 44651.3-2025知识管理实施指南第3部分:电力
- GB/T 46071-2025数据安全技术数据安全和个人信息保护社会责任指南
- 化工化学安全知识培训课件
- 养护员安全知识培训课件
- 别夔州官吏赏析课件
- 初识财务报表课件
- 初级中学安全培训课件
- 内部食堂厨房安全培训课件
- 初中教师安全培训教学课件
- 创新安全培训考核课件
- 格拉斯哥(GCS)昏迷评估量表(详xi操作)
- 肝硬化患者健康宣教知识
- YC/T 188-2004高速卷烟胶
- GB/T 31586.1-2015防护涂料体系对钢结构的防腐蚀保护涂层附着力/内聚力(破坏强度)的评定和验收准则第1部分:拉开法试验
- 以友辅仁教案
- 经济效益证明(模板)
- 某机库施工方案
- 生物竞赛动物学教学课件第十一章 节肢动物门
- 项目施工重大安全隐患排查表
- 材料、构配件进场检验记录
- 《Unit2 Let's talk teens》教学设计教案
评论
0/150
提交评论