走近信息安全:逆向工程匯編基礎(chǔ)智慧樹知到答案2024年青島工學(xué)院_第1頁(yè)
走近信息安全:逆向工程匯編基礎(chǔ)智慧樹知到答案2024年青島工學(xué)院_第2頁(yè)
走近信息安全:逆向工程匯編基礎(chǔ)智慧樹知到答案2024年青島工學(xué)院_第3頁(yè)
走近信息安全:逆向工程匯編基礎(chǔ)智慧樹知到答案2024年青島工學(xué)院_第4頁(yè)
走近信息安全:逆向工程匯編基礎(chǔ)智慧樹知到答案2024年青島工學(xué)院_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

走近信息安全:逆向工程匯編基礎(chǔ)青島工學(xué)院智慧樹知到答案2024年第一章測(cè)試

下面關(guān)于軟件逆向工程的描述錯(cuò)誤的是()。

A:通過軟件逆向能夠加深對(duì)高級(jí)語(yǔ)言實(shí)現(xiàn)機(jī)制的了解B:軟件逆向工程會(huì)運(yùn)用到解密、反匯編、系統(tǒng)分析、程序理解等計(jì)算機(jī)技術(shù)C:軟件逆向工程能夠提高軟件生產(chǎn)的效率和質(zhì)量D:通過逆向工程獲得的信息可以任意擴(kuò)散給其他人

答案:D下面屬于軟件逆向工程的應(yīng)用的是()。

A:病毒分析B:漏洞分析C:軟件開發(fā)D:軟件破解

答案:ABCD軟件逆向工程技術(shù)的有效運(yùn)用可以更好的研究和學(xué)習(xí)先進(jìn)的軟件技術(shù)。()

A:對(duì)B:錯(cuò)

答案:A逆向工程人員為合法用戶。()

A:對(duì)B:錯(cuò)

答案:A逆向工程技術(shù)可以用于開發(fā)形式類似或有其他著作權(quán)侵權(quán)因素的程序。()

A:對(duì)B:錯(cuò)

答案:B

第二章測(cè)試

下面關(guān)于匯編語(yǔ)言的描述錯(cuò)誤的是()。

A:匯編指令是機(jī)器指令的助記符B:偽指令是匯編語(yǔ)言的核心,可以編譯為機(jī)器指令C:匯編指令需要編譯器將之編譯為機(jī)器指令D:每一種CPU都有自己的匯編指令集

答案:B在存儲(chǔ)器中,數(shù)據(jù)和程序以()形式存放。

A:二進(jìn)制B:匯編指令C:字符D:十進(jìn)制

答案:A1KB的存儲(chǔ)器有()個(gè)存儲(chǔ)單元。

A:8000B:1024C:512D:10

答案:B一個(gè)存儲(chǔ)器有128個(gè)存儲(chǔ)單元,則存儲(chǔ)單元的編號(hào)是()。

A:1~128B:0~127C:其他D:0~128

答案:B用匯編語(yǔ)言編寫的匯編程序可以被計(jì)算機(jī)直接識(shí)別和執(zhí)行。()

A:錯(cuò)B:對(duì)

答案:ACPU訪問內(nèi)存中的數(shù)據(jù),首先要確定存儲(chǔ)單元的地址。()

A:對(duì)B:錯(cuò)

答案:A

第三章測(cè)試

下列關(guān)于8086CPU的工作原理的描述錯(cuò)誤的是()。

A:匯編程序員可以通過改變寄存器中的內(nèi)容實(shí)現(xiàn)對(duì)CPU的控制。B:CPU在訪問內(nèi)存時(shí),采用“段地址*16+偏移地址”的形式給出要訪問的內(nèi)存單元的物理地址。C:任意時(shí)刻,CS:IP指向的內(nèi)容即是此刻CPU正在執(zhí)行的指令。D:mov指令不能用于設(shè)置CS、IP的值。

答案:C在8086CPU中,下面寄存器是16位的包括()。

A:DXB:AHC:CSD:IP

答案:ACD在8086PC機(jī)中,數(shù)據(jù)存在內(nèi)存2000:3E80單元中,該數(shù)據(jù)的內(nèi)存地址為()。

A:5E80HB:2000HC:3E80HD:23E80H

答案:D下面哪個(gè)是錯(cuò)誤的指令()。

A:movcs,123B:addal,dlC:movax,bxD:moval,0f5H

答案:Amovax,936aH

movbx,79b8H

addax,bx

指令執(zhí)行后AX中的數(shù)據(jù)是()

A:1c22HB:0d22HC:0c22HD:1d22H

答案:Bmovax,936aH

movbx,79b8H

addal,bl

指令執(zhí)行后AX中的數(shù)據(jù)是()

A:9422HB:9322HC:1c22HD:0d22H

答案:B給定段地址為0001H,僅通過變化偏移地址尋址,CPU的尋址范圍為()。

A:10001H~1000FHB:00001H~10000HC:00010H~1000FHD:00000H~00010H

答案:Cmovax,bx

subax,ax

jmpax

上面程序段起始IP的值為0000H,3條指令執(zhí)行后,CPU修改IP()次。

A:5B:3C:2D:4

答案:D8086PC機(jī)中存儲(chǔ)器的一個(gè)段最大為16K個(gè)字節(jié)。()

A:錯(cuò)B:對(duì)

答案:A匯編指令“MOVCX,AL”是一條合法指令。()

A:錯(cuò)B:對(duì)

答案:A

第四章測(cè)試

用Debug查看內(nèi)存,結(jié)果如下:

0000:00106226E6D6CC2E3C3B……

有程序段如下:

movax,1

movds,ax

movax,[0002]

上面3條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:E6D6HB:6226HC:2662HD:D6E6H

答案:D用Debug查看內(nèi)存,結(jié)果如下:

0000:00106226E6D6CC2E3C3B……

有程序段如下:

movax,1

movds,ax

moval,[0002]

上面3條指令執(zhí)行后,寄存器AL中的內(nèi)容為()。

A:D6E6HB:62HC:E6HD:26H

答案:C用Debug查看內(nèi)存,結(jié)果如下:

0000:00106226E6D6CC2E3C3B……

有程序段如下:

movax,1

movds,ax

addax,[0002]

上面3條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:D6E7HB:D6E6HC:E6D7HD:E627H

答案:A用Debug查看內(nèi)存,結(jié)果如下:

0000:00106226E6D6CC2E3C3B……

有程序段如下:

movax,1

movds,ax

mov[0],ax

上面3條指令執(zhí)行后,內(nèi)存地址00010H對(duì)應(yīng)內(nèi)存單元中的字型數(shù)據(jù)為()。

A:2662HB:0001HC:2601HD:0100H

答案:B下面名稱中()代表堆棧指針寄存器。

A:SPB:BPC:SSD:ES

答案:A設(shè)SP初值為200H,執(zhí)行指令PUSHAX后,SP的值是()。

A:1FEHB:1FFHC:198HD:202H

答案:A匯編語(yǔ)言訪問內(nèi)存的指令都是以字為單位進(jìn)行的。()

A:錯(cuò)B:對(duì)

答案:A8086PC機(jī)中堆棧的入棧和出棧操作都是以字為單位進(jìn)行的。()

A:對(duì)B:錯(cuò)

答案:A匯編指令“PUSHDS”是一條合法指令。()

A:錯(cuò)B:對(duì)

答案:B匯編指令“POPAL”是一條合法指令。()

A:對(duì)B:錯(cuò)

答案:B

第五章測(cè)試

匯編程序中()有對(duì)應(yīng)的機(jī)器碼,可以被編譯為機(jī)器指令。

A:偽指令B:匯編指令C:標(biāo)號(hào)D:注釋符

答案:B段結(jié)束的偽指令是()。

A:intB:endC:endsD:segment

答案:C進(jìn)入DOS方式,對(duì)源程序進(jìn)行編譯的命令是()。

A:debugB:linkC:masmD:t

答案:C在debug中單步執(zhí)行程序中的指令的命令是()。

A:rB:tC:dD:u

答案:B使用debug跟蹤調(diào)試匯編程序時(shí),執(zhí)行最后的返回指令,要使用()命令執(zhí)行“int21h”,程序可以正常結(jié)束。

A:rB:pC:uD:t

答案:B偽指令是有對(duì)應(yīng)的機(jī)器碼的指令,可以被編譯為機(jī)器指令由CPU執(zhí)行。()

A:對(duì)B:錯(cuò)

答案:B匯編程序使用assume偽指令將段與相關(guān)段寄存器關(guān)聯(lián)起來。()

A:錯(cuò)B:對(duì)

答案:B編譯器在編譯匯編程序的過程中,如果碰到了偽指令end,就結(jié)束對(duì)源程序的編譯。()

A:錯(cuò)B:對(duì)

答案:B在debug中查看改變寄存器內(nèi)容的命令是r。()

A:錯(cuò)B:對(duì)

答案:B

第六章測(cè)試

[bx]的偏移地址在bx中,段地址默認(rèn)在()中。

A:ESB:DSC:CSD:SS

答案:Bmov[6],ax的描述正確的是()。

A:(ax)=((ds)*16+6)B:((ds)*16+6)=(ax)C:(ax)=6D:(6)=ax

答案:B通常用loop指令來實(shí)現(xiàn)循環(huán)功能,寄存器()存放循環(huán)次數(shù)。

A:AXB:DXC:CXD:BX

答案:C用Debug查看內(nèi)存,結(jié)果如下:

2100:0000032E76D6392E……

有程序段如下:

movax,2000H

movds,ax

movbx,1000H

movax,[bx]

上面4條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:032EHB:2E03HC:1000HD:2E76H

答案:B用Debug查看內(nèi)存,結(jié)果如下:

2100:0000032E76D6392E……

有程序段如下:

movax,2100H

movds,ax

movbx,4

moval,[bx]

上面4條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:2139HB:0004HC:2E39HD:2100H

答案:A在debug中不再一步步跟蹤循環(huán)程序,希望一次執(zhí)行完CS:0012前的指令,則可以使用()命令實(shí)現(xiàn)。

A:qB:gC:pD:t

答案:B用Debug查看內(nèi)存,結(jié)果如下:

2100:0000032E76D6392E……

有程序段如下:

movax,2100H

moves,ax

movbx,2

movax,es:[bx]

上面4條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:2102HB:762EHC:76D6HD:D676H

答案:D匯編指令“MOV[BX],AL”是一條合法指令。()

A:錯(cuò)B:對(duì)

答案:Bmovax,[bx]可以描述為((ds)*16+(bx))=(ax)。()

A:錯(cuò)B:對(duì)

答案:A

第七章測(cè)試

觀察下面的程序,回答問題。

assumecs:codesg

codesgsegment

dw0123h,0456h,0789h

start:movbx,0

movax,cs:[bx]

movax,4c00h

int21h

codesgends

endstart

關(guān)于程序的描述正確的是()。

A:程序在代碼段中使用數(shù)據(jù),可以正常執(zhí)行B:程序中有錯(cuò)誤,dw定義的數(shù)據(jù)不能放在代碼段codesg中C:去掉end后面的start,程序仍然能夠正常執(zhí)行D:去掉代碼段后面的兩條指令“movax,4c00hint21h“,程序仍然能夠正常執(zhí)行

答案:A觀察下面的程序,回答問題。

assumecs:codesg

codesgsegment

dw0123h,0456h,0789h

start:movbx,2

movax,cs:[bx]

movax,4c00h

int21h

codesgends

endstart

程序中執(zhí)行指令“movax,cs:[bx]“之后,ax寄存器的內(nèi)容是()。

A:0456hB:0789hC:2304hD:0123h

答案:A觀察下面的程序,回答問題。

assumecs:code,ds:data,ss:stack

datasegment

dw0123H,0456H,0789H

dataends

stacksegment

dw0,0,0,0,0,0,0,0

stackends

codesegment

start:movax,stack

movss,ax

……

movax,4c00h

int21h

codeends

endstart

程序加載后,data數(shù)據(jù)段實(shí)際占有的空間為()字節(jié)。

A:2B:3C:16D:6

答案:C觀察下面的程序,回答問題。

assumecs:code,ds:data,ss:stack

datasegment

dw0123H,0456H,0789H,0abcH,0defH,0fedH,0cbaH,0987H

dataends

stacksegment

dw0,0,0,0,0,0,0,0

stackends

codesegment

start:movax,stack

movss,ax

……

movax,4c00h

int21h

codeends

endstart

在代碼段中對(duì)棧段進(jìn)行初始化,sp的初始化指令是()。

A:movsp,0B:movsp,2C:movsp,20hD:movsp,10h

答案:D觀察下面的程序,回答問題。

assumecs:code,ds:data,ss:stack

datasegment

dw0123H,0456H,0789H

dataends

stacksegment

dw0,0,0

stackends

codesegment

start:movax,stack

movss,ax

……

movax,4c00h

int21h

codeends

endstart

設(shè)程序加載后,code段的段地址為073FH,則data段的段地址為()。

A:073DHB:073FHC:073EHD:0740H

答案:A觀察下面的程序,回答問題。

assumecs:code,ds:a,ss:b

asegment

dw0ah,0bh,0ch,0dh,0eh,0fh

aends

bsegment

dw0,0,0,0,0,0,0,0

bends

codesegment

start:

movax,a

movds,ax

movax,b

movss,ax

movsp,16

movbx,0

movcx,6

s:push[bx]

addbx,2

loops

movax,4c00h

int21

codeends

endstart

關(guān)于該程序的描述,不正確的是()。

A:程序能夠?qū)段的數(shù)據(jù)按順序復(fù)制到b段B:程序包含多個(gè)段,b是棧段C:程序能夠?qū)段的數(shù)據(jù)逆序復(fù)制到b段D:程序包含多個(gè)段,code是代碼段

答案:A在8086機(jī)中,如果數(shù)據(jù)、棧和代碼需要的空間不超過64KB,則可以將數(shù)據(jù)和棧放在代碼段中。()

A:錯(cuò)B:對(duì)

答案:B匯編程序最后一條偽指令“endstart”,通知編譯器程序的入口在start標(biāo)號(hào)處。()

A:對(duì)B:錯(cuò)

答案:A匯編程序中可以將數(shù)據(jù)、代碼、棧放入不同的段中,實(shí)現(xiàn)包含多個(gè)段的程序。()

A:錯(cuò)B:對(duì)

答案:B匯編程序中,不能將棧放在代碼段中,必須以棧段的形式單獨(dú)使用。()

A:對(duì)B:錯(cuò)

答案:B

第八章測(cè)試

用Debug查看內(nèi)存,結(jié)果如下:

2000:10003C0A05302E00……

閱讀下面程序段,回答問題。

movax,2000H

movds,ax

movbx,1000H

movax,2[bx]

上面4條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:0530HB:3C0AHC:3005HD:0A3CH

答案:C用Debug查看內(nèi)存,結(jié)果如下:

2000:10003C0A05302E00……

閱讀下面程序段,回答問題。

movax,2000H

movds,ax

movsi,1000H

movax,3[si]

上面4條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:302EHB:0530HC:3005HD:2E30H

答案:D用Debug查看內(nèi)存,結(jié)果如下:

2000:10003C0A05302E00……

閱讀下面程序段,回答問題。

movax,2000H

movds,ax

movbx,1000H

movsi,2

movax,2[bx][si]

上面5條指令執(zhí)行后,寄存器AX中的內(nèi)容為()。

A:302EHB:2E00HC:002EHD:2E30H

答案:C下列指令不合理的是()。

A:movds:[0ffh],alB:pushds:[0ffh]C:movds:[0ffh],axD:movds:[0ffh],0ffh

答案:D指令DIVBX的余數(shù)放于()寄存器中。

A:DXB:AXC:ALD:AH

答案:A已知BX=2000H,DI=1000H,則指令MOVAX,[BX].6[DI]的源操作數(shù)在()中。

A:數(shù)據(jù)段中偏移量為3006H的字節(jié)B:數(shù)據(jù)段中偏移量為2006H的字節(jié)C:數(shù)據(jù)段中偏移量為3000H的字節(jié)D:附加段中偏移量為3000H的字節(jié)

答案:A指令movax,[si][di]是正確的指令。()

A:對(duì)B:錯(cuò)

答案:B指令movax,3[bp][di]是正確的指令。()

A:對(duì)B:錯(cuò)

答案:A指令MOVBYTEPTR[BX],300是正確的指令。()

A:錯(cuò)B:對(duì)

答案:A

第九章測(cè)試

閱讀下面的程序段,回答問題。

MOVBX,0100H

MOVSI,0200H

LEASI,[BX+SI+20H]

以上3條指令執(zhí)行后,SI寄存器的內(nèi)容是()。

A:0320HB:0120HC:0100HD:0300H

答案:A下面關(guān)于匯編指令“movax,offsetstart”描述正確的是()。

A:指令執(zhí)行后ax寄存器的內(nèi)容為0B:操作符offset的功能是取得標(biāo)號(hào)start的偏移地址C:操作符offset的功能是取得標(biāo)號(hào)start的段地址D:指令執(zhí)行后ax寄存器的內(nèi)容為隨機(jī)值

答案:B閱讀下面的程序段,回答問題。

movcx,0

jcxzs

inccx

s:addcx,6

以上程序執(zhí)行后,寄存器cx的內(nèi)容是()。

A:0B:6C:7D:1

答案:B閱讀下面的匯編程序段,回答問題。

start:jmpshorts

db256dup(0)

s:movax,0ffffH

關(guān)于該程序描述正確的是()。

A:s標(biāo)號(hào)距離start標(biāo)號(hào)間隔256字節(jié)B:jmp指令實(shí)現(xiàn)短轉(zhuǎn)移,跳轉(zhuǎn)到標(biāo)號(hào)s處執(zhí)行指令C:程序執(zhí)行后ax寄存器的內(nèi)容為ffffHD:程序?qū)⒁鹁幾g錯(cuò)誤

答案:D閱讀下面的程序段,回答問題。

movbx,0106H

movax,1000H

mov[bx],ax

jmpwordptr[bx]

以上指令執(zhí)行后,IP寄存器的內(nèi)容是()。

A:0106HB:1106HC:1000HD:0000H

答案:C用Debug查看內(nèi)存,結(jié)果如下:

2000:1000BE0106000000……

則此時(shí),CPU執(zhí)行指令:

movax,2000H

moves,ax

jmpdwordptres:[1000H]

以上指令執(zhí)行后,cs寄存器的內(nèi)容是()。

A:01BEHB:0600HC:0006HD:BE01H

答案:C用Debug查看內(nèi)存,結(jié)果如下:

2000:1000BE0106000000……

則此時(shí),CPU執(zhí)行指令:

movax,2000H

moves,ax

jmpdwordptres:[1000H]

以上3條指令執(zhí)行后,IP寄存器的內(nèi)容是()。

A:BE01HB:0600HC:01BEHD:0006H

答案:C指令“l(fā)eabx,str1“與指令”movbx,offsetstr1”執(zhí)行后,bx的內(nèi)容一致。()

A:對(duì)B:錯(cuò)

答案:A指令“jmpfarptr標(biāo)號(hào)”實(shí)現(xiàn)的是段間轉(zhuǎn)移,用標(biāo)號(hào)的段地址和偏移地址修改CS和IP。()

A:錯(cuò)B:對(duì)

答案:B指令“jmpwordptrds:[0]”實(shí)現(xiàn)的是段間轉(zhuǎn)移,用內(nèi)存數(shù)據(jù)修改CS和IP。()

A:錯(cuò)B:對(duì)

答案:A

第十章測(cè)試

下列()是溢出標(biāo)志位。

A:SFB:AFC:CFD:OF

答案:D標(biāo)志位SF=1時(shí),表示運(yùn)算結(jié)果()。

A:<0B:=0C:=1D:>0

答案:A已知(al)=80h,執(zhí)行指令“addal,80H”之后,下面標(biāo)志位的值正確的是()。

A:SF=1B:ZF=1C:PF=0D:CF=0

答案:B指令sbbax,bx是一條()指令。

A:ax加bxB:帶借位的減法C:交換D:ax減bx

答案:B已知(CX)=1234H,執(zhí)行指令“CMPCX,34H”之后,CX寄存器的內(nèi)容是()。

A:1200HB:0000HC:1234HD:1268H

答案:C已知(CX)=1234H,執(zhí)行指令“CMPCX,34H”之后,下面標(biāo)志位的值正確的是()。

A:CF=0B:SF=1C:OF=1D:ZF=1

答案:A已知(ah)=26H,(bh)=37H,閱讀下面程序段,回答問題。

cmpah,bh

jes

addah,bh

jmpshortok

s:addah,ah

ok:ret

執(zhí)行下面程序段后,寄存器ah的內(nèi)容是()。

A:4CHB:37HC:5DHD:26H

答案:C閱讀下面程序,回答問題。

assumecs:code,ds:data

datasegment

db10,11,9,6,8,5,30,38

dataends

codesegment

start:movax,data

movds,ax

movbx,0

movax,0

movcx,8

s:cmpbyteptr[bx],9

jnanext

incax

next:incbx

loops

movax,4c00h

int21h

codeends

endstart

關(guān)于上面程序描述正確的是()。

A:該程序統(tǒng)計(jì)data段中數(shù)值不大于9的字節(jié)的個(gè)數(shù)B:程序返回前,ax寄存器的內(nèi)容是5C:jna根據(jù)比較結(jié)果大于則轉(zhuǎn)移D:程序返回前,ax寄存器的內(nèi)容是4

答案:D執(zhí)行指令“subal,al”之后,標(biāo)志位ZF的值為0。()

A:錯(cuò)B:對(duì)

答案:A匯編指令jne根據(jù)比較結(jié)果不相等則轉(zhuǎn)移。()

A:錯(cuò)B:對(duì)

答案:B

第十一章測(cè)試

閱讀下面程序段,回答問題。

movsp,12h

movax,5678h

movds:[0],ax

callwordptrds:[0]

以上call指令執(zhí)行后,IP寄存器的內(nèi)容是()。

A:5678HB:0010HC:0012HD:0000H

答案:A閱讀下面程序段,回答問題。

movsp,12h

movax,5678h

movds:[0],ax

callwordptrds:[0]

以上call指令執(zhí)行后,SP寄存器的內(nèi)容是()。

A:0010HB:0012HC:5678HD:0000H

答案:A閱讀下面程序,回答問題。

assumecs:code

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論