資源描述:
《《微型計(jì)算機(jī)原理及應(yīng)用》實(shí)驗(yàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、微型計(jì)算機(jī)原理及應(yīng)用實(shí)驗(yàn)電子信息技術(shù)實(shí)驗(yàn)教學(xué)中心實(shí)驗(yàn)1DEBUG調(diào)試程序的應(yīng)用一、實(shí)驗(yàn)?zāi)康恼莆誅EBUG調(diào)試程序的常用命令,熟悉用DEBUG調(diào)試程序?qū)XE文件的調(diào)試過程,并具有一定的分析運(yùn)行結(jié)果的能力。二、實(shí)驗(yàn)內(nèi)容編寫一個(gè)完整的一位數(shù)加法運(yùn)算程序,并生成EXE文件;利用DEBUG調(diào)試EXE文件的執(zhí)行過程,并與源程序進(jìn)行對比。三、DEBUG常用命令1.匯編命令A(yù)格式:A段寄存器名:偏移地址A段地址:偏移地址A偏移地址A功能:用該命令可以將匯編語言程序直接寫入內(nèi)存。2.顯示內(nèi)存命令D格式:D段寄存器名:偏移地址D段地址:偏移地址D偏移地址D功能:顯示指定內(nèi)存范圍的內(nèi)
2、容。3.修改內(nèi)存單元內(nèi)容命令E格式:E地址內(nèi)容表E地址功能:修改內(nèi)存單元內(nèi)容4.填充內(nèi)存命令F格式:E地址范圍內(nèi)容表功能:將內(nèi)容表中的內(nèi)容重復(fù)裝入內(nèi)存的指定范圍內(nèi)。5.內(nèi)存移動(dòng)命令M格式:M源地址范圍目標(biāo)起始地址功能:把源地址范圍的內(nèi)容移動(dòng)到目標(biāo)起始地址開始的存儲單元。6.比較命令C格式:C源地址范圍目標(biāo)起始地址功能:比較兩個(gè)內(nèi)存區(qū)域的內(nèi)容是否相同,相同時(shí)不顯示任何信息,不相同時(shí)顯示不相同的內(nèi)容7.搜索指定內(nèi)容命令S格式:S地址范圍內(nèi)容表功能:在指定地址范圍內(nèi)搜索內(nèi)容表中的內(nèi)容。8.查看修改寄存器內(nèi)容命令R格式:RR寄存器名功能:查看或修改寄存器內(nèi)容關(guān)于標(biāo)志位:O
3、F:OV/NV有/無;DF:DN/UP減/增;IF:EI/DI允許/禁止;SF:NG/PL負(fù)/正;ZF:ZR/NZ零/非零;AF:AC/NA有/無;PF:PE/PO偶/奇;CF:CY/NC有/無。9.單步執(zhí)行命令T格式:T地址T地址條數(shù)功能:單步執(zhí)行指令10.反匯編命令U格式:U地址U地址范圍功能:將指定內(nèi)存的內(nèi)容顯示成匯編語言形式。11.命名命令N格式:N路徑和文件名12.讀盤命令L格式:L地址驅(qū)動(dòng)器號起始扇區(qū)號扇區(qū)數(shù)L地址L功能:將N命令指定的文件或磁盤扇區(qū)內(nèi)容讀到內(nèi)存。13.寫盤命令W格式:W地址驅(qū)動(dòng)器號起始扇區(qū)號扇區(qū)數(shù)W地址W功能:將內(nèi)存內(nèi)容寫到N命令指定
4、的文件或磁盤扇區(qū)中。14.輸入命令I(lǐng)格式:I端口地址功能:將端口的內(nèi)容傳送到累加器AL中。15.輸出命令O格式:O端口地址功能:將累加器AL的內(nèi)容傳送到端口中。16.運(yùn)行命令G格式:G=地址G功能:從當(dāng)前地址或指定地址開始執(zhí)行指令。17.十六進(jìn)制運(yùn)算命令H格式:H數(shù)據(jù)1數(shù)據(jù)2功能:對數(shù)據(jù)1和數(shù)據(jù)2進(jìn)行十六進(jìn)制加法和減法運(yùn)算。18.P命令格式:P功能:在下一條指令執(zhí)行之前停止19.退出命令Q格式:Q功能:退出DEBUG調(diào)試環(huán)境。實(shí)驗(yàn)2算術(shù)運(yùn)算程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容掌握匯編語言中的數(shù)值接收方法;掌握算術(shù)運(yùn)算程序的編寫與結(jié)果顯示方法;掌握宏定義與調(diào)用方法從鍵盤
5、接收運(yùn)算式,編程實(shí)現(xiàn)兩位十進(jìn)制數(shù)的算術(shù)運(yùn)算(加、減、乘、除),若輸入的不是數(shù)字或運(yùn)算符,進(jìn)行錯(cuò)誤處理,按Esc鍵退出。三、編程提示定義一個(gè)顯示單字符的宏;定義一個(gè)能接收兩位數(shù)的子程序,并將其轉(zhuǎn)換成二進(jìn)制,若接收的不是數(shù)字,進(jìn)行錯(cuò)誤處理,其算法為:退一格,顯示一個(gè)空格,再退一格。若接收的為ESC鍵退出;主程序的編程流程如圖2.1所示。開始接收第一個(gè)數(shù)并保存接收運(yùn)算符是(+-*/)否保存運(yùn)算符接收第二個(gè)數(shù)并保存顯示“=”號按運(yùn)算符要求運(yùn)算顯示運(yùn)算結(jié)果回車換行圖2.1NY實(shí)驗(yàn)3字符串處理程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容掌握串操作程序設(shè)計(jì)的基本方法;掌握串查找與替換的方法
6、;掌握字符串接收和顯示的方法;掌握循環(huán)和分支程序設(shè)計(jì)方法。編程實(shí)現(xiàn)字符接收、字符轉(zhuǎn)換、字符顯示等操作;具體要求:從鍵盤接收30個(gè)字符存入變量X中,將X中的字符傳送到變量Y中,將變量Y中的空格字符轉(zhuǎn)換成字符“0”,回車換行后顯示Y中的內(nèi)容。三、編程提示編程流程如圖3.1所示。開始接收30個(gè)字符存入X中循環(huán)查找Y中的空格字符,并將其轉(zhuǎn)換為“0”顯示Y中的字符串將X中的字符串傳送到Y(jié)中回車換行圖3.1結(jié)束實(shí)驗(yàn)4數(shù)值處理程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)內(nèi)容掌握數(shù)組元素的輸入方法;掌握一般的排序算法。編程實(shí)現(xiàn)數(shù)值輸入、數(shù)組排序、顯示等基本操作;具體要求:從鍵盤輸入20個(gè)有符號兩
7、位十進(jìn)制數(shù),編程對其從小到大進(jìn)行排序,并顯示排序后的結(jié)果,以逗號分隔。三、參考程序dispcmacroxmovdl,xmovah,2int21hendmdatasegmentxdb20dup(?)dataendscodesegmentassumecs:code,ds:datago:movax,datamovds,ax接收20個(gè)有符號數(shù)的程序段movbx,19l0:movcx,19leasi,xl1:lodsbcmpal,[si]jgel2movah,[si]mov[si],almov[si-1],ahl2:loopl1decbxcmpbx,0jnel0movcx,
8、20l3: