彙編程序設計歷年考試試題及答案

一、判斷題

判斷下述指令的正誤。正確的打“√”,錯誤的打“×”。

1.MOV ES, 20H   (  X )

2.SHL BX, 4   (  X )

3.PUSH 1122H   (  X )

4.DIV 1000   (  X )

5.CMP AX, [SI][DI]   ( X  )

6.SHR BX,CL   (   )

7.MOV DX,100H   (   )

8.MOVSW   (   )

9.ADD AX,BYTE PTR [SI]   ( X  )

10.RCL AL,1   (   )

11.MOV 300, ES:[BX+SI+100]   ( X  )

12.POP IP   (  X )

13.SUB AX,BL   (  X )

14.MOV IP,BX   (  X )

15.ADD [SI],[BP]   (  X )

16.MOV AX,A[BX]  ;A是一個已定義的數組名   (   )有誤

17.MOV AX,[BX+100]   (   )

18.MUL BX  (   )

19.REPE SCASW   (   )

20.LOOP LP1   ;LP1是一個已定義的標號   (   )

得分

閱卷人

   

 

 

二、填空題

1.XOR AX,BX,若運算結果(  非零  ),那麼AX、BX內容必定不同。

2.某指令存放地址是3000:0056H,則物理地址是(     30056H     )。

3.-17H的8位原碼是( 10010001               )、反碼是( 11101110          )、補碼是( 11101111             )(用二進制形式填空)。

4.PC機中,有符號數都是用(   )碼存儲的。

5.指出下面指令源操作數的尋址方式

MOV AX,100    (  立即尋址             

MOV AX,[SI]    (    寄存器尋址

MOV AX,[SI+100]    (  寄存器相對尋址

MOV AX,[BX+SI]    (     基址+復址尋址

MOV AX,[BX+SI+100]    (   基址+復址相對尋址

6.已知DS=1000H,SI=0200H,BX=0100H,[10100H]=11H,[10101H]=22H

[10600H]=33H,[10601H]=44H,[10300H]=55H,[10301H]=66H

[10302H]=77H,[10303H]=88H,下面每條指令執行後,AX=?

MOV AX,1000H  (  1000H             )

MOV AX,[BX+500H]  ( 4433H             

MOV AX,[300H]  (     6655H          

MOV AX,[BX]  (   2211H            

MOV AX,[BX][SI]  (     6655H          

MOV AX,[BX+SI+2]  (  8877H             

7.有一數據段定義如下:

DATA SEGMENT

X DB  15 DUP(?)

L EQU $-X

DATA ENDS

符號名L的含義是(數組x的元素個數 ///數組x數    ),它的值是(   15     ),EQU可以寫成“=”嗎?(   可以       )。

三、分析題

1.PUSH BX

PUSH DX

POP BX

POP DX

這段程序的功能是什麼?

 

交換BXDX的內容

 

 

2.MOV AX,-100

SAR AX,1

這段程序執行後AX的值是多少?

 

AX=-50

 

3.CMP AL,0

JGE K

NEG AL

K:  ..........

這段程序的功能是什麼?

 

AL的絕對值,送到AL

 

4.MOV AX,100

PUSH AX

POP BX

這段程序執行後BX的值是什麼?

 

BX=100

 

 

 

 

四、編程序段

1.把AX中的有符號數乘以8(假定積不溢出)。

 

MOV CL,3

SAL DX,CL

或者

MOV BX,8

IMUT BX(不建議)

 

 

 

2.已知第一個32位數存放在CX,AX中,其中CX中是高16位,AX是低16位,第二個32位數存放在DX,BX中,DX是高16位,BX是低16位,編寫程序段求這兩個32位數的和,存放在CX,AX中,其中CX中是高16位,AX是低16位。

 

ADD AX,BX

ADC CX,DX

 

 

 

3.統計AX中二進制位爲0的個數,結果存入BX。

 

MOV BX,0

MOV CX,16

K:LOOP LP

         LP:

            SHE AX 1

JC K

INC BX

 

 

得分

閱卷人

   

 

 

 

五、編程題

1.求一個字型數組X元素之和存入SUM單元(不考慮溢出)。

 

DATAS SEGMENT

X DW 3,8,6,4,5

N=($-X)/2

SUM DW ?

DATAS ENDS

 

 

 

 

 

2.X是一個字符串,編制一個完整程序,查找其中是否存在字符“A”,若存在,顯示“YES”,否則顯示“NO”。

 

 

 

6.SHR BX,CL   (   )

7.MOV DX,100H   (   )

8.MOVSW   (   )

10.RCL AL,1   (   )

16.MOV AX,A[BX]  ;A是一個已定義的數組名   (   )有誤

17.MOV AX,[BX+100]   (   )

18.MUL BX  (   )

19.REPE SCASW   (   )

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章