第7章彙編測試題目
共3道單選題目
(1)
生成exe之後用debug載入後,檢視暫存器內容如下:
ds=0b2d es=0b2d ss=0b3d cs=0b3e ip=0000
程式的起始位址的段位址是_____。 (3)
1、 0b3e
2、 0b2d
3、 0b3d
4、 0
但為什麼cs是0b3呢?不清楚。
(2)
下列指令不能執行的是_____。 (3)
1、 mov ax,10h[bx]
2、 mov ax,10h[di]
3、 mov ax,[di+si]
4、 mov ax,10h[bx][si]
分析:di和si不能同時使用。參考《組合語言》第二版第161頁和162頁。
「在[..]中,bx,bp,si,di這4個暫存器可以單個出現,或只能以四種組合出現:bx和si,bx和di,bp和si,bp和di」
(3)
對如下程式要實現將datasg段中的字串"welcome to masm!"複製到它後續的資料區中, (4)
assume cs:codesg,ds:datasg
datasg segment
db 'welcome to masm!'
db '................'
datasg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov si,0
________
________
mov ax,4c00h
int 21h
codesg ends
end start
在空白區域新增的指令序列合理的是_____。
1、
mov di,10h
mov cx,10h
s: mov ax,[si]
mov [di],ax
add si,2
add di,2
loop s
2、
mov di,10h
mov cx,8
s: mov ax,[si]
mov [di],ax
inc si
inc di
loop s
3、
mov ss,ax
mov sp,32
mov cx,8
s: mov ax,[si]
push ax
add si,2
loop s
4、
mov cx,8
s: mov ax,[si]
mov [si+10h],ax
add si,2
loop s
分析:
選項1:每次處理乙個字,只需要迴圈八次,而不是10h次
選項2:每次處理乙個位元組,需要迴圈10h次,而不是8次
選項3:好像是將這串數給倒置了。
選項4:正確
組合語言 王爽第七章
and指令 邏輯與指令,按位進行與運算。兩個位多是1才為1,其他情況都為0。比如 and al,10111111b指令將al的第六位設為0其位不變。or指令 邏輯或指令,按位或指令。兩個位置多是0才為0,其他情況多是1。比如 or al 10000000將al的第八位設為1,其他位保持不變。在計算機...
組合語言程式設計第七章
一 and和or指令 and指令 邏輯與指令,按位進行與運算。通過該指令可以將操作物件的相應位設為0,其他位不變。or指令 邏輯或指令,按位進行或運算。通過該指令可以將操作物件的相應位設為1,其他位不變。二 關於ascii碼 三 以字元形式給出的資料 在匯程式設計序中,用 的形式指明資料是以字元的形...
王爽 組合語言 第四章檢測題分析
1 關於偽指令相關描述錯誤的是 2 1 偽指令沒有對應的機器碼,只用來指導彙編過程的。2 偽指令由編譯器處理,在程式中可有可無。3 編譯器要通過執行偽指令才能對源程式進行相應的處理操作,完成編譯工作。4 偽指令是組合語言源程式不可缺少的組成部分。註解 偽指令是組合語言源程式不可缺少的組成部分。試想,...