匯編語言試題

字號:

一、填空題
    1.ZF標志位是標志結果是否為零的,若結果,ZF為( ),否則ZF為( )。當ZF為1時,SF為( )
    2.標號可以有兩種類型屬性。它們是( )和( )
    3.8位無符號整數(shù)的表示范圍為0--255,寫成16進制形式為( ),8位有符號整數(shù)的表示范圍為-128--+127,寫成16進制形式為( )
    4.偽指令DB,GROUP 和NAME 三個標號名字域必須有名字的是( ),不得有名字的是( ),可有可無名字的是( )。
    5.循環(huán)程序通常由( )( )( )和循環(huán)結果外理四部分構成
    6.在數(shù)值不達式中,各種運算符可可混合使用,其優(yōu)先次序規(guī)則*,/( )于+,-;XOR,OR( )于AND,LT( )于GT
    7. 宏指令定義必須由偽指令( )開始,偽指令( )結束,兩者之間的語句稱為( )
    8.調用程序與子程序之間的參數(shù)傳遞方法有四種,即堆棧法( )( )( )
    9.分別用一條語句實現(xiàn)下述指明的功能
    (1)棧頂內容彈出送字變量AYW( )
    (2)雙字變量AYD存放的地址指針送ES和SI( )
    (3)變量AY2類型屬性送AH( )
    (4)不允許中斷即關中斷( )
    (5)將字符串‘HOW ARE YOU!’存入變量AYB( )
    (6)子程序返回調用程序( )
    (7)地址表達式AYY[4]的偏移地址送字變量ADDR( )
    (8)AX的內容加1,要求不影響CF( )
    (9)BX的內容加1,要求影響所有標志位( )
    (10)若操作結果為零轉向短號GOON( )
    二、單選題
    1.IBM PC微機中,有符號數(shù)是用( )表示的
    1.原碼  2.補碼 3.反碼  4.BCD碼
    2.把匯編源程序變成代碼程序的過程是( )
    1.編譯  2.匯編  3.編輯  4.鏈接
    三、己知:VAR1,VAR2的類型屬性分別為字和字節(jié),標號LPFAR的類型屬性為FAR。指出下列非法語句的錯誤原因
    1.POP CS( )
    2.INC [BX] ( )
    3.MVL 8( )
    4.JLE LPFAR( )
    5.MOV DB,1800( )
    6.MOV[DI],VAR1
    7.SUB AX,VAR2( )
    8.CMP SS AX( )
    四、簡答題
    1.試述子程序的一般結構組成
    2.標號有哪三個屬性?其含義是什么?
    3.試述CMP AX,BX和SUB AX,BX兩條語句的異同點?
    五、閱讀如下程序段,回答所提出的問題,假定X1,X2,...XN為無符號數(shù)。
    ORG 100H
    BLOK DW X1,X2,...,XN
    COUNT EQU ($-BLOK)/2
    RESULT DW COUNT,?
    ...
    LEA BX,BLOK-2
    MOV CX,RESULT
    XOR AX,AX
    GOON:ADD BX,2
    CMP AX,[BX]
    JAE NEXT
    MOV AX,[BX]
    NEXT:LOOP GOON
    MOV RESULT+2,AX
    程序段執(zhí)行完,回答下述問題
    RESULT+2字存儲單元的內容=( )
    BX=( )
    程序循環(huán)次數(shù)=( )
    六、在下述程序段的每一空框內填入一個語句(不得修改其它語句),以實現(xiàn)如下功能:字節(jié)變量STR中存放著一個字符串,以0DH為結束標志,試求串長度并送字變量COUNT中。
    LEA SI,STR
    ( )
    XOR CX,CX
    GOON: CMP AL,[SI]
    ( )
    INC CX
    ( )
    JMP GOON
    NEXT:MOV COUNT,CX
    七、編制將DS段中名為BUFB的字節(jié)存儲區(qū)改寫為空白字符(編碼為20H)的程序段。假定BUFB存儲區(qū)定義為BUFB DB N DUP('^'),其中N為字面常量。
    八、己知宏指令為:
    SHIFT MACRO RR,COUNT
    MOV AX,COUNT
    IF RR LE 64
    MOV CL,3
    SHR AX,CL
    IF RR LT 16
    MOV CL,6
    SHR AX,CL
    ENDIF
    ENDIF
    ENDM
    宏調用為:SHIFT 15,7FFFH
    SHIFT 80,9FFFH
    寫出宏擴展后的等效源程序段。
    九、編寫完整程序,功能是把N個8個二進制數(shù)據(jù)轉換成16進制字符數(shù)據(jù)。假定N個數(shù)據(jù)存放在字節(jié)變量VARB中,轉換后的字符數(shù)據(jù)存放在HVARB中,提示0--9的字符碼為30H--39H,A--F的字符碼為41H--46H