已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
廣州大學(xué)學(xué)生實(shí)驗(yàn)報(bào)告開課學(xué)院及實(shí)驗(yàn)室:教育學(xué)院 電子信息樓503 2012年 11月 05 日學(xué)院教育學(xué)院年級(jí)、專業(yè)、班級(jí)教育技術(shù)學(xué)姓名陳慶華學(xué)號(hào)1008200029實(shí)驗(yàn)課程名稱計(jì)算機(jī)組成原理成績實(shí)驗(yàn)項(xiàng)目名稱實(shí)驗(yàn)二 匯編語言程序設(shè)計(jì)實(shí)驗(yàn) 指導(dǎo)老師孔維宏實(shí)驗(yàn)二 匯編語言程序設(shè)計(jì)實(shí)驗(yàn)一、匯編常用軟件的使用一、實(shí)驗(yàn)?zāi)康?、熟悉要用到一些DOS命令(CD,DIR,COPY,TYPE,EXIT,RENAME等);2、熟悉匯編語言的上機(jī)過程;3、熟悉偽指令: SEGMENT,ENDS,ASSUME,END,OFFSET;4、常用DEBUG命令的使用5、了解字符、字符串輸出的方法和返回DOS系統(tǒng)的方法。二、實(shí)驗(yàn)器材計(jì)算機(jī),匯編相關(guān)程序,WAVE6000實(shí)驗(yàn)仿真器三、實(shí)驗(yàn)原理 1、運(yùn)行匯編語言源程序必備的條件:當(dāng)前盤上必須包括如下文件: MASM 匯編程序文件 LINK 連接程序文件 EDIT 全屏幕文本編輯程序文件(或其他文本編輯文件) DEBUG 調(diào)試工具文件 2、匯編語言上機(jī)的四個(gè)步驟: (1)編輯源程序:建立或編輯一個(gè)擴(kuò)展名為ASM源程序文件; (2)匯編程序:源程序經(jīng)過匯編后可產(chǎn)生機(jī)器碼的目標(biāo)文件,擴(kuò)展名為OBJ。如果在編程序中有任何語法錯(cuò)誤,匯編程序?qū)?huì)給出錯(cuò)誤信息。經(jīng)過匯編程序匯編后,實(shí)際可產(chǎn)生三個(gè)文件,即:目標(biāo)文件OBJ,列表文件LST和交叉文件CRF。 3、連接程序:匯編后產(chǎn)生的目標(biāo)文件必須經(jīng)過連接,形成可執(zhí)行文件EXE,然后就可以在DOS狀態(tài)下執(zhí)行程序。 4、調(diào)試程序:DEBUG是調(diào)試匯編語言程序的工具,它具有跟蹤程序的運(yùn)行、顯示修改內(nèi)存與寄存器的內(nèi)容等功能,因此在調(diào)試中可以尋找錯(cuò)誤和修改錯(cuò)誤,可以對小段程序進(jìn)行匯編,是調(diào)試各種應(yīng)用程序的極其方便的工具。經(jīng)過DEBUG調(diào)試后的程序,必須重新進(jìn)行編輯、匯編和連接后才可執(zhí)行。 5、DEBUG的主要特點(diǎn): (1)能夠在最小環(huán)境下運(yùn)行匯編程序; (2)提供簡單的修改手段; (3)提供用戶和計(jì)算機(jī)內(nèi)部聯(lián)系的窗口;四、實(shí)驗(yàn)步驟(一)常用軟件的使用 1、在系統(tǒng)盤下建立一個(gè)文件夾MASM,將MASM、EDIT、LINK和DEBUG四個(gè)文件復(fù)制到此目錄下; 2、點(diǎn)擊“開始”菜單“程序”-“附件”-“DOS命令提示符”,進(jìn)入到DOS狀態(tài); 3、利用CD命令進(jìn)入到MASM文件夾中 CD CD MASM 4、利用DIR命令查看是否有這些文件,如果無則要重新復(fù)制 5、進(jìn)入EDIT程序,輸入下列內(nèi)容:data segment note db hello,world!,$data endscode segment assume cs:code,ds:databegin:mov ax,data mov ds,ax mov dx,offset note mov ah,09h int 21h mov ah,4ch int 21hcode ends end begin保存文件名為你的學(xué)號(hào)_01.ASM6、匯編程序:masm 匯編源程序文件名7、連接程序:LINK 目標(biāo)文件名8、執(zhí)行可執(zhí)行文件,查看結(jié)果9、按如上方法(5-8步驟),輸入下列內(nèi)容:code segment assume cs:codestart:mov al,32h mov dl,37h add dl,al sub dl,30h mov ah,2 int 21h mov ah,4ch int 21hcode ends end start保存文件名為你的學(xué)號(hào)_02.ASM10、用EXIT退出DOS系統(tǒng) (二)DEBUG常用命令的使用1、通過DEBUG編寫和運(yùn)行匯編程序(1)進(jìn)入到DEBUG狀態(tài):進(jìn)入到MASM目錄中,輸入DEBUG執(zhí)行DEBUG調(diào)試程序。進(jìn)入DEBUG狀態(tài)的標(biāo)志是:屏幕顯示“”(2)輸入程序并匯編:用DEBUG的A命令送入程序。在DEBUG狀態(tài),輸入A,然后回車。當(dāng)輸入A命令時(shí)會(huì)自動(dòng)產(chǎn)生程序所送內(nèi)容單元的段地址和偏移地址,通過偏移地址可以看到每條指令站內(nèi)存單元的字節(jié)數(shù)。當(dāng)程序段送完時(shí),只鍵入回車鍵,就退出匯編狀態(tài)(A狀態(tài))回到DEBUG狀態(tài)“”。其中輸入數(shù)據(jù)為16進(jìn)制,DEBUG狀態(tài)下程序中的數(shù)據(jù)都按16進(jìn)制來處理,不需要鍵入H來表示。輸入以下程序:MOV AL,32MOV DL ,37ADD DL ,ALSUB DL,30MOV AH,2INT 21INT 20(3)執(zhí)行程序:用DEBUG的G命令執(zhí)行剛剛匯編的程序。在DEBUG狀態(tài)下直接輸入G,回車,查看結(jié)果。(4)反匯編:可以用反匯編U命令將鍵入的程序調(diào)出,并可以得到每條匯編指令的機(jī)器碼。在DEBUG狀態(tài)輸入:U 100 10D(5)退出DEBUG返回DOS狀態(tài):用Q命令退出。2、DEBUG常用命令的使用(1)匯編命令A(yù) 格式:A 段寄存器名:偏移地址 A 段寄存器地址:偏移地址 A 偏移地址 A 功能:該命令允許鍵入?yún)R編語言語句,并能把它們匯編成機(jī)器代碼,相繼地存放在從指定地址開始的存儲(chǔ)區(qū)中。其中最后一個(gè)格式的偏移地址為0100H。(2)檢查和修改寄存器命令R 顯示CPU內(nèi)所有寄存器內(nèi)容和標(biāo)志位狀態(tài),其格式為: -R 例如: -r AX=0000 BX=0000 CX=010A DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=18E4 ES=18E4 SS=18E4 CS=18E4 IP=0100 NV UP DI PL NZ NA PO NC 18E4:0100 C70604023801 MOV WORD PTR0204,0138 DS:0204=0000 其中標(biāo)志位狀態(tài)的含義可見下表:標(biāo) 志 名標(biāo)志為1標(biāo)志為0OFDFIFSFZFAFPFCF溢出(是/否) 方向(減量/增量)中斷(允許/關(guān)閉)符號(hào)(負(fù)/正)零(是/否)輔助進(jìn)位(是/否)奇偶(偶/奇)進(jìn)位(是/否OV DNEINGZRACPECYNV UPDIPLNZNAPONC 顯示和修改某個(gè)寄存器內(nèi)容,其格式為: -R register name 例如,鍵入 -r ax 系統(tǒng)將響應(yīng)如下: AX F1F4 : 即AX寄存器的當(dāng)前內(nèi)容為F1F4,如不修改則按Enter鍵,否則,鍵入欲修改的內(nèi)容如: -r bx BX 0369 :059F 則把BX寄存器的當(dāng)前內(nèi)容修改為059F。 顯示和修改標(biāo)志位狀態(tài),命令格式為: -RF 系統(tǒng)將響應(yīng),如: OV DN EI NG ZR AC PE CY - 此時(shí)如不修改其內(nèi)容可按Enter鍵,否則,建入欲修改的內(nèi)容,如: OV DN EI NG ZR AC PE CY PO NZ DI NV即可,鍵入的順序是任意的。(3)追蹤與顯示命令T T =address 從指定地址起執(zhí)行一條指令后停下來,顯示所有寄存器內(nèi)空及標(biāo)志位的值。如未指定則從當(dāng)前的CS:IP開始執(zhí)行。(4)反匯編命令U從指定地址開始,反匯編32個(gè)字節(jié),其格式為: U range 例如: -u 100 如果地址被省略則從上一個(gè)U命令的最后一條指令的下一個(gè)單元開始顯示32個(gè)字節(jié)。 (5)運(yùn)行命令G -G =address1address2address3 . 其中,地址1指定了運(yùn)行的起始地址,如不指定則從當(dāng)前的CS:IP開始運(yùn)行。后面的地址均為斷點(diǎn)地址,當(dāng)指令執(zhí)行到斷點(diǎn)時(shí),就停止執(zhí)行并顯示當(dāng)前所有寄存器及標(biāo)志位的內(nèi)容,和下一條將要執(zhí)行的指令。(6)結(jié)束命令Q-Q 它退出DEBUG,返回DOS。3、利用DEBUG調(diào)試EXE文件(1)通過EDIT編輯源程序;(2)用MASM程序匯編源程序;(3)用連接程序形成可執(zhí)行文件(4)用DEBUG調(diào)試可執(zhí)行文件l 用DEBUG調(diào)入可執(zhí)行文件;l 用U命令查看程序是否進(jìn)入內(nèi)存;l 用R、T命令跟蹤程序的執(zhí)行的過程并察看CPU內(nèi)部寄存器的內(nèi)容。(5)DOS狀態(tài)下查看程序清單和執(zhí)行結(jié)果五、實(shí)驗(yàn)數(shù)據(jù) 兩個(gè)源程序。程序一:data segment note db hello,world!,$data endscode segment assume cs:code,ds:databegin:mov ax,data mov ds,ax mov dx,offset note mov ah,09h int 21h mov ah,4ch int 21hcode ends end begin程序二:code segment assume cs:codestart:mov al,32h mov dl,37h add dl,al sub dl,30h mov ah,2 int 21h mov ah,4ch int 21hcode ends end start六、實(shí)驗(yàn)結(jié)果分析1、 指出寄存器發(fā)生的變化和寫出結(jié)果。寄存器發(fā)生的變化:AX=0032 IP從0100變?yōu)?102 DX=0037 IP從0102變?yōu)?104 DX=0069 IP從0104變?yōu)?106 DX=0039 IP從0106變?yōu)?109 DX=0232 IP從0109變?yōu)?10B2、 寫出實(shí)驗(yàn)結(jié)果。試驗(yàn)結(jié)果:程序一:hello,world! 程序二:9二、字符及字符串的輸入輸出程序的編寫與調(diào)試一、實(shí)驗(yàn)?zāi)康?、通過實(shí)驗(yàn)掌握基本的尋址方式;2、理解指令的功能,熟悉DEBUG的調(diào)試命令;3、掌握字符輸入輸出的方法;4、掌握字符串輸入輸出的方法;5、進(jìn)一步了解DOS系統(tǒng)功能調(diào)用。二、實(shí)驗(yàn)器材計(jì)算機(jī),匯編相關(guān)程序,WAVE6000實(shí)驗(yàn)仿真器三、實(shí)驗(yàn)原理1、單字符輸入(1號(hào)調(diào)用)格式:MOV AH, 01H INT21H功能:從鍵盤輸入字符的ASCII碼送入寄存器AL中,并送顯示器顯示2、單字符顯示(2號(hào)調(diào)用)格式:MOV DL,待顯示字符的ASCII碼 MOV AH, 02H INT 21H功能:將DL寄存器中的字符送顯示器顯示3、結(jié)束調(diào)用(4C號(hào)調(diào)用)格式:MOV AH,4CH INT21H功能:終止當(dāng)前程序并返回調(diào)用程序4、INT 20H,在DEBUG下正常結(jié)束程序5、字符串的輸入(10號(hào)功能調(diào)用):其作用是從鍵盤輸入字符串。在調(diào)用前首先要建立一個(gè)輸入緩沖區(qū),規(guī)定緩沖區(qū)的第一個(gè)字節(jié)用來存放輸入字符串的最大長度,可以由用戶根據(jù)需要設(shè)定,第二個(gè)字節(jié)用來存放實(shí)際輸入的字符數(shù),在DOS返回時(shí)自動(dòng)賦值,從第三個(gè)字節(jié)開始存放實(shí)際輸入的字符串,串的輸入以回車作為結(jié)束符。 格式:LEADX,緩沖區(qū)首偏移地址 MOVAH,0ah INT21H功能:從鍵盤上輸入一字符串到用戶定義的輸入緩沖區(qū)中,并送顯示器顯示6、字符串顯示(9號(hào)功能調(diào)用)格式:LEADX,待顯示字符串首偏移地址 MOVAH,09H INT21H功能:將當(dāng)前數(shù)據(jù)區(qū)中以結(jié)尾的字符串送顯示器顯示四、實(shí)驗(yàn)步驟1、假設(shè)DS=2000H,ES=2100H,SS=1500H,請通過實(shí)驗(yàn)指出下列指令的尋址方式:MOV AX,1234 MOV BX,1002 MOV DL,39 ADD AX,BXINC BX DEC DL MOV SI,3 Int 20注意:本步驟實(shí)驗(yàn)只要求在DEBUG狀態(tài)下進(jìn)行。(1)、首先進(jìn)入DEBUG狀態(tài),用R命令修改各寄存器的內(nèi)容,以滿足題目的要求;(2)、用A命令寫入要實(shí)驗(yàn)的8條語句;(3)、用T命令單步執(zhí)行,觀察并記錄運(yùn)行的結(jié)果;2、編寫匯編語言程序,要求將鍵盤輸入的一個(gè)大寫字母用小寫字母顯示出來。要求用兩種方法調(diào)試出結(jié)果,即DEBUG方法和編輯、匯編和連接的方法。參考程序如下:code segment assume cs:codestart:mov ah,01h int 21h add al,20h mov dl,al mov ah,02h int 21h mov ah,4ch int 21hcode ends end start3、編寫匯編語言程序,要求先提示用戶輸入,然后將用戶的輸入直接顯示出來。data segment / DATA段定義開始 msg db what is your name:$ /給變量msg定義存儲(chǔ)單元,db表示定義字節(jié)數(shù)據(jù) buf db 30,?,30 dup (?) /給變量buf定義存儲(chǔ)單元,db表示定義字節(jié)數(shù)據(jù), ? 只分配存儲(chǔ)單元,不定義初值。帶DUP的表達(dá)式,定義重復(fù)數(shù)據(jù)。data ends / DATA段定義結(jié)束code segment /CODE段定義開始 assume cs:code,ds:data /運(yùn)行程序時(shí),需要通過段寄存器訪問存儲(chǔ)單元 ,ASSUME指令就是用來建立段寄存器與段之間關(guān)系begin:mov ax,data /begin為程序的起始標(biāo)號(hào);將data段的起始地址傳送給ax mov ds,ax /將ax的內(nèi)容傳送給ds,完成數(shù)據(jù)段寄存器的加載 mov dx,offset msg /offset計(jì)算變量或標(biāo)號(hào)的段內(nèi)偏移地址,也可以用lea dx,msg來實(shí)現(xiàn)以下3句為9號(hào)調(diào)用 mov ah,09h int 21h mov dx,offset buf mov ah,0ah int 21h mov ah,4ch int 21h code ends / CODE段結(jié)束end begin /用結(jié)束偽指令END加載程序的起始地址。五、實(shí)驗(yàn)數(shù)據(jù)寫出編寫的程序清單。程序一:MOV AX,1234 MOV BX,1002 MOV DL,39 ADD AX,BXINC BX DEC DL MOV SI,3 Int 20程序二:data segment msg db what is your name:$ buf db 30,?,30 dup (?) data ends code segment assume cs:code,ds:data begin:mov ax,data mov ds,ax mov dx,offset msg mov ah,09h int 21h mov dx,offset buf mov ah,0ah int 21h mov ah,4ch int 21h code ends end begin 六、實(shí)驗(yàn)結(jié)果分析1、 分析程序調(diào)試過程中出現(xiàn)的錯(cuò)誤,是如何解決的。程序出現(xiàn)錯(cuò)誤通過查書本和詢問同學(xué),細(xì)心調(diào)查解決。2、 寫出程序運(yùn)行的結(jié)果。程序一運(yùn)行的結(jié)果:輸入一個(gè)大寫字母用小寫字母顯示出來,例如輸入大寫字母A,則屏幕顯示的結(jié)果為Aa。程序二運(yùn)行的結(jié)果:提示用戶輸入,然后將用戶的輸入直接顯示出來。例如輸入zhaoyanjiao,則屏幕顯示的結(jié)果為:what is your name:zhaoyanjiao3、 分析執(zhí)行每個(gè)命令后相應(yīng)寄存器的變化。程序一的變化:BX從0000變?yōu)?002 IP從0103變?yōu)?106 BX從0000變?yōu)?002 IP從0103變?yōu)?106DX變?yōu)?039 IP從0106變?yōu)?108AX變?yōu)?236 BX=1002 IP從0108變?yōu)?10ABX=1003 IP從010A變?yōu)?10BDX=0038 IP從010B變?yōu)?10DIP從0108變?yōu)?110IP從0110變?yōu)?172 4、 寫出尋址方式。MOV AX,1234 是立即尋址MOV BX,1002 是寄存器間尋址MOV DL,39 是立即尋址ADD AX,BX 是寄存器間尋址MOV SI,3 是立即尋址 mov ax,data 是直接尋址 Mov ds,ax 是寄存器尋址 mov dx,offset msg 是寄存器間接尋址 mov ah,09h 是立即尋址 mov dx,offset buf 是寄存器間接尋址 mov ah,0ah 是立即尋址 mov ah,4ch 是立即尋址三、存儲(chǔ)器塊清零一、 實(shí)驗(yàn)要求指定存儲(chǔ)器中某塊的起始地址和長度,要求能將其內(nèi)容清零。二、 實(shí)驗(yàn)?zāi)康?. 掌握存儲(chǔ)器讀寫方法2. 了解存儲(chǔ)器的塊操作方法三、實(shí)驗(yàn)說明通過本實(shí)驗(yàn),學(xué)生可以了解讀寫存儲(chǔ)器的讀寫方法,同時(shí)也可以了解單片機(jī)編程,調(diào)試方法。如何將存儲(chǔ)器塊的內(nèi)容置成某固定值(例全填充為0FFH)? 請學(xué)生修改程序,完成此操作。設(shè)置塊長度設(shè)置塊起始地址地址加1當(dāng)前地址內(nèi)容清零是否清除完結(jié)束是否四、參考程序1、參考程序data segmentBlock db 256 dup(55h)data endscode segment assume cs:code, ds:datastart proc near mov ax, data mov ds, ax mov bx, offset Block ; 起始地址 mov cx, 256 ; 清 256 字節(jié)Again: mov bx, byte ptr 0 inc bx Loop Again ; 記數(shù)減一 jmp $code ends end start五、實(shí)驗(yàn)步驟(1) 進(jìn)入Wave6000,輸入程序并檢查,保存程序。(2) “編譯”程序。(3) “全速執(zhí)行”程序。(4) “暫停”程序運(yùn)行,在“數(shù)據(jù)窗口(MEMOREY)”查看0400H起始的單元內(nèi)容,并記錄。(5) 在指令“jmp $”處設(shè)斷點(diǎn)。(6) “全速執(zhí)行”程序。(7) 在“數(shù)據(jù)窗口(MEMOREY)”查看0400H起始的單元內(nèi)容,記錄并分析實(shí)驗(yàn)結(jié)果。六、實(shí)驗(yàn)結(jié)果分析四、內(nèi)存塊移動(dòng)一、 實(shí)驗(yàn)要求將指定源地址和長度的存儲(chǔ)塊移到指定目標(biāo)位置二、 實(shí)驗(yàn)?zāi)康? 了解內(nèi)存的移動(dòng)方法。2 加深對存儲(chǔ)器讀寫的認(rèn)識(shí)。三、 實(shí)驗(yàn)說明塊移動(dòng)是計(jì)算機(jī)常用操作之一,多用于大量的數(shù)據(jù)復(fù)制和圖象操作。本程序是給出起始地址,用地址加一方法移動(dòng)塊,請思考給出塊結(jié)束地址,用地址減一方法移動(dòng)塊的算法。另外,若源塊地址和目標(biāo)塊地址有重疊,該如何避免?四、程序框圖設(shè)置塊的源地址設(shè)置塊的目標(biāo)地址設(shè)置移動(dòng)長度從源地址取數(shù)保存到目標(biāo)地址中源地址加1目標(biāo)地址加1是否移動(dòng)完結(jié)束是否; 移動(dòng) 256 字節(jié)data segmentSource db 256 dup(055h)Target db 256 dup(0aah)data endscode segment assume cs:code, ds:data, es:datastart proc near mov ax, data mov ds, ax mov es, ax mov si, offset Source mov di, offset Target mov cx, 256 rep movsb jmp $code ends end start五、實(shí)驗(yàn)步驟(1) 進(jìn)入Wave6000,輸入程序并檢查,保存程序。(2) “編譯”程序。(3) 在指令“jmp $”處設(shè)斷點(diǎn)。(4) “全速執(zhí)行”程序。(5) 在“數(shù)據(jù)窗口(MEMOREY)”分別查看0400H、0500H開始256個(gè)單元的內(nèi)容,記錄并分析實(shí)驗(yàn)結(jié)果。六、實(shí)驗(yàn)結(jié)果分析1、實(shí)驗(yàn)結(jié)果:256個(gè)aah全部被256個(gè)55h所代替。2、 用地址減一方法移動(dòng)塊的算法程序如下: data segment Source db 256 dup(055h) Target db 256 dup(0aah) data ends code segment assume cs:code, ds:data, es:data start proc near mov ax, data mov ds, ax mov es, ax mov si, offset Source mov di, offset Target Add si:255 Add di:255 std mov cx, 256 rep movsb jmp $ code ends end start3、如果出現(xiàn)源塊地址與目標(biāo)地址有重疊可以采用一下的辦法來避免:把源塊地
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《離婚法律程序執(zhí)行細(xì)則協(xié)議》版
- 二零二五版保險(xiǎn)及期貨居間業(yè)務(wù)委托管理合同3篇
- 二零二五年度智慧社區(qū)商業(yè)配套租賃協(xié)議3篇
- 二零二五年度集成墻板原材料期貨交易與風(fēng)險(xiǎn)管理合同2篇
- 二零二五年度高端人才引進(jìn)與培養(yǎng)合同5篇
- 臨時(shí)建筑建設(shè)合同樣本2024年版版B版
- 2025年度智能廚房設(shè)備研發(fā)、安裝與培訓(xùn)服務(wù)合同3篇
- 二零二五版公共工程合同擔(dān)保制度及操作細(xì)則3篇
- 二零二五年電子設(shè)備采購與技術(shù)服務(wù)合同2篇
- 2024年簡化版資金借用協(xié)議范本版B版
- (完整版)小學(xué)生24點(diǎn)習(xí)題大全(含答案)
- DB-T29-74-2018天津市城市道路工程施工及驗(yàn)收標(biāo)準(zhǔn)
- 小學(xué)一年級(jí)20以內(nèi)加減法混合運(yùn)算3000題(已排版)
- 智慧工廠數(shù)字孿生解決方案
- 病機(jī)-基本病機(jī) 邪正盛衰講解
- 品管圈知識(shí) 課件
- 非誠不找小品臺(tái)詞
- 2024年3月江蘇省考公務(wù)員面試題(B類)及參考答案
- 患者信息保密法律法規(guī)解讀
- 老年人護(hù)理風(fēng)險(xiǎn)防控PPT
- 充電樁采購安裝投標(biāo)方案(技術(shù)方案)
評(píng)論
0/150
提交評(píng)論