2009年全國(guó)計(jì)算機(jī)等級(jí)三級(jí)考試PC技術(shù)上機(jī)試練習(xí)習(xí)題(71)

字號(hào):

第42套上機(jī)練習(xí)及答案
    請(qǐng)編制程序,其功能是:以SOURCE開(kāi)始的內(nèi)存區(qū)域存放著多個(gè)字節(jié)的數(shù)據(jù),其中有壓縮BCD"碼和其他數(shù)據(jù)。現(xiàn)按下列編碼規(guī)則進(jìn)行編碼:在每個(gè)壓縮BCD碼前面加兩個(gè)字節(jié)前綴代碼BEH和CCH,并在其后加兩個(gè)字節(jié)后綴代碼DDH和EDH;如果不是壓縮BCD碼,則該數(shù)據(jù)前后均加兩個(gè)代碼0DH和0EH。編碼后的數(shù)據(jù)存放到RESULT指示的內(nèi)存區(qū)域。
    例如:
    原信息為:12H,D9H,86H,54H…
    結(jié)果為: BEH,86H,DDH,EDH,BEH,CCH,54H,DDH,EDH…
    部分程序已經(jīng)給出,其中原始數(shù)據(jù)由過(guò)程LOAD從文件INPUT1.DAT中讀入SOURCE開(kāi)始的內(nèi)存單元中,運(yùn)算結(jié)果要求從RESULT開(kāi)始存放,由過(guò)程SAVE保存到文件OUTPUT1.DAT中。
    請(qǐng)?zhí)羁誃EGIN和END之間已經(jīng)給出的一段原程序使其完整,需填空處已經(jīng)用橫線標(biāo)出,每個(gè)空白一般只需要填一條指令或指令的一部分(指令助記符或操作數(shù)),也可以填入功能相當(dāng)?shù)亩鄺l指令,或刪去BEGIN和END之間原有的代碼并自行編程來(lái)完成所要求的功能。
    對(duì)程序必須進(jìn)行匯編,并與IO.OBJ連接產(chǎn)生可執(zhí)行文件,最終運(yùn)行程序產(chǎn)生結(jié)果。調(diào)試中若發(fā)現(xiàn)整個(gè)程序中存在錯(cuò)誤之處,請(qǐng)加以修改。
    【試題程序】