




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
信息与通信工程学院微机原理软件实验报告班 级: 姓 名: 学 号: 班内序号: 时 间: 微机原理软件实验报告实验一 DEBUG 的使用一、实验目的1.掌握汇编程序的编辑,编译,连接和执行的全过程;2.学习和掌握用 DEBUG 调试程序的方法。二、 实验内容1. 用编辑软件,输入以下汇编语言源程序:DAT SEGMENTA DB 20 ;(自定) B DB 15 ;(自定)Y DB 3 DUP (0) ZDB 0, 0DAT ENDSSTA SEGMENT STACK DW 50 DUP (?)STA ENDSCOD SEGMENTASSUME CS: COD, DS: DAT STAR PROC FARPUSH DSXOR AX, AX PUSH AXMOV AX, DAT MOV DS, AX MOV AX, STA MOV SS, AX MOV AL, A MOV Z, AL MOV Z+1, AL CALL SUB1MOV AL,B- 44 -MOV Z,AL MOV Z+1,AL CALL SUB1MOV AL,A MOV Z,AL MOV AL,B MOV Z+1,AL CALL SUB1ADD WORD PTR Y,AX ADC BYTE PTRY+2,0RETSTAR ENDP SUB1 PROCMOV AL, Z MOV AH, Z+1MUL AHADD WORD PTR Y, AX ADC BYTE PTRY+2, 0RETSUB1 ENDP COD ENDS END STAR2. 通过编译,连接形成可执行文件。3. 用 DEBUG 将可执行文件调入,并进行调试。1) 用 D 命令观察数据区在内存中的具体内容,记录单元 A 和 B 的具体地址。2) 用 U 命令对目标代码反汇编,观察反汇编后的结果。注意发现源程序的起始位置, 并记录这个起始地址。3) 用 T 命令作单步跟踪调试。比较每条指令执行后的结果和原来的理解是否 一致,得出程序运行的结果:它们是写在什么单元,具体内容是什么;并判断结果是否正 确。在子程序 SUB1 的入口处设一断点,用 G 命令执行程序。 在断点处观察堆 栈的内容,比较堆栈的内容和程序返回地址是否一致。4) 用 E 命令修改单元 A,B 的内容,重新执行程序,并记录结果。5) 用 M 命令和 A 命令对程序进行修改:将主程序中最后两条指令 (ADD 和 ADC)修改为一条 CALL SUB1 指令,重新执行程序。6) 退出 DEBUG。4. 重新使用编辑软件,把源程序最后一句中的 STAR 去掉。再次生成可执行文件,并 用 DEBUG 调入内存。当使用 U 命令时,显示的结果与前一次(未加 STAR) 的结果有何 不同?三、预习题1. 熟悉常用的 DEBUG 命令。 答:2. 阅读并分析程序的功能。 答:程序完成的功能是计算两个数的完全平方和,即计算 a2 + b2 + 2ab 。3.若 SS=2000H,SP=FFFFH, 向堆栈中压入 4 字节数据后,如何用 D 命令显示压入堆栈 的内容?答:使用的命令是:-D 2000:FFFB。四、实验过程1. 编译、链接形成可执行文件:2. 用-u 进行反汇编:对照汇编代码,可得:数据段地址为 145AH:0000H,A 的偏移地址为0000H,B 的偏移地址为0001H。、 源程序起始地址为 1462H:0000H。3. 用 d 命令观察数据区中内存单元的具体内容,记录 A、B 的地址:2 中已经获得 A、B 的具体地址,分别为:145AH:0000H,145AH:0001H,用 d 命令观察后 看出 A=14H=20D,B=0FH=15D。4. 用 E 命令修改单元 A、B 的内容并用 d 命令查看,重新执行程序。A、 B 已经分别被修改为 5 和 2。 结果为 31H=49D。5. 得出程序运行结果:20*20+15*15+2*15*20=1225 对应十六进制是 04c9H结果存放在 145AH:0002H 和 145AH:0003H 中。5. 单步调试 最初寄存器内容:将 DS 压入堆栈,SP=SP-2微机原理软件实验报告将 AX 压入堆栈,SP=SP-2倒数第二行在调用子程序 CALL 003F 调用后把 IP 和 CS 压入堆栈,SP=SP-4 查看一下此时堆栈情况:子程序返回返回后把 IP 和 CS 弹出堆栈,SP=SP+4查看一下此时堆栈情况:之后过程与上述基本一致。 与理解一致。微机原理软件实验报告6. 设置断点查看堆栈:7. 修改指令通过 a 命令直接修改程序指令,通过插入 nop 使 CPU 空闲。微机原理软件实验报告8. 重新编辑译码错误,误将 A、B 变量中的数据按照指令进行译码;后续译码也错误,误将 0000按照指令进行译码为 ADD 命令四、实验总结这是微机原理软件实验的第一次实验。平时只是注重理论上的学习,上机经验很少,以 后需要加强联系。通过这次实验,我学会了汇编程序的 debug 方法,掌握了常用的 debug 命 令,汇编的调试需要深入堆栈和内存区,关心每一个地址和指令,这也体现汇编语言是底层 语言的特点。实验二 分支、循环程序设计一、 实验目的1. 开始独立进行汇编语言程序设计;2. 掌握基本分支、循环程序设计;3. 掌握最简单的 DOS 功能调用。二、实验内容1. 安排一个数据区,内存有若干个正数、负数和零。每类数的个数都不超过 9。2. 编写一个程序统计数据区中正数、负数和零的个数。3. 将统计结果在屏幕上显示。三、 预习题1. 十进制数 0-9 所对应的 ASCII 码是什么?如何将十进制数 0-9 在屏幕上显示出来?答:十进制数 09 对应的 ASCII 码是 30H39H。 在屏幕上显示的程序:MOV AL,30H MOV AH,02H INT 21H2. 如何检验一个数为正、为负或为零?你能举出多少种不同的方法?答:方法 1:将待检验数与 0 比较,根据 CMP 之后的 CF、OF、SF 等进行判断; 方法 2:将待检验数与 80H 与,判断 ZF 的值。四、 选做题统计出正奇数,正偶数,负奇数,负偶数以及零的个数。五、 实验流程图开始初始化数据区取BUFF中第一个数与0比较0=0 0JZ EQUA;=0JL SMA; MIN的十位ASCII码比较第n个 数个位ASCII码和 =把第n个数写入MINn=n+1结束2. 模块层次图PRINT PROCMAIN PROCGETNUM PROCFINDMIN PROC五、 源代码DATA SEGMENTINPUT DB 100 DUP(?)MIN DB 9-30H,9-30H ; 置最小值的初始值为99COUNT DB 0DFLAG DB 0D; 用于判断调用输入子程序是否有错;提示信息字符串STR1 DB Please input numbers:,$ STR2 DB Minimum is :,$CR DB 0DH,0AH,$; 回车换行;各种错误输入提示ERROR1 DB ERROR:Character is not valid!,$ERROR2 DB ERROR:Number must contains two digits!,$ ERROR3 DB ERROR:Number is empty!,$ERROR4 DB ERROR:Need separate char!,$ DATA ENDSSTACK SEGMENT STACK STACK;堆栈段定义DB 100 DUP(?) STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA MAIN PROC FARMOV AX,DATA MOV DS,AXMOV DX,OFFSET STR1; 调用初始提示CALL PRINTMOV DX,OFFSET CR; 回车换行CALL PRINTCALL GETNUM; 获取用户输入CMP FLAG,0; 判断输入过程是否有错JNZ EXIT; 错误则直接返回DOS MOV DX,OFFSET CR; 回车换行CALL PRINTCALL FINDMIN; 查找最小数MOV DX,OFFSET STR2; 调用输出提示CALL PRINT MOV AH,02HEXIT:MOV DL,MIN; 输出最小值的十位ADD DL,30H INT 21HMOV AH,02HMOV DL,MIN1; 输出最小值的个位ADD DL,30H INT 21HMOV AX,4C00H; 返回DOS INT 21HMAIN ENDP;-;回车换行输出字符串,入口参数为DX PRINT PROCPUSH AX MOV AH,09H INT 21HPOP AX RETPRINT ENDP;-;获取输入,出口参数为IFERROR,表示是否有错GETNUM PROCPUSH AX; 保存现场PUSH BX PUSH CX PUSH DX PUSH DIMOV DI,0; 数组偏移地址MOV CX,0; 标识数字的位数GETLOOP:MOV AH,01H INT 21HCMP AL,0DH; 和回车比较JZ EXIT1; 是回车则结束输入CMP CX,0; 数字位数为空JE CMPSPACE0CMP CX,1; 数字位数为1JE CMPSPACE1CMP CX,2; 数字位数为2JE CMPSPACE2CMPSPACE0:CMP AL,20HJE GETLOOP; 数字位数为0且输入空格则忽略,继续输入JMP ASCNUM; 不是空格就读取该字符CMPSPACE1:CMP AL,20HJE ERR2; 数字位数为1且输入空格则位数不是两位数出错JMP ASCNUM; 否则读取该字符CMPSPACE2:CMP AL,20HJNE ERR4; 数字位数为2后,不输入空格则分隔符错误XOR CX,CX; 输入空格则清零重新计数JMP GETLOOP ASCNUM:SUB AL,30H; 化为二进制数字CMP AL,0JL ERR1; 小于则无效字符CMP AL,9; 和9比较JG ERR1; 大于9则是无效字符MOV INPUTDI,AL; 保存输入的数INC COUNT; 统计输入的数字个数,为判断是否输入为两位数INC DI; 向后移动数组INC CXJMP GETLOOPERR1: ERR2: ERR3: ERR4:MOV FLAG,1; 输出错误1MOV DX,OFFSET ERROR1CALL PRINT JMP RETURNMOV FLAG,1; 输出错误2MOV DX,OFFSET ERROR2CALL PRINT JMP RETURNMOV FLAG,1; 输出错误3MOV DX,OFFSET ERROR3CALL PRINT JMP RETURNMOV FLAG,1; 输出错误4MOV DX,OFFSET ERROR4微机原理软件实验报告EXIT1:CALL PRINT JMP RETURNMOV BL,COUNT; 判断输入数的个数是否为零CMP BL,0JE ERR3;输入数目为0则输出错误并退出RETURN:POP DI; 恢复现场POP DX POP CX POP BX POP AX RETGETNUM ENDP;-;查找最小的数子程序FINDMIN PROCPUSH DI; 保护现场PUSH AX PUSH CXMOV DI,-2; 数组下标MOV CL,COUNT; 把数组长度移入CXLOP:STOMIN:ADD DI,2CMP CX,DI; 是否已经比较完毕JE EXIT2; 如果比较完毕所有数则退出MOV AH,INPUTDI;否则接着比较,移入十位数MOV AL,INPUTDI+1; 移入个位数CMP AH,MIN; 比较十位数,MIN低地址为十位JA LOP ;如果MIN小,则直接比较下一个数JE HIGHEQU ;如果十位数相等,比较个位数,再否则十位大就直接存储MOV MIN,AH MOV MIN1,ALJMP LOPHIGHEQU:CMP AL,MIN1; 比较个位数JNB LOP; 个位数比MIN大则跳到下一个数JMP STOMIN; 否则将当前数写入为MINEXIT2:POP CX POP AXPOP DI RETFINDMIN ENDP;- CODE ENDSEND MAIN六、 程序运行结果一些错误的示例: 未输入分隔符 未输入数字 只输入一位数字七、 实验分析实验中以空格作为分隔符,空格个数不限,以回车作为输入结束符。输入的数字必须是 两位数字,如果数字小于 0,则必须用 0 补齐。实验中对输入错误进行检查,输入错误必须重新输入。一位数字后不能有空格,两位数 字后必须有空格,回车之后进行所有数的比较。满足之后判断输入字符是否在 09 之间,否 则也要报错。实验中用两个 BYTE 存储一个两位数,存储的是十进制数字,所以进行输出以及存储 时需要进行一下 ASCII 码的转换。在查找最小数时,预先设计 99 这一最大值作为最小数,使其他数据与之比较,并使新的最小值将原有最小值替换,这样当全部数字比较完毕后就可以得出数据区内所有 数的最小值。 为了使程序更加清晰,采用了子程序的结构。本次试验共用到了三个子程序:输出、获得输入以及找出最小值。八、 实验总结本实验的关键在于如何设计子程序完成部分功能。采用自顶向下的思路,把整体划分 为 3 块,但获取输入部分感觉还是有些冗长,这也是此次实验中不足的地方。通过此次试验我学习了子程序的编写以及调用,掌握了子程序的使用方法和在数据输 入检测和比较方面的编程思路,并更加深刻地体会到了汇编语言在设计上的思想。实验四 子程序设计一、 实验目的1. 进一步掌握子程序设计方法;2. 进一步掌握基本的 DOS 功能调用。二、 实验内容1. 从键盘上输入某班学生的某科目成绩.输入按学生的学号由小到大的顺序输入;2. 统计检查每个学生的名次;3. 将统计结果在屏幕上显示;4.为便于观察,输入学生数目不宜太多,以不超过一屏为宜。输出应便于阅读.尽可能 考虑美观;5. 输入要有检错手段。三、 预习题1. 如何确定一个学生在这门科目中的名次? 答:将输入的两位数存在不同的位置,先将字符减去 30H,再将十位数乘 10D 加上个 位的值,即可得两个字符的十进制数。2. 你觉得输入结束后,采用什么方法进行比较以得到学生的名次最为简单? 答:直接排序、冒泡排序等。3. 准备好模块层次图? 答:见实验流程图。4. 给出输出显示的形式。 答:见程序运行结果。微机原理软件实验报告四、 实验流程图1. 总体流程图开始输入成绩高位N输入有效?YY 输入成绩低位N输入有效?Y输入间隔符/结束符 N输入有效?Y输入间隔符N直接插入排序并存 储结果打印名次结束2. 模块流程图STARTCHECK PROCSEARCH PROCWRITE PROCOUTPUT PROC五、 源代码DISP MACRO STRING;显示字符串PUSH DXLEA DX,STRING MOV AH,9INT 21H POP DX ENDMDATA SEGMENTBUFF DW 100 DUP (0);存储区,学号和成绩按字交替存放NUM DW 0;计数器STR1 DB 0DH,0AH,Please input marks of students:,0DH,0AH,$ STR2 DB 0DH,0AH,Rank,09H,No.,09H,Mark,0DH,0AH,$ ERROR DB 0DH,0AH,Error! Please input again!,0DH,0AH,$DATA ENDSSTACK SEGMENT STACK STACK DB 100 DUP (?)STACK ENDS CODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKOUTPUT PROC NEAR;子程序,显示成绩单MOV CX,NUM LEA SI,BUFFMOV BX,3031H;非压缩BCD码0001的ASCII码LOOP1:MOV AH,2;显示排名MOV DL,BH INT 21H MOV DL,BL INT 21HINC BX AAAMOV DL,09H ;制表符MOV AH,2INT 21HMOV DL,SI ;显示学号ADD DL,30H MOV AH,2INT 21H INC SIMOV DL,SI ADD DL,30H MOV AH,2INT 21H INC SIMOV DL,09H ;制表符MOV AH,2INT 21HMOV DL,SI ;显示成绩ADD DL,30H MOV AH,2INT 21H INC SIMOV DL,SI微机原理软件实验报告ADD DL,30H MOV AH,2INT 21H INC SIMOV DL,0DH MOV AH,2INT 21HMOV DL,0AH MOV AH,2INT 21H LOOP LOOP1RET OUTPUT ENDPCHECK PROC NEAR;检错子程序MOV DH,0;清空错误标志CMP AL,30H;判断是否在0到9之间JB ERRCMP AL,39H JA ERRJMP OKERR:OK:DISP ERRORMOV DH,1;错误标志置位RETCHECK ENDPWRITE PROC NEAR;存储数据的子程序PUSH BXMOV DI,BH;低位地址存放高位数据INC DIMOV DI,BL ;高位地址存放低位数据INC DI POP BX RETWRITE ENDPSEARCH PROC NEAR;子程序,使DI指向合适的位置,并空出两个字,以准备插入新输入的数据PUSH CX微机原理软件实验报告PUSH BX PUSH NUM MOV CX,NUMLEA DI,BUFFLOOP2:CMP CX,0JZ DONE INC DI INC DICMP BH,DI ;先比较十位JA BIGJB SMALL INC DICMP BL,DI;十位相等则比较个位JA BIG2INC DI DEC CXJMP LOOP2;小于则指针移到后一组数据继续比较SMALL:INC DI;同上INC DI DEC CXJMP LOOP2BIG2: BIG:DEC DI PUSH CXMOV BX,NUM MOV CL,2SHL BX,CL;BX乘4MOV AX,BUFF+BX-4MOV BUFF+BX,AX;将学号后移MOV AX,BUFF+BX-2MOV BUFF+BX+2,AX;将成绩后移POP CX DEC NUM LOOP BIGDEC DI ;数据后移完毕微机原理软件实验报告DONE:DEC DIPOP NUM POP BX POP CXRETSEARCH ENDPSTART:MOV AX,DATA;主程序MOV DS,AX MOV ES,AX DISP STR1MOV CX,0INPUT1: INPUT2: INPUT3:MOV AH,1INT 21H;输入两位十进制数的高位CALL CHECK TEST DH,1JNZ INPUT1SUBAL,30H MOV BH,ALMOV AH,1INT 21H;输入两位十进制数的低位CALL CHECK TEST DH,1JNZ INPUT2SUBAL,30H MOV BL,ALMOV AH,1INT 21H;输入分隔符(,)或结束符(回车) CMP AL,20H;分隔符JZ SAVECMP AL,0DH ;结束符JZ EXITDISP ERROR JMP INPUT3SAVE:CALL SEARCH;比较,DI指向合适的位置PUSH BXINC CX;学号AAA;非压缩BCD码加法调整MOVBX,CXCALL WRITE;写入学号POP BXCALL WRITE;写入成绩INC NUM JMP INPUT1EXIT:CALL SEARCH;搜索插入成绩的位置PUSH BX INC CX AAAMOV BX,CX CALL WRITE POP BXCALL WRITEINC NUMDISP STR2CALL OUTPUT;显示排名MOV AX,4C00H;返回DOS INT 21HCODE ENDSEND START微机原理软件实验报告六、 程序运行结果七、 实验分析1. 在数据区存储时,采用学号和成绩交替存储的方式,并将其作为一个整体处理;2. 在排序时采用了直接插入排序的方法,需要注意地址指针的位置。3.直接插入排序是稳定的排序,最差的时间复杂度是 O(n2),空间复杂度为 O(1),在 输入数据比较少的情况下,这样的时间复杂度还是可以接受的。八、 实验总结此次实验是在前几次实验的基础上完成的,综合了子程序设计、DOS 功能调用、宏汇 编等编程方法和技术,而且还会用到以前数据结构中学到的排序算法,具有很强的综合性, 难度也比前几次实验要大。所以在编写代码过程中纠结了很长时间,一直无法想出比较好的 方法,但最后经过努力还是完成了,但是这个程序的缺点是成绩不能输入成满分,这也算是 这次实验的一个遗憾吧,但这次的综合实验对我的汇编编程能力的提升有很大的帮助。从这 四次的实验过程来看,我的进步还是很明显的。实验五 中断程序设计一、 实验目的1. 初步掌握中断程序的设计方法;2. 初步掌握修改 DOS 系统中断,以适应实际使用的方法。二、 实验内容1. 编写一个 32 位二进制数除以 16 位二进制数的除法程序。观察当除数为 0,或超过相应寄存器范围时,程序执行的结果;2. 修改 0 号中断服务程序,使它具有以下功能:1) 判断除数是否为 0,当除数为 0 时,显示相应的结果;2) 当除数不为 0 时,采用适当的方法完成商超过 16 位二进制数的除法运算。3. 注意必须保护原有中断服务程序的入口地址,并在程序完毕前加以恢复;4. 选做题:1) 用二进制将结果在屏幕上显示;2) 从键盘输入二进制数。三、 预习题1. 如何保护原有中断向量表中的中断服务程序的入口地址?答:先读取中断向量表中 0 号中断的地址,压入堆栈,程序结束时弹出堆栈,写回中断 向量表即可。2. 如何将你的中断服务程序入口地址置入中断向量表?答:有两种方法。(1) 直接写入法使用指令将中断服务子程序入口地址的 IP 写入 n*4 的 RAM 位置,中断服务 子程序入口地址的 CS 写入 n*4+2 的位置。(2) 利用 DOS 功能调用写、读中断向量表1) DOS 功能调用 25H 用来写中断向量表,入口参数如下所示:AL:中断类型号;DS:中断服务子程序入口的段地址;DX:中断服务子程序入口的偏移地址。2) DOS 功能调用 35H 用来读中断向量表,入口、出口参数如下所示:AL:中断类型号;ES:读出的中断服务子程序入口的段地址;BX:读出的中断服务子程序入口的偏移地址。四、 实验流程图微机原理软件实验报告开始保护原有中断向量表中的中断服务 子程序的入口地址将新定义的中断服务子程序的入 口地址置入中断向量表调用INPUT子程序输入32位二进制数作为被除 数,存储ASCII码输入16位二进制数作为除 数,存储ASCII码利用左移及加法运算将内存中被除 数转化为16进制数存于DIV1、DIV2溢出除法运算 调用新定义的0号中断将结果存在内存中,并将存商 的高16位0的内存变量C置为0除数为0显示除数为0用被除数的高16位 除以除数将其商作为最终商的高16位,将余数作为 再次除法的高16位,原被除数的低16位作 为其相应的低16位,对原除数做除法将新得到的商作为最终商的低16位,余数作为最终余数将结果存于内存, 并将标志位置1判断标志位是否为1除数为0调用SHIFT子程序利用右移,将16进制数转换为二进制数存于内存 中,并将之转换为ASCII码。依次用于商、余数。输出结果恢复原来中断服务子程序的入口地址到中断向量表结束微机原理软件实验报告五、 源代码DATA SEGMENTMESSAGE DB DIVISOR EQUALS 0.,0DH,0AH,$ STRING1 DB PLEASE INPUT DIVIDEND,0DH,0AH,$ STRING2 DB PLEASE INPUT DIVISOR,0DH,0AH,$ STRING3 DB THE QUOTIENT IS,0DH,0AH,$ STRING4 DB THE REMAINDER IS,0DH,0AH,$QUOTIENT DB 32 DUP (0),0DH,0AH,$;商显示YU DB 16 DUP (0),0DH,0AH,$;余数显示FLAG DB 0;判断是否调用了“0号中断”A DB 32 DUP (0);输入被除数B DB 16 DUP (0);输入除数DIV1 DW 0;16进制被除数高16位DIV2 DW 0;被除数低16位CHU DW 0;16进制除数C DW 0;商高16位 D DW 0;商低16位 E DW 0;余数DATA ENDSSTACK SEGMENT STACK STACK DB 50 DUP (0)STACK ENDS CODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKINPUT PROC;输入32位除数和被除数PUSH AX PUSH BX PUSH CX PUSH DX MOV AH,09HMOV DX,OFFSET STRING1INT 21HMOV BX,OFFSET A MOV CX,32ST1:MOV AH,01H;输入被除数INT 21HMOV BX,AL INC BXLOOP ST1MOV AH,02H;回车换行ST2:XUN:MOV DL,0DH;回车换行INT 21H;回车换行MOV AH,02H;回车换行MOV DL,0AH;回车换行INT 21H;回车换行MOV AH,09HMOV DX,OFFSET STRING2INT 21HMOV BX,OFFSET B MOV CX,16MOV AH,01H;输入除数INT 21HMOV BX,AL INC BXLOOP ST2MOV AH,02H;回车换行 MOV DL,0DH;回车换行 INT 21H;回车换行MOV AH,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 年个人借款合同范本
- 1东莞劳动合同标准文本
- 分包配合费协议书
- 内退协议合同书范例二零二五年
- 二零二五版全新房地产租赁合同范例
- 二零二五房东与租客安全协议范文
- 入伙协议合同样本
- 修路砍树补偿合同样本
- 内资股东转让合同
- 个体招工免责合同样本
- 人教五四 六年级 下册 语文 第五单元《中国有能力解决好吃饭问题 第二课时》课件
- 2025年湖北省八市高三(3月)联考物理试卷(含答案详解)
- 综合应急预案、专项应急预案、现场处置方案
- 放射医学检查技术及操作规范
- 《南非综合简要介绍》课件
- 新苏教版一年级数学下册第四单元《认识20~99》全部教案(共3课时)
- 2025年中国高压注射器行业发展策略、市场环境及前景研究分析报告
- 宁德时代供应商申请入库教程
- 手术患者转运交接课件
- Unit+6+The+power+of+plants+大单元教学设计2024-2025学年外研版英语七年级上册+
- 四川大学华西口腔医学院课件
评论
0/150
提交评论