久久久国产精品秘人口麻豆|永久免费AV无语国产|人成电影免费中文字幕|久久AV嫩草影院2

    1. <dfn id="yitbn"><samp id="yitbn"><progress id="yitbn"></progress></samp></dfn>

          <div id="yitbn"></div>

          1. 首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實用文檔 求職招聘 論文下載
            2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
            MPA考試 | 中科院
            四六級 | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
            新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
            計算機等級考試 | 軟件水平考試 | 職稱計算機 | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
            華為認(rèn)證 | Java認(rèn)證
            公務(wù)員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
            報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
            人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
            駕駛員 | 網(wǎng)絡(luò)編輯
            衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
            會計從業(yè)資格考試會計證) | 經(jīng)濟(jì)師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務(wù)師
            注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
            一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
            質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
            設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
            城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
            繽紛校園 | 實用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲
            您現(xiàn)在的位置: 考試吧(eeeigo.com) > 計算機等級考試 > 計算機三級 > PC技術(shù) > 上機題庫 > 正文

            計算機等級考試三級PC上級題匯總(1)

            PC上機題之一
            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放的二十
            ;*  個八位有符號數(shù)(補碼)是由一個八位A/D轉(zhuǎn)換器采集的雙極性信
            ;*  號(Xn),  現(xiàn)要求對該信號作如下限幅處理 (處理后的信號記為
            ;*  Yn):
            ;*        a).    Yn= -100        Xn<-100
            ;*        b).    Yn= Xn         │Xn│<=100
            ;*        c).    Yn= 100         Xn>100
            ;*      例如:
            ;*        Xn:  67H,61H,8EH,38H,...
            ;*        Yn:  64H,61H,9CH,38H,...
            ;*      部分程序已在PROG1.ASM中給出, 請?zhí)羁誃EGIN和END之間已給
            ;*  出的源程序使其完整(空白已用橫線標(biāo)出, 每行空白一般只需一條
            ;*  指令, 但功能相當(dāng)?shù)亩鄺l指令亦可)或刪除BEGIN和END之間原有的
            ;*  代碼并自行編寫程序片段來完成要求的功能。
            ;*      原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT中讀入SOURCE開始的內(nèi)
            ;*  存單元中, 結(jié)果要求從RESULT開始存放, 由過程SAVE保存到文件
            ;*  OUTPUT1.DAT中。
            ;*      對程序必須進(jìn)行匯編, 并與IO.OBJ鏈接產(chǎn)生PROG1.EXE 執(zhí)行文
            ;*  件, 最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。

                       EXTRN      LOAD:FAR,SAVE:FAR

            N          EQU        20
            MAX_VAL    EQU        100

            STAC       SEGMENT    STACK
                       DB         128 DUP (?)
            STAC       ENDS

            DATA       SEGMENT
            SOURCE     DB         N   DUP(?)
            RESULT     DB         N   DUP(0)
            NAME0      DB         'INPUT1.DAT',0
            NAME1      DB         'OUTPUT1.DAT',0
            DATA       ENDS

            CODE       SEGMENT
                       ASSUME     CS:CODE, DS:DATA, SS:STAC
            START      PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX

                       LEA        DX,SOURCE   ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0    ; 原始數(shù)據(jù)文件名起始地址
                       MOV        CX,N        ; 字節(jié)數(shù)
                       CALL       LOAD        ; 從"input1.dat"中讀取數(shù)據(jù)
            ;  **** BEGIN ****
                       LEA        SI,SOURCE
                       LEA        DI,RESULT
                       mov        cx,N
                       ;____________________
            NEXT:      MOV        AL,[SI]
                       CMP        AL,-MAX_VAL
                       jl         LESS
                       ;J__        LESS
                       CMP        AL,MAX_VAL
                       jl         store
                       ;______________________
                       MOV        AL,MAX_VAL
                       JMP        STORE
            LESS:      MOV        AL,-MAX_VAL
            STORE:     MOV        [DI],AL
                       inc        si
                       inc        di
                       loop       next
                       ;______________________
                       ;______________________
                       ;______________________
            ;  ****  END  ****
                       LEA        DX,RESULT    ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1     ; 結(jié)果文件名起始地址
                       MOV        CX,N         ; 字節(jié)數(shù)
                       CALL       SAVE         ; 保存結(jié)果到"output1.dat"文件中
                       RET
            START      ENDP
            CODE       ENDS
                       END        START

             

            input1.dat 內(nèi)容如下:
            1C 65 7F 72 63 56 D3 99 D9 39 75 83 C8 2D 61 7E 43 8E 6C 61
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            1C 64 64 64 63 56 D3 9C D9 39 64 9C C8 2D 61 64
            43 9C 64 61

            PC上機題之二
            io.obj 與以前幾次考試的相同
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放著10個用
            ;*  ASCII碼表示的十進(jìn)制個位數(shù),將它們轉(zhuǎn)換成相應(yīng)的二進(jìn)制無符號
            ;*  字節(jié)N0, N1,…, N9, 并統(tǒng)計N0, N1,…, N9中大于等于5的十進(jìn)制
            ;*  數(shù)的個數(shù)n。轉(zhuǎn)換結(jié)果按原序存放,之后存放n(n用字節(jié)表示)。
            ;*      例如:
            ;*      內(nèi)存中有 30H('0'),39H('9'),31H('1'), …
            ;*      結(jié)果為   00H,09H,01H,…,(后跟n,n為N0,N1,…, N9中大于
            ;*  等于5的十進(jìn)制數(shù)的個數(shù))
            ;*      部分程序已給出,其中原始數(shù)據(jù)由過程LOAD從INPUT1.DAT文
            ;*  件中讀入SOURCE開始的內(nèi)存單元中。運算結(jié)果要求從RESULT開始
            ;*  存放, 由過程SAVE保存到文件OUTPUT1.DAT中。
            ;*      填空BEGIN和END之間已給出的源程序使其完整 (空白已用橫
            ;*  線標(biāo)出,每行空白一般只需一條指令,但采用功能相當(dāng)?shù)亩鄺l指
            ;*  令亦可), 或刪除BEGIN和END之間原有的代碼并自行編程來完成
            ;*  要求的功能。
            ;*      對程序必須進(jìn)行匯編,  并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行
            ;*  文件,最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。
            ;*  調(diào)試中若發(fā)現(xiàn)整個程序中存在錯誤之處,請加以修改。

                      EXTRN      LOAD:FAR,SAVE:FAR
            N         EQU         10
            STAC      SEGMENT   STACK
                       DB          128 DUP (?)
            STAC      ENDS            
            DATA     SEGMENT        
            SOURCE   DB          N DUP(?)
            RESULT   DB          N+1 DUP(0)
            NAME0    DB          'INPUT1.DAT',0
            NAME1    DB          'OUTPUT1.DAT',0
            DATA     ENDS             
            CODE     SEGMENT         
                       ASSUME    CS:CODE,DS:DATA,SS:STAC
            START     PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX
                       LEA        DX,SOURCE        ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0         ; 原始數(shù)據(jù)文件名
                       MOV        CX,N             ; 字節(jié)數(shù)
                       CALL       LOAD             ; 從'INPUT1.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****            
                       MOV        DI,OFFSET RESULT
                       MOV        BX,0
                       MOV        CX,N
                       mov        dl,0
                       ;MOV        DL,__
            PRO:       MOV        AL,[BX]
                       sub        al,30h
                       ;SUB        AL,___
                       CMP        AL,05
                       jl         jump
                       inc        dl
                       ;__         JUMP              ; 小于5
                       ;INC        __                ; 大于等于5
            JUMP:      MOV        [DI],AL
                       INC        BX
                       INC        DI
                       DEC        CX
                       JNZ        PRO
                       mov        [di],dl
                       ;_______________
            ;  ****  END  ****
                       LEA        DX,RESULT        ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1         ; 結(jié)果文件名
                       MOV        CX,N+1           ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE             ; 保存結(jié)果到文件
                     RET
            START    ENDP
            CODE     ENDS
            END      START

             

            input1.dat 內(nèi)容如下:
            30 39 31 38 32 37 33 36 34 35
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            00 09 01 08 02 07 03 06 04 05 05

            上機題之三
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM,其功能是:
            ;*      對內(nèi)存中存放的20個帶符號8位二進(jìn)制數(shù)進(jìn)行處理。處理方法
            ;*  為:大于等于+64的數(shù)用ASCII字符'>'(3EH)表示;大于0小于+64的數(shù)
            ;*  用ASCII字符'+'(2BH)表示;等于0的數(shù)用ASCII字符'0'(30H)表示;
            ;*  小于0大于-64的數(shù)用ASCII字符'-'(2DH)表示; 小于等于-64的數(shù)用
            ;*  ASCII字符'<'(3CH)表示。
            ;*      例如:
            ;*      內(nèi)存中有 00H,01H,3FH,40H,41H,7EH,7FH,80H,FFH,C0H,…
            ;*  (共20個字)
            ;*      結(jié)果為   30H,2BH,2BH,3EH,3EH,3EH,3EH,3CH,2DH,3CH,…
            ;*  (共20個ASCII碼)
            ;*      部分程序已給出, 其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中。運算結(jié)果要求從RESULT開始存放,
            ;*  由過程SAVE保存到文件OUTPUT1.DAT中。
            ;*      請在BEGIN和END之間補充一段源程序完成要求的功能。
            ;*      對程序必須進(jìn)行匯編,并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文件,
            ;*  最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。調(diào)試中
            ;*  若發(fā)現(xiàn)整個程序中存在錯誤之處, 請加以修改。

                       EXTRN      LOAD:FAR,SAVE:FAR
            N          EQU        20
            STAC       SEGMENT    STACK
                       DB         128 DUP (?)
            STAC       ENDS
            DATA       SEGMENT
            SOURCE     DB         N DUP(?)
            RESULT     DB         N DUP(0)
            NAME0      DB         'INPUT1.DAT',0
            NAME1      DB         'OUTPUT1.DAT',0
            DATA       ENDS
            CODE       SEGMENT
                       ASSUME     CS:CODE, DS:DATA, SS:STAC
            START      PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX
                       LEA        DX,SOURCE          ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0           ; 原始數(shù)據(jù)文件名
                       MOV        CX,N               ; 字節(jié)數(shù)
                       CALL       LOAD               ; 從 'INPUT1.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****
                       LEA        SI,SOURCE
                       LEA        DI,RESULT
                       mov        cx,N
            NEXT:      MOV        AL,[SI]
                       CMP        AL,0
                       jl         fu
                       jg         zheng
                       mov        al,30h
                       jmp        store
            fu:        CMP        AL,-64
                       jle        less
                       mov        al,2dh
                       jmp        store
            less:      mov        al,3ch
                       jmp        store
            zheng:     cmp        al,64
                       jge        great
                       mov        al,2bh
                       jmp        store
            great:     mov        al,3eh
            STORE:     MOV        [DI],AL
                       inc        si
                       inc        di
                       dec        cx
                       jne        next

            ;  ****  END  ****
                       LEA        DX,RESULT          ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1           ; 結(jié)果文件名
                       MOV        CX,N               ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE               ; 保存結(jié)果到文件
                       RET
            START      ENDP
            CODE       ENDS
                       END        START

             

            input1.dat 內(nèi)容如下:
            C0 FF 80 7F FE 41 40 3F 01 00 00 01 3F 40 41 FE 7F 80 FF C0
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            3C 2D 3C 3E 2D 3E 3E 2B 2B 30 30 2B 2B 3E 3E 2D
            3E 3C 2D 3C

            上機題之四
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放的二十個八
            ;*  位無符號數(shù)是一個自動抄表儀抄錄的二十個用戶某月的用水量(立方
            ;*  米),為了控制用水量,水費計算公式如下(X表示用水量; Y表示水費,
            ;*  單位為分):
            ;*        a).    Y= X*70                  X<=10
            ;*        b).    Y= 10*70+(X-10)*120      X>10
            ;*      例如:
            ;*        用水量(X):    04H,  0FH,  18H,...
            ;*        水費( Y ):  0118H,0514H,094CH,...
            ;*      試計算出這二十個用戶應(yīng)繳納的水費, 結(jié)果用字(word)表示。
            ;*      部分程序已在PROG1.ASM中給出, 請?zhí)羁誃EGIN和END之間已給
            ;*  出的源程序使其完整(空白已用橫線標(biāo)出, 每行空白一般只需一條
            ;*  指令, 但功能相當(dāng)?shù)亩鄺l指令亦可)或刪除BEGIN和END之間原有的
            ;*  代碼并自行編寫程序片段來完成要求的功能。
            ;*      原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT中讀入SOURCE開始的內(nèi)
            ;*  存單元中, 結(jié)果要求從RESULT開始存放, 由過程SAVE保存到文件
            ;*  OUTPUT1.DAT中。
            ;*      對程序必須進(jìn)行匯編, 并與IO.OBJ鏈接產(chǎn)生PROG1.EXE 執(zhí)行文
            ;*  件, 最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。

                       EXTRN      LOAD:FAR,SAVE:FAR

            N          EQU        20
            RATE1      EQU        70
            RATE2      EQU        120
            DELTA      EQU        10

            STAC       SEGMENT    STACK
                       DB         128 DUP (?)
            STAC       ENDS

            DATA       SEGMENT
            SOURCE     DB         N   DUP(?)
            RESULT     DW         N   DUP(0)
            NAME0      DB         'INPUT1.DAT',0
            NAME1      DB         'OUTPUT1.DAT',0
            DATA       ENDS

            CODE       SEGMENT
                       ASSUME     CS:CODE, DS:DATA, SS:STAC
            START      PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX

                       LEA        DX,SOURCE   ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0    ; 原始數(shù)據(jù)文件名起始地址
                       MOV        CX,N        ; 字節(jié)數(shù)
                       CALL       LOAD        ; 從"input1.dat"中讀取數(shù)據(jù)
            ;  **** BEGIN ****

                       LEA        SI,SOURCE
                       LEA        DI,RESULT
                       CLD           
                       MOV        CX,N
                       MOV        BL,RATE1
                       MOV        BH,RATE2
            NEXT:      mov        al,[si]
                       ;_________________________
                       CMP        AL,DELTA
                       ja         great
                       ;J__        GREAT
                       MUL        BL
                       JMP        STORE
            GREAT:     sub        ax,delta
                       ;_________________________
                       MUL        BH
                       add        ax,delta*rate1
                       ;_________________________
            STORE:     mov        [di],ax
                       add        di,2
                       ;_________________________
                       ;_________________________
                       INC        SI
                       LOOP       NEXT

            ;  ****  END  ****
                       LEA        DX,RESULT    ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1     ; 結(jié)果文件名起始地址
                       MOV        CX,N*2       ; 字節(jié)數(shù)
                       CALL       SAVE         ; 保存結(jié)果到"output1.dat"文件中
                       RET
            START      ENDP
            CODE       ENDS
                       END        START

             

            input1.dat 內(nèi)容如下:
            05 03 0A 22 0C 03 04 05 19 0C 0B 04 03 11 10 01 15 83 0F 0A
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            5E 01 D2 00 BC 02 FC 0D AC 03 D2 00 18 01 5E 01
            C4 09 AC 03 34 03 18 01 D2 00 04 06 8C 05 46 00
            E4 07 74 3B 14 05 BC 02

            上機題之五
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 計算10×3矩陣中每一行元
            ;*  素(八位二進(jìn)制數(shù))之和, 并將其存放在指定的內(nèi)存區(qū)中。
            ;*      例如:
            ;*      內(nèi)存中有 0,0,0(第1行),1,1,1(第2行),.....,9,9,9(第10行)
            ;*      結(jié)果為   0000H,0003H,...,001BH
            ;*      部分程序已經(jīng)給出,其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中, 轉(zhuǎn)換結(jié)果要求從RESULT開始存放,
            ;*  由過程SAVE保存到文件OUTPUT1.DAT中。
            ;*      填空BEGIN和END之間已經(jīng)給出的一段源程序使其完整,填空處已
            ;*  經(jīng)用橫線標(biāo)出, 每個空白一般只需要填一條指令或指令的一部分(指
            ;*  令助記符或操作數(shù)), 考生也可以填入功能相當(dāng)?shù)亩鄺l指令, 或刪去
            ;*  BEGIN和END之間原有的代碼并自行編程來完成要求的功能。
            ;*      對程序必須進(jìn)行匯編,并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文件,
            ;*  最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。

            EXTRN LOAD:FAR,SAVE:FAR
            N       EQU     30
            DSEG    SEGMENT
            SOURCE  DB      N DUP(?)
            RESULT  DW      N/3 DUP(0)
            I       EQU     10
            J       EQU     3
            NAME0   DB      'INPUT1.DAT',0
            NAME1   DB      'OUTPUT1.DAT',0
            DSEG    ENDS

            SSEG    SEGMENT STACK
                    DB      256 DUP (?)
            SSEG    ENDS

            CSEG    SEGMENT
                    ASSUME  CS:CSEG,SS:SSEG,DS:DSEG
            START PROC FAR
            PUSH DS
            XOR AX,AX
            PUSH AX
                    MOV     AX,DSEG
            MOV DS,AX
                    MOV     ES,AX

            LEA DX,SOURCE
            LEA SI,NAME0
                    MOV     CX,N
                    CALL    LOAD           
            ;   *** BEGIN ***
                    LEA     SI,SOURCE
                    LEA     DI,RESULT
                    MOV     BX,1
            LPI:    MOV     DX,0
                    MOV     CX,1
            LPJ:    MOV     AL,[SI]
                    mov     ah,0
                    ;_______________
                    ADD     DX,AX
                    inc     si
                    ;INC     __
                    INC     CX
                    cmp     cx,J
                    ;CMP     CX,__
                    JBE     LPJ
                    mov     [di],dx
                    add     di,2
                    ;MOV     [DI],___
                    ;ADD     DI,_____
                    INC     BX
                    CMP     BX,I
                    JBE     LPI
            ;   *** END   ***
                    LEA     DX,RESULT
                    LEA     SI,NAME1
                    MOV     CX,N*2/3
                    CALL    SAVE
                    RET
            START ENDP
            CSEG    ENDS
                    END     START

             

            input1.dat 內(nèi)容如下:
            010101020202030303040404050505060606070707080808090909101010
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            03 00 06 00 09 00 0C 00 0F 00 12 00 15 00 18 00
            1B 00 30 00

            上機題六
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放著十六個
            ;*  12位無符號二進(jìn)制數(shù)DB[11]DB[10]…DB[0],其存放格式均為
            ;*  DB[11] DB[10] DB[9] DB[8] DB[7] DB[6] DB[5] DB[4]
            ;*  │←─────── 低地址字節(jié)───────→│
            ;*  DB[3] DB[2] DB[1] DB[0]  0  0  0  0
            ;*  │←──── 高地址字節(jié) ────→│
            ;*      請判別這十六個12位二進(jìn)制數(shù)是否大于800H;若大于800H,則
            ;*  相應(yīng)地在內(nèi)存中存入01H;否則,存入00H。最后存放這十六個12位
            ;*  二進(jìn)制數(shù)中大于800H的數(shù)的個數(shù)n(n用一個字節(jié)表示)。
            ;*      例如:
            ;*      內(nèi)存中有 12H,30H,84H,50H,80H,00H,……
            ;*      結(jié)果為   00H,01H,00H,… (共十六個字節(jié)),后跟n
            ;*      部分程序已給出,其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中。運算結(jié)果要求從RESULT開始存放,
            ;*  由過程SAVE保存到OUTPUT1.DAT文件中。
            ;*      填空BEGIN和END之間已給出的源程序使其完整 (空白已用橫線
            ;*  標(biāo)出,每行空白一般只需一條指令,但采用功能相當(dāng)?shù)亩鄺l指令亦
            ;*  可), 或刪除BEGIN和END之間原有的代碼并自行編程來完成要求的
            ;*  功能。
            ;*      對程序必須進(jìn)行匯編, 并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文
            ;*  件,最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。調(diào)
            ;*  試中若發(fā)現(xiàn)整個程序中存在錯誤之處,請加以修改。

                      EXTRN      LOAD:FAR,SAVE:FAR
            N         EQU         16
            STAC      SEGMENT   STACK
                       DB          128  DUP (?)
            STAC      ENDS
            DATA     SEGMENT
            SOURCE  DB           N*2 DUP(?)
            RESULT  DB           N+1 DUP(0)
            NAME0   DB           'INPUT1.DAT',0
            NAME1   DB           'OUTPUT1.DAT',0
            DATA    ENDS          
            CODE    SEGMENT     
                      ASSUME    CS:CODE,DS:DATA,SS:STAC
            START    PROC        FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX
                       LEA        DX,SOURCE        ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0         ; 原始數(shù)據(jù)文件名
                       MOV        CX,N*2           ; 字節(jié)數(shù)
                       CALL       LOAD             ; 從 'INPUT1.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****          
                       MOV        CH,N
                       MOV        CL,00H           ; 大于800H的數(shù)的個數(shù)n
                       MOV        BX,0
                       MOV        DX,0100H
                       mov        di,offset result
                       ;MOV        DI,_____________
            PRO:       MOV        AH,[BX]
                       MOV        AL,[BX+1]
                       cmp        ax,8000h
                       jbe        c_0
                       ;CMP        AX,_________
                       ;JBE        ___                 ; <=800H
                       MOV        [DI],DH              ; >800H
                       INC        CL
                       INC        DI
                       JMP        JUMP
            C_0:       MOV        [DI],DL
                       INC        DI
            JUMP:      ADD        BX,2
                       DEC        CH
                       JNZ        PRO
                       mov        [di],cl
                       ;MOV        [DI],__
            ; ****  END  ****
                       LEA        DX,RESULT    ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1     ; 結(jié)果文件名
                       MOV        CX,N+1       ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE         ; 保存結(jié)果到文件
                     RET
            START    ENDP
            CODE     ENDS
            END       START

             

            input1.dat 內(nèi)容如下:
            FF F0 FF 00 F0 F0 0F F0 F0 00 0F 00 00 F0 00 00 00 50 05 00 50 00 0A A0 A0 A0 AA 00 AA A0 55 50
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            01 01 01 00 01 00 00 00 00 00 00 00 01 01 01 00
            07

            PC上機題之七
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放的二十個八
            ;*  位無符號數(shù)是一個自動抄表儀抄錄的二十個用戶某月的用水量(立方
            ;*  米),為了控制用水量,水費計算公式如下(X表示用水量; Y表示水費,
            ;*  單位為分):
            ;*        a).    Y= X*70       X<=5
            ;*        b).    Y= X*100      5<X<=20
            ;*        c).    Y= X*150      X>20
            ;*      例如:
            ;*        用水量(X):    04H,  10H,  18H,...
            ;*        水費( Y ):  0118H,0640H,0E10H,...
            ;*      試計算出這二十個用戶應(yīng)繳納的水費, 結(jié)果用字(word)表示。
            ;*      部分程序已在PROG1.ASM中給出, 請?zhí)羁誃EGIN和END之間已給
            ;*  出的源程序使其完整(空白已用橫線標(biāo)出, 每行空白一般只需一條
            ;*  指令, 但功能相當(dāng)?shù)亩鄺l指令亦可)或刪除BEGIN和END之間原有的
            ;*  代碼并自行編寫程序片段來完成要求的功能。
            ;*      原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT中讀入SOURCE開始的內(nèi)
            ;*  存單元中, 結(jié)果要求從RESULT開始存放, 由過程SAVE保存到文件
            ;*  OUTPUT1.DAT中。
            ;*      對程序必須進(jìn)行匯編, 并與IO.OBJ鏈接產(chǎn)生PROG1.EXE 執(zhí)行文
            ;*  件, 最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。

                       EXTRN      LOAD:FAR,SAVE:FAR

            N          EQU        20

            STAC       SEGMENT    STACK
                       DB         128 DUP (?)
            STAC       ENDS

            DATA       SEGMENT
            SOURCE     DB         N   DUP(?)
            RESULT     DW         N   DUP(0)
            NAME0      DB         'INPUT1.DAT',0
            NAME1      DB         'OUTPUT1.DAT',0
            DATA       ENDS

            CODE       SEGMENT
                       ASSUME     CS:CODE, DS:DATA, SS:STAC
            START      PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX

                       LEA        DX,SOURCE   ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0    ; 原始數(shù)據(jù)文件名起始地址
                       MOV        CX,N        ; 字節(jié)數(shù)
                       CALL       LOAD        ; 從"input1.dat"中讀取數(shù)據(jù)
            ;  **** BEGIN ****
                       LEA        SI,SOURCE
                       LEA        DI,RESULT
                       CLD
                       MOV        CX,N
                       MOV        BL,70
                       MOV        BH,100
                       MOV        DL,150
            NEXT:      mov        al,[si]
                       ;_________________
                       CMP        AL,5
                       ja         gt5
                       mul        bl
                       ;J__        GT5
                       ;_________________
                       JMP        STORE
            GT5:       CMP        AL,20
                       ja         gt20
                       mul        bh
                       ;J__        GT20
                       ;_________________
                       JMP        STORE
            GT20:      mul        dl
                       ;_________________
            STORE:     MOV        [DI],AX
                       inc        si
                       add        di,2
                       ;_________________
                       ;_________________
                       LOOP       NEXT

            ;  ****  END  ****
                       LEA        DX,RESULT    ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1     ; 結(jié)果文件名起始地址
                       MOV        CX,N*2       ; 字節(jié)數(shù)
                       CALL       SAVE         ; 保存結(jié)果到"output1.dat"文件中
                       RET
            START      ENDP
            CODE       ENDS
                       END        START

             


            input1.dat 文件內(nèi)容如下:
            05 03 0A 22 0C 03 04 05 19 0C 0B 04 03 11 10 01 15 83 0F 0A
            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            5E 01 D2 00 E8 03 EC 13 B0 04 D2 00 18 01 5E 01
            A6 0E B0 04 4C 04 18 01 D2 00 A4 06 40 06 46 00
            4E 0C C2 4C DC 05 E8 03


            上機題之八
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放著兩個無符
            ;*  號字節(jié)數(shù)序列Ak和Bk(k=0,…,9), 求序列Ck,Ck為Ak和Bk異或運算
            ;*  的結(jié)果。 以字節(jié)的形式按C0,…,C9的順序存放邏輯運算的結(jié)果。
            ;*      例如:
            ;*      序列Ak為00H,03H,07H,…;
            ;*      序列Bk為FFH,AAH,55H,…。
            ;*      結(jié)果Ck為FFH,A9H,52H,…。
            ;*      部分程序已給出,其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中。運算結(jié)果要求從RESULT開始存放,
            ;*  由過程SAVE保存到文件OUTPUT1.DAT中。
            ;*      填空BEGIN和END之間已給出的源程序使其完整 (空白已用橫線
            ;*  標(biāo)出,每行空白一般只需一條指令,但采用功能相當(dāng)?shù)亩鄺l指令亦
            ;*  可), 或刪除BEGIN和END之間原有的代碼并自行編程來完成要求的
            ;*  功能。
            ;*      對程序必須進(jìn)行匯編,  并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文
            ;*  件,最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。調(diào)
            ;*  試中若發(fā)現(xiàn)整個程序中存在錯誤之處,請加以修改。

                      EXTRN      LOAD:FAR,SAVE:FAR
            N         EQU         10
            STAC      SEGMENT   STACK
                       DB          128 DUP (?)
            STAC      ENDS            
            DATA     SEGMENT        
            SOURCE   DB          N*2 DUP(?)
            RESULT   DB          N   DUP(0)
            NAME0    DB          'INPUT1.DAT',0
            NAME1    DB          'OUTPUT1.DAT',0
            DATA     ENDS             
            CODE     SEGMENT         
                       ASSUME    CS:CODE,DS:DATA,SS:STAC
            START    PROC        FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX
                       LEA        DX,SOURCE        ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0         ; 原始數(shù)據(jù)文件名
                       MOV        CX,N*2           ; 字節(jié)數(shù)
                       CALL       LOAD             ; 從'INPUT1.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****            
                       mov        si,offset source
                       mov        di,offset result
                       ;MOV       _____________
                       ;MOV       __________
                       MOV       BX,0
            PRO:       mov       al,[bx+N]
                       ;MOV       AL,___________
                       XOR       AL,[BX]
                       mov       [di],al
                       ;MOV       ____________
                       INC        DI
                       inc        bx
                       ;________________
                       DEC        CX
                       JNZ        PRO
            ;  ****  END  ****
                       LEA        DX,RESULT         ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1          ; 結(jié)果文件名
                       MOV        CX,N              ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE              ; 保存結(jié)果到文件
                     RET
            START    ENDP
            CODE     ENDS
            END      START

             


            input1.dat 內(nèi)容如下:
            00 03 07 0F 10 31 55 AA FF 80 FF AA 55 70 3F 58 55 83 08 00

            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            FF A9 52 7F 2F 69 00 29 F7 80


            上機題之九
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中連續(xù)存放著二十個
            ;*  ASCII字符,如果是大寫字母A~Z之間的字符, 請把它們轉(zhuǎn)換成相
            ;*  應(yīng)的小寫字符;若為其他字符,不作轉(zhuǎn)換。
            ;*      例如:內(nèi)存中有
            ;*        31H('1'),32H('2'),61H('a'),41H('A'),42H('B'), ...
            ;*      結(jié)果為   31H,32H,61H,61H(a),62H(b) ...
            ;*     部分程序已給出,其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中。 運算結(jié)果要求從RESULT開始存
            ;*  放,由過程SAVE保存到OUTPUT1.DAT文件中。填空BEGIN和END之間
            ;*  已給出的源程序使其完整(空白已用橫線標(biāo)出,每行空白一般只需
            ;*  一條指令,但采用功能相當(dāng)?shù)亩鄺l指令亦可),或刪除BEGIN和END
            ;*  之間原有的代碼并自行編程來完成要求的功能。
            ;*      對程序必須進(jìn)行匯編,并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文
            ;*  件,最終運行程序產(chǎn)生結(jié)果 (無結(jié)果或結(jié)果不正確者均不得分)。
            ;*  調(diào)試中若發(fā)現(xiàn)整個程序中存在錯誤之處,請加以修改。

                      EXTRN      LOAD:FAR,SAVE:FAR
            N         EQU         20
            STAC      SEGMENT   STACK
                       DB          128 DUP (?)
            STAC      ENDS
            DATA     SEGMENT
            SOURCE   DB          N DUP(?)
            RESULT   DB          N DUP(0)
            NAME0    DB          'INPUT1.DAT',0
            NAME1    DB          'OUTPUT1.DAT',0
            DATA     ENDS
            CODE      SEGMENT
                       ASSUME    CS:CODE,DS:DATA,SS:STAC
            START     PROC       FAR
                        PUSH      DS
                        XOR       AX,AX
                        PUSH      AX
                        MOV       AX,DATA
                        MOV       DS,AX
                        LEA       DX,SOURCE         ; 數(shù)據(jù)區(qū)起始地址
                        LEA       SI,NAME0          ; 原始數(shù)據(jù)文件名
                        MOV       CX,N              ; 字節(jié)數(shù)
                        CALL      LOAD              ; 從 'INPUT.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****
                       LEA        SI,SOURCE
                       LEA        DI,RESULT
                       MOV       CX,N
            NEXT:      MOV       AL,[SI]
                       CMP       AL,'A'
                       jb        lower2
                       ;JB         ____
                       cmp       al,'Z'
                       ;CMP       AL, ____
                       ja        lower2
                       ;J___        LOWER2
                       add       al,20h
                       ;_________________
            LOWER2:    mov       [di],al
                       ;MOV       [DI], ____
                       inc       si
                       ;____________________
                       inc       di
                       ;INC        ____
                       loop      next
                       ;____       NEXT
            ;  ****  END  ****
                       LEA        DX,RESULT    ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1     ; 結(jié)果文件名
                       MOV        CX,N         ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE         ; 保存結(jié)果到文件
                       RET
            START    ENDP
            CODE     ENDS
                     END        START

             


            input1.dat 內(nèi)容如下:
            62 64 63 45 75 68 40 37 DF 67 AC 6E 8B 65 6C 98 34 59 87 3D

            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            62 64 63 65 75 68 40 37 DF 67 AC 6E 8B 65 6C 98
            34 79 87 3D

            PC上機題之10
            以下內(nèi)容為程序代碼:

            ;*      請編制程序PROG1.ASM, 其功能是: 內(nèi)存中存放著20個數(shù)字0~9
            ;*  之間的ASCII字符(包括數(shù)字0和9的ASCII字符)或SP字符(20H),請將
            ;*  數(shù)字0~9之間的ASCII字符 (包括數(shù)字0和9的ASCII字符)轉(zhuǎn)換為相應(yīng)
            ;*  的八位二進(jìn)制數(shù), 并將SP字符轉(zhuǎn)換為$字符(24H)。將按上述方法處
            ;*  理后得到的20個字節(jié)存入內(nèi)存中。
            ;*      例如:
            ;*      內(nèi)存中有 20H('SP'),30H('0'),31H('1'),31H('1'),
            ;*  31H('1'),20H('SP'),32H('2'),…,39H('9')(共20個ASCII字符)
            ;*      結(jié)果為   24H('$'),00H,01H,01H,01H,24H('$'),02H('2'),
            ;*  …,09H('9') (共20個字節(jié))
            ;*      部分程序已給出,其中原始數(shù)據(jù)由過程LOAD從文件INPUT1.DAT
            ;*  中讀入SOURCE開始的內(nèi)存單元中。運算結(jié)果要求從RESULT開始存放,
            ;*  由過程SAVE保存到文件OUTPUT1.DAT中。
            ;*      填空BEGIN和END之間已給出的源程序使其完整 (空白已用橫線
            ;*  標(biāo)出,每行空白一般只需一條指令,但采用功能相當(dāng)?shù)亩鄺l指令亦
            ;*  可),或刪除BEGIN和END之間原有的代碼并自行編程來完成要求的功
            ;*  能。
            ;*      對程序必須進(jìn)行匯編, 并與IO.OBJ鏈接產(chǎn)生PROG1.EXE執(zhí)行文
            ;*  件,最終運行程序產(chǎn)生結(jié)果(無結(jié)果或結(jié)果不正確者均不得分)。調(diào)
            ;*  試中若發(fā)現(xiàn)整個程序中存在錯誤之處,請加以修改。

                       EXTRN      LOAD:FAR,SAVE:FAR
            N          EQU        20
            STAC       SEGMENT    STACK
                       DB         128 DUP (?)
            STAC       ENDS       
            DATA       SEGMENT   
            SOURCE     DB         N DUP(?)
            RESULT     DB         N DUP(0)
            NAME0      DB         'INPUT1.DAT',0
            NAME1      DB         'OUTPUT1.DAT',0
            DATA       ENDS       
            CODE       SEGMENT   
                       ASSUME     CS:CODE, DS:DATA, SS:STAC
            START      PROC       FAR
                       PUSH       DS
                       XOR        AX,AX
                       PUSH       AX
                       MOV        AX,DATA
                       MOV        DS,AX
                       LEA        DX,SOURCE          ; 數(shù)據(jù)區(qū)起始地址
                       LEA        SI,NAME0           ; 原始數(shù)據(jù)文件名
                       MOV        CX,N               ; 字節(jié)數(shù)
                       CALL       LOAD               ; 從 'INPUT1.DAT'中讀取數(shù)據(jù)
            ;  **** BEGIN ****    
                       lea        si,source
                       ;_______________
                       MOV        DI,0
                       mov        cx,N
                       ;_______________
            CHAN:      mov        al,[si]
                       ;_________________
                       SUB        AL,20H
                       JZ         CHANGE
                       sub        al,10h
                       ;SUB        AL,___
                       MOV        RESULT[DI],AL
                       inc        di
                       inc        si
                       ;_____________
                       ;_____________
                       DEC        CX
                       JZ         EXIT
                       JMP        CHAN
            CHANGE:    MOV        RESULT[DI],24H
                       INC        DI
                       INC        SI
                       DEC        CX
                       JZ         EXIT
                       jmp        chan
                       ;JMP        ____
            EXIT:      NOP
            ;  ****  END  ****
                       LEA        DX,RESULT          ; 結(jié)果數(shù)據(jù)區(qū)首址
                       LEA        SI,NAME1           ; 結(jié)果文件名
                       MOV        CX,N               ; 結(jié)果字節(jié)數(shù)
                       CALL       SAVE               ; 保存結(jié)果到文件
                       RET
            START      ENDP
            CODE       ENDS
                       END        START

             


            input1.dat 內(nèi)容如下:
            20 20 30 31 32 20 33 34 35 36 20 20 37 38 39 20 33 32 31 20

            output1.dat 內(nèi)容應(yīng)當(dāng)如下:
            24 24 00 01 02 24 03 04 05 06 24 24 07 08 09 24
            03 02 01 24

            文章搜索
            計算機等級考試欄目導(dǎo)航
            版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@eeeigo.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。