《組合語言》習題2

2021-03-31 08:56:59 字數 3856 閱讀 8283

《組合語言程式設計》測試題

一、

填空:(

15分) 1

、計算機語言指令包括:,。

2

、資料暫存器組包括ax,

bx,cx,

dx ,其中ax稱

,bx稱為,

cx 稱,dx

稱。四個段暫存器分別是,ip

暫存器中存放的是。4

、資料的傳送的基本單位分為三種位元組、字、雙字,其中乙個整數位元組的表示範圍是

,乙個整數字的表示範圍是 。

5、堆疊是

的儲存結構,

作為堆疊的棧頂指標暫存器使用。 6

、debug

中包括了若干條命令,其中

u命令的功能是,d

命令的功能是

,檢視暫存器內容的命令是

.

二、

計算題:(25)

1、

下列各數均為用

16進製表示的

8位二進位制數,請說明當它們分別被看作是用補碼表示的數或字元的

ascii

碼時,它們所表示的十進位制數和字元是什麼? (

1)

4f (2

)2b

2、完成下列二進位制數的計算:

00010101+00001101=

00111110+00101001=

00011111

—00000101=

3、求下列二進位制數的補碼: —

00010011

—00111111

4、求下列各數與

62a0h

的和,並根據結果設定標誌位sf、

zf、cf、

of:

(1)4321h(2)9d60h

5、 (1

)3549

:0075(2

)1fe0

:00ea

三、

簡答題:(20)

1、

如果乙個堆疊從位址

1250

:0000

開始,它的最後乙個字的偏移位址為

0100h,sp

的內容為

0052h:

問:(1

)棧頂位址是多少? (

2)棧底位址是多少? (

3)在

ss中的段位址是多少? (

4)存入資料

83a0h

後,sp

的內容是多少? 2、

假定(ds

)=2000h

,(es

)=2100h

,(ss

)=1500h

,(bx

)=0100h

,(si)=

00a

0h

,(bp

)=0010h

,資料變數

val的偏移位址為

0050h

,請指出下列指令的源運算元欄位是什麼定址方式?它的實體地址是多少?

(1)

mov ax

,0abh

(2)movax,bx

(3)mov ax

,[100h]

(4)mov ax

,val

(5)mov ax

,[bx]

(6)mov ax,es

:[bx]

(7)mov ax

,[bp]

(8)mov ax

,[bx+10]

(9)mov ax

,[bx][si]

(10)

mov ax

,[bx][si]10

3、指出下列指令中的錯誤:

(1)

mov ah,bx

(2)mov [bx]

,[si]

(3)mov ax

,[si][di]

(4)movmydat [bx][si],es

:ax

(5)movbyteptr[bx]

,1000

(6)movbx

,offsetmydat [si]

(7)movcs,ax

(8)movds

,bp

4、假定(dx)

=10111001b

,(cl

)=03

,(cf)=1

,確定下列各條指令單獨執行後,

dx中的值。

(1)

shr dx,1

(2)sar dx,cl

(3)shl dl,1

(4)ror dl,cl

(5)rcrdl,1

四、

閱讀下列程式段,說明完成什麼工作?

(15)

1、程式段如下:

movax

,1234h

movcl,4

rolax,cl

dec ax

movcx,4

mulcx

int 20h

試問:

(1)每條指令執行完後,

ax暫存器內容是什麼?

(2)

每條指令執行完後,cf,

zf,

sf的值是什麼?

(3)

程式結束時,ax,

dx的內容是什麼? 2、

讀下列程式,並指出此程式執行結束後,顯示器所顯示的內容:

asegment

numdb00111001b

bufdb0ah

,0dh

,『(num)=

buf1db 4 dup (0

aends

bsegmentstack

db200 dup (0

b ends

csegment

assumeds:a

,ss

:stack,cs

:c

begin

:movax,a

movds,ax

leadi

,buf1

moval

,num

mov cl,4

shr al,cl

or al

,30h

mov[di],al

incdi

moval

,num

andal

,0fh

oral

,30h

mov[di],al

incdi

movbyteptr [di],『h

incdi

movbyteptr [di]

,『$』

leadx,buf

movah,9

int21h

movah,4ch

int21h

cends

endbegin

五、編寫程式:(

25分) 1

、編寫程式,求出首位址為

data的10

個字陣列中的最小奇數,並存入

ax中。 2

、編寫程式計算:

s<

—(a+b

)—2*

(aandb)

3、從鍵盤輸入一系列字元,以『

$』 為結束符,然後對其中的數字字元計數,並顯示結果。

組合語言習題十四

1 mov al,2 將2送入al,宣告埠將要被通訊 out 70h,al 向70h埠中寫入al的值 in al,71h 從71埠中讀出資料放到al中 2 從這裡我們可以看出,out 70h,al像是乙個呼叫宣告,表示要呼叫哪乙個埠,然後再通過71h in就是讀出,out就是寫入 assume cs...

ADS組合語言2

4.2 組合語言的語句格式 arm thumb 組合語言的語句格式為 在組合語言程式設計中,每一條指令的助記符可以全部用大寫 或全部用小寫,但不用許在一條指令中大 小寫混用。同時,如果一條語句太長,可將該長語句分為若干行來書寫,在行的末尾用 表示下一行與本行為同一條語句。4.2.1 在組合語言程式中...

組合語言 手記2

彙編由以下3類組成 1 彙編指令 機器碼的助記符 2 偽指令 由編譯器執行 3 其他符號 由編譯器識別 組合語言的核心是彙編指令,它決定了組合語言的特性 cpu是計算機的核心部件,它控制整個計算機的運作並進行運算,要想讓乙個cpu工作,就必須提供指令和資料。指令和資料在儲存器中存放,也就是平時所說的...