2002年1月浙江省高等教育自學(xué)考試管理匯編語言程序設(shè)計試題

字號:

一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號填在題干的括號內(nèi)。每小題1分,共10分)
    1.CPU發(fā)出的訪問存儲器的地址是( )
    A.物理地址B.偏移地址
    C.邏輯地址D.段地址
    2.將高級語言的程序翻譯成機器碼程序的實用程序是( )
    A.編譯程序B.匯編程序
    C.解釋程序D.目標(biāo)程序
    3.DEC BYTE PTR[BX]指令中的操作數(shù)的數(shù)據(jù)類型是( )
    A.字B.雙字C.字節(jié)D.四字
    4.在下列語句中,BUFFER稱為( )
    BUFFER DB 01H,0AH
    A.符號B.變量C.助記符D.標(biāo)號
    5.串操作指令中,源串操作數(shù)的段地址一定在( )寄存器中。
    A. CS B. SS C. DS D. ES
    6.使計算機執(zhí)行某種操作的命令是( )
    A.偽指令B.指令C.標(biāo)號D.助記符
    7.將數(shù)據(jù)5618H存放在存儲單元中的偽指令是( )
    A. DATA1 DW 1856H
    B. DATA1 DB 18H,56H
    C. DATA1 EQU 5618H
    D. DATA1 DB 18H,00H,56H,00H
    8.若AX=3500H,CX=56B8H,當(dāng)AND AX,CX指令執(zhí)行后,AX=( )
    A. 1400H B. 77F8H C. 0000H D. 0FFFFH
    9.計算機處理問題中會碰到大量的字符、符號,對此必須采用統(tǒng)一的二進(jìn)制編碼。目前,微機中普遍采用的是( )碼。
    A. BCD碼B.二進(jìn)制碼C.ASCII碼D.十六進(jìn)制碼
    10.用指令的助記符、符號地址、標(biāo)號和偽指令、宏指令以及規(guī)定的格式書寫程序的語言稱為( )
    A.匯編語言B.高級語言C.機器語言D.低級語言
    二、填空題(每空1分,共20分)
    1.在8086/8088匯編語言中,有五條串操作指令,其中搜索字符串指令的助記符是______.
    2.通常所說的計算機系統(tǒng)包括________和________兩大部分。
    3.8086/8088存儲器分四個段,這四個段的段名所對應(yīng)的段寄存器分別是________、________、________、________.
    4.現(xiàn)有AX=2000H,BX=1200H,DS=3000H,DI=0002H,(31200H)=50H,(31201H)=02H,(31202H)=
    40H,請寫出下列各條指令獨立執(zhí)行完后有關(guān)寄存器及存儲單元的內(nèi)容,并指出標(biāo)志位ZF、CF的值。
    A.ADD AX,1200H;問AX=________H ZF=________
    B.SUB AX,BX;問AX=________H ZF=________
    C.MOV AX,[BX];問AX=________H CF=________
    D.NEG WORD PTR[1200H];問(31200H)=________H CF=________
    5.設(shè)DS=2200H,BX=1000H,SI=0100H,偏移量D=0A2B1H,
    試計算出下列各種尋址方式下的有效地址,填入括號中。
    A.使用D的直接尋址( )
    B.使用BX的寄存器間接尋址( )
    C.使用BX和D的寄存器相對尋址( )
    D.使用BX、SI和D的相對基址變址尋址( )
    E.使用BX、SI的基址變址尋址( )
    三、簡答題(共20分)
    1.程序在數(shù)據(jù)段中定義的數(shù)組如下:(4分)
    ARRAY DB‘YES IS’
    DB 20
    ┇
    DB‘DO NOT’
    請指出下列指令是否正確若不正確,錯在哪里
    A.MOV BX,OFFSET ARRAY
    MOV AX,[BX+8]
    B.MOV AX,ARRAY
    C.MOV BX,2
    MOV SI,3
    MOV AX,ARRAY[BX][SI]
    D.MOV BX,2*2
    MOV SI,3
    MOV AX,OFFSET ARRAY[BX][SI]
    INC[AX]
    2.如TABLE為數(shù)據(jù)段中0100單元的符號名,其中存放的內(nèi)容為0FF00H,試問以下兩條指令有什么區(qū)別指令執(zhí)行后,AX寄存器的內(nèi)容是什么(3分)
    MOV AX,TABLE
    MOV AX,OFFSET TABLE
    3.對于下面的數(shù)據(jù)定義,三條MOV指令分別匯編成什么(3分)
    TAB1 DW 10 DUP( )
    TAB2 DB 10 DUP( )
    TAB3 DB‘1234’
    ┇
    MOV AX,LENGTH TAB1
    MOV BL,LENGTH TAB2
    MOV CL,LENGTH TAB3
    4.子程序的說明文件中應(yīng)包括哪幾方面的內(nèi)容(5分)
    5.分別指出下列指令中源操作數(shù)的尋址方式:(5分)
    A.MOV SI,100
    B.MOV CX,DATA[SI]
    C.MOV[SI],AX
    D.ADD AX,[BX][DI]
    E.POPHF
    四、程序分析(每小題5分,共20分)
    1.下列程序段完成什么工作
    DAT1 DB 30 DUP( )
    DAT2 DB 10 DUP( )
    ┇
    MOV CX,10
    MOV BX,20
    MOV SI,0
    MOV DI,0
    NEXT:MOV AL,DAT1[BX][SI]
    MOV DAT2[DI],AL
    INC SI
    INC DI
    LOOP NEXT
    2.執(zhí)行下列指令后,AX寄存器中的內(nèi)容是什么
    START DW 10H,20H,30H,40H,50H
    EE1 DW 3
    ┇
    MOV BX,OFFSET START
    ADD BX,EE1
    MOV AX,[BX]
    3.試分析下面程序段的功能是什么
    CMP AL,‘A’
    JC OTHER
    CMP AL,‘Z’+1
    JNC OTHER
    JMP LETTER
    ┇
    OTHER:┇
    LETTER:┇
    4.下面程序段執(zhí)行完以后,AL的內(nèi)容是什么
    MOV BX,00FFH
    AND BX,0FFFH
    OR BX,0F0FH
    XOR BX,00FFH
    五、程序設(shè)計(每小題10分,共30分)
    1.試編寫出把DX、AX中的雙字右移四位的程序段。
    2.定義一個數(shù)據(jù)區(qū),它包含有23H,24H,25H和26H四個字符數(shù)據(jù),把這個數(shù)據(jù)區(qū)復(fù)制20次,并顯示出復(fù)制結(jié)果。
    3.內(nèi)存自BUF單元開始的緩沖區(qū)連續(xù)存放著100個學(xué)生的英文分?jǐn)?shù),編程序統(tǒng)計其中90~100,60~89,60以下者各有多少人并把結(jié)果連續(xù)存放到自RESUT開始的單元中,(要求畫出程序流程圖,各段定義完整)
    浙江省2002年1月高等教育自學(xué)考試匯編語言程序設(shè)計試題參考答案
    課程代碼:02321
    一、單項選擇題(每小題1分,共10分)
    1.A 2.A 3.C 4.B 5.C
    6.B 7.B 8.A 9.C 10.A
    二、填空題(每空1分,共20分)
    1.SCAS
    2.硬件軟件
    3.CS DS ES SS
    4.A.3200H 0
    B.0E00H 0
    C.0250H不影響
    D.0B0H 1
    5.A.0A2B1H
    B.1000H
    C.0B2B1H
    D.0B3B1H
    E.1100H
    三、簡答題(共20分)
    1. A.正確
    B.數(shù)據(jù)類型不匹配錯
    C.前兩條指令正確,第三條數(shù)據(jù)類型不匹配
    D.前兩條正確,后兩條不正確,在匯編過程中,OFFSET操作將得到變量的偏移值,但對相對基址變址尋址方式形成的值在匯編指令時還是未知的,所以第三條指令不正確。第四條指令中,AX不能作為基址寄存器用。
    2.第一條指令傳送的是0100H單元中的內(nèi)容AX=0FF00H
    第二條指令傳送的是地址0100H AX=0100H
    3.MOV AX,10
    MOV BL,10
    MOV CL,1
    4. A.子程序名
    B.子程序的功能
    C.子程序所用到的寄存器、工作單元的情況
    D.子程序的輸入?yún)?shù)
    E.子程序的輸出參數(shù)
    5.A.立即尋址
    B.寄存器相對尋址
    C.寄存器尋址
    D.基址加變址尋址
    E.寄存器尋址
    四、程序分析(每小題5分,共20分)
    1.把DAT1+20存儲單元開始的10個字節(jié)搬到DAT2開始的連續(xù)10個存儲單元中。
    2.3000H
    3.判斷AL的內(nèi)容,若為‘A’~‘Z’的大寫字母時,程序轉(zhuǎn)LETTER處理,否則轉(zhuǎn)OTHER處理。
    4.0F00H
    五、程序設(shè)計(每小題10分,共30分)
    1.MOV CL,04
    SHR AX,CL
    MOV BL,DL
    SHR DX,CL
    SHL BL,CL
    OR BL,AH
    2.DATA SEGMENT
    PATTERN DB 23H,24H,25H,26H
    DISPLAY DB 80 DUP(‘’),‘$’
    DATE ENDS
    CODE SEGMENT
    ┇
    CLD
    LEA SI,PATTERN
    LEA DI,DISPLAY
    MOV CX,80
    REP MOVSB
    MOV AH,09H
    LEA DX,DISPLAY
    INT 21H
    RET
    CODE ENDS
    3.DATA SEGMENT
    BUF DB 40H,64H,51H…
    RESUT DB 3 DUP(0)
    DATA ENDS
    STACK SEGMENT STACK
    DB 100 DUP(0)
    STACK ENDS
    CODE SEGMENT
    ASSUME DS∶DATA,ES∶DATA,SS∶STACK,CS∶CODE
    START PROC FAR
    PUSH DS
    MOV AX,0
    PUSH AX
    MOV AX,DATA
    MOV DS,AX
    MOV ES,AX
    MOV、AX,STACK
    MOV SS,AX
    LEA SI,BUF
    MOV CX,100
    CLD
    AO:LODSB
    CMP AL,5AH
    JL L60
    INC[RESUT]
    JMP COM
    L60:CMP AL,3CH
    JGE K8960
    INC[RESUT+1]
    JMP COM
    K8960:INC[RESUT+2]
    COM:LOOP AO
    RET
    START ENDP
    CODE ENDS
    END START