如何在內(nèi)存中編輯和執(zhí)行匯編程序課件_第1頁
如何在內(nèi)存中編輯和執(zhí)行匯編程序課件_第2頁
如何在內(nèi)存中編輯和執(zhí)行匯編程序課件_第3頁
如何在內(nèi)存中編輯和執(zhí)行匯編程序課件_第4頁
如何在內(nèi)存中編輯和執(zhí)行匯編程序課件_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PARTA-3ExaminingComputerMemory如何在內(nèi)存中編輯和執(zhí)行匯編程序ExecutingInstructionsandPARTA-3ExaminingComputerMem1一、UsingTheDEBUGProgram

1.StartingDEBUG⑴.Someexamples①C>DEBUGCCCC.EXE↙-②C>DEBUGB:\CCCC·EXE↙-③C>DEBUG↙-NCCCC·EXE↙-L↙-⑵.TheInitialValueAfterStartingDEBUGDEBUG程序起動后,把各寄存器和標志位置成以下狀態(tài):一、UsingTheDEBUGProgram2

①SegmentRegister(CS、DS、ES和SS)=自由存貯空間的底部,即DEBUG程序結(jié)束以后的第一個段。②IP=0100H。③SP=段尾或裝載程序臨時區(qū)底部(兩者中取較低的一個)④AX、BX、CX、DX、BP、SI、DI=0若調(diào)入DEBUG時指定了文件名,則BX(高位)+CX=文件長度的字節(jié)數(shù)。⑤標志位置都為清除狀態(tài)。

3

2.AnAssemblylanguageExample

DisplayingaCharacter"3"onScreen:

①KeyinginProgramInstructionsandData:C:\>DEBUG↙(進入DEBUG)-A100↙(進入?yún)R編狀態(tài))XXXX:0100MOVDL,33↙(數(shù)字3的ASCII碼)XXXX:0102MOVAH,2↙XXXX:0104INT21↙(調(diào)用2號功能在屏上顯示DL中字符)XXXX:0106INT20↙(正常結(jié)束中斷)XXXX:0108↙(回車,結(jié)束匯編狀態(tài))-G↙(運行當前匯編程序)

3

(Display)Programterminatednormally

4

②UnAssemble

-U100,108↙XXXX:0100B233MOVDL,33XXXX:0102B402MOVAH,2XXXX:0104CD21INT21XXXX:0106CD20INT20XXXX:0108

③SavingaProgramfromwithinDEBUG

-RBX↙BX0000:↙-RCX↙CX0000:8↙(程序大?。?NW3.COM↙(命名)-W↙(存盤)

④ExitDEBUG

-Q↙C>_

5二、DEBUGCommands

RulesofDEBUGCommands:

①所有命令均為一單字母,其后跟一個或多個參數(shù)。②命令和參數(shù)可大寫、小寫或大、小寫混合方式輸入。③命令與參數(shù)間可用空格或逗號隔開。④修改軟件時注意,DEBUG不能改寫·EXE類型的文件。所以,如果需要改寫,就必須事先將EXE文件的后綴改名,待修改后再恢復原來名字。⑤命令參數(shù)中都以16進制數(shù)表示。

⑥參數(shù)中字符的引號可用雙引號,也可用單引號。

如何在內(nèi)存中編輯和執(zhí)行匯編程序6

1.Assemble

Function:Assemblesymbolicinstructionsintomachinecode.Format:A[Address]Theparameter“Address”:

用字母表示的段寄存器標志加上偏移值,例如“ACS:100”

一個段地址,加上一個偏移值,例如“A4AB:100”。

僅有一個偏移值,例如“A100”。

7

ForExample:

在屏上顯示“梅花”

C>DEBUG↙-A↙08FE∶0100MOVAH,02↙08FE∶0102MOVDL,05↙08FE∶0104INT21↙(調(diào)用2號功能顯示DL中字符)08FE∶0106INT20↙08FE∶0108↙-RCX↙CX0000:8↙-NA.COM↙-W↙-Q↙

Execution:

C>A.COM↙如何在內(nèi)存中編輯和執(zhí)行匯編程序8

2.Unassemble

Function:Unassemblemachinecodeintosymboliccode.Format:U[地址]——Unassemblebeginsatspecificaddress.U〈范圍〉——Unassemblewithinspecificarea.ForExample1:

C>DEBUGKEY·EXE↙-U↙(隱含從當前指針開始)0C1C∶000050PUSHAX↙...-U0000L13↙(從0000開始13個單元)-U0000DF3↙(從0000~DF3)

如何在內(nèi)存中編輯和執(zhí)行匯編程序9

ForExample2:

C>DEBUGWS.COM>11.TXT↙(反匯編存盤)-U100FFFF↙......-Q↙(紅框內(nèi)的字符不可見)

C>_如何在內(nèi)存中編輯和執(zhí)行匯編程序103.Dump

Function:Displaythecontentsofareaofmemory.

Format:—D[地址]-D〈范圍〉

ForExample:

-D0000L1F↙(顯示從0000開始的1F字節(jié)內(nèi)容)-D40:13↙(顯示基本內(nèi)存大小)-DFFFF:5↙(CheckingROMBIOSDate)FFFF:0000CD19E000F030362F-31362F393800FCBD.06/16/98...

如何在內(nèi)存中編輯和執(zhí)行匯編程序114.EnterFunction:

Enterdataintomemory,beginningataspecificlocation.

Format:

E〈地址〉〈內(nèi)容表〉E〈地址〉ForExample1:

-EDS:100F2,“XYZ”,8D↙(代替指定地址開始單元內(nèi)容)

ForExample2:-EDS∶100↙09BC∶010000.3000.3100.3200.↙(回車結(jié)束)

如何在內(nèi)存中編輯和執(zhí)行匯編程序12Note:ForExample2格式有三種操作方式:①按空格鍵————上一個替換完成,并顯示下一個單元的內(nèi)容。如要修改,則鍵入新的字節(jié),如不修改,則只按空格鍵。②輸入一個減號(“-”)————顯示前一單元的內(nèi)容,可進行修改。連續(xù)使用“-”號、可不斷地反方向修改。③按回車鍵——結(jié)束E命令。

如何在內(nèi)存中編輯和執(zhí)行匯編程序135.Register

Function:

Displayandmodificationthecontentsofoneormoreregisters.

Format:

R命令有三種功能格式:①-R——顯示所有寄存器及標志位內(nèi)容。②-R〈寄存器名〉——顯示和修改一個指定的寄存器的內(nèi)容。ForExample:

-RAX↙AXF1F4:3B↙此時,可選擇以下操作之一:a.若不改變其內(nèi)容,則直接按回車鍵。b.若要改變內(nèi)容,可用1~4個16進制值代替原值,再回車。如何在內(nèi)存中編輯和執(zhí)行匯編程序14③-RF——顯示和修改標志位態(tài)。

ForExample:-RF↙

NVUPEIPLNZNAPONC-此時,可采用以下兩種操作之一:a.若不需要修改,直接按回車鍵。b.若有一個或多個標志要修改,則可輸入此標志的相反值。輸入標志的次序是無關的,輸入各標志之間可以沒有空格,輸入完畢,按回車鍵。即-PONZDINV

PWS中的標志符號表示

置1:置0:狀態(tài):

-RF↙NVUPEIPLZRNAPENC-

OF

溢出

DF

方向

IF中斷

SF符號

ZF零

AF輔助

PF奇偶

CF進位OVNV有/無

DPUP減/增

EIDI開/關NGPL負/正ZRNZ零/非ACNA有/無PEPO奇/偶CYNC有/無OFDFIFSFZFAFPFC156.Go

Function:RuntheexecutableprogramInmemory.

Format:G[=〈始地址〉][〈斷點〉…]C>DEBUGB:KGY.EXE↙-G=023↙(在地址CS:0023中斷)7.Trace

Function:Tracetheexecutionofoneinstruction.

Format:T[=地址]——執(zhí)行CS:IP或指定地址處的指令。T[=地址][n]——執(zhí)行指定地址后n條指令。

ForExample:-T03↙(執(zhí)行CS:IP后3條指令)-T=CS:0F3B↙(執(zhí)行地址CS:0F3B處指令)

6.Go16

8.Search

Function:Searchaaddressofspecifycontent.

Format:S〈地址范圍〉〈內(nèi)容表〉ForExample1:

-S1001206↙(在DS∶100~120的范圍內(nèi)查找06H地址)08FF∶0101(查得08FF∶0101內(nèi)存單元的內(nèi)容為06H)ForExample2:-SCS∶00010041“XYZ”↙

〖28-17〗

179.Compare

Function:Comparethecontentbetweentwomemoryarea.

Format:-C〈源地址范圍〉〈目的地址〉

DisplayFormat:〈源地址〉〈源內(nèi)容〉〈目標內(nèi)容〉〈目標地址〉

ForExample1:

-CCS∶100L20200↙08FF∶0105000608FF∶0205

Note:以CS∶100為內(nèi)存首地址的32個(20H)字節(jié)與以CS∶200為首地址的32個字節(jié)進行比較。其中的CS∶105內(nèi)容“00”與CS∶205內(nèi)容“06”不同?!?8-18〗如何在內(nèi)存中編輯和執(zhí)行匯編程序18

10.Fill

Function:Fillthecontenttospecifymemoryunit.

Format:F〈地址范圍〉〈內(nèi)容表〉

ForExample:

-F04BA∶100L5F3“XYZ”8D↙

(用指定的5個字節(jié)填入04BA:100開始的5個內(nèi)存單元)

Note:若內(nèi)容表中的字節(jié)數(shù)少于地址范圍,則內(nèi)容表被重復使用,直到指定范圍被填滿為止;若內(nèi)容表的字節(jié)數(shù)大于地址范圍,則多余的內(nèi)容被忽略?!?8-19〗

1911.Move

Function:Movethecontentfromspecifymemoryareatoanother.

Format:M〈源地址范圍〉〈目的地址〉ForExample1:-MCS∶100110500↙

(將CS∶100~110共17個字節(jié)內(nèi)容搬到DS∶500開始的內(nèi)存區(qū))

ForExample2:-MCS∶100110CS∶105↙-MCS∶100110CS∶0F5↙

目的地址與源地址可以重迭,但重迭部分原來內(nèi)容被覆蓋。例,在程序中插入一段指令:如何在內(nèi)存中編輯和執(zhí)行匯編程序20

12.Hexarithmetic

Function:計算兩個16進制數(shù)的和與差。

Format:H〈值〉〈值〉

ForExample:

-H0F8↙00170007(表示0FH+8H=0017H,0FH-08H=0007H)

13.Name

Function:Nameaprogram.

Format:N〈文件標識符〉[〈文件標識符〉……]

ForExample:A>DEBUG↙-Nb:myprog↙-L↙〖28-21〗

2114.Load

Function:Loadaprogramtomemory.

Format:L〈起址〉〈驅(qū)動器號〉〈扇區(qū)號〉〈扇區(qū)數(shù)〉L[地址](裝入文件到指定地址,省地址則為CS:0100)ForExample1:-LCS:1200053↙(“0”為A盤)ForExample2:-NB:XEARCH.EXE↙;設置文件標識符-L↙;讀入文件

……-RBX↙;檢查文件長度BX0000:↙-RCX↙CX014A;原文件長度為014AH字節(jié)

:012E↙;修改文件長度為012EH字節(jié)-W↙;寫盤命令(Write)〖28-22〗如何在內(nèi)存中編輯和執(zhí)行匯編程序2215.Write

Function:Writeaprogramontodisk.

Format:W〈起址〉〈驅(qū)動器號〉〈扇區(qū)號〉〈扇區(qū)數(shù)〉

——把數(shù)據(jù)寫到指定的區(qū)段W[地址]——把指定的內(nèi)存中數(shù)據(jù)寫入文件中-NB:PROG↙;設置文件標識符

-L

↙……-RBX↙;修改BX、CX的內(nèi)容BX0000:0↙;文件長度的高位字節(jié)數(shù)-RCX↙CX001F;文件長度的低位字節(jié)數(shù):22↙-W↙;寫入磁盤?!?8-23〗如何在內(nèi)存中編輯和執(zhí)行匯編程序23Note:Wextenstion,becauseWdoesnotsupportthe.exeformat.tomodifya.exeprogram,youmaychangetheextensiontemporarily.Note:Writeprogramfilesonly24

16.Input

Function:Getdatafromaport(某端口).

Format:I〈端口地址〉

ForExample:-I2F8↙6B(表示從端口02F8取得的數(shù)據(jù)為6BH)

17.OutputFunction:Outputdatatoaspecialport(指定端口).

Format:O〈端口地址〉〈字節(jié)〉

ForExample:-O2F84F↙(把字節(jié)值4FH送到端口2F8去)〖28-25〗

25

18.ProceedFunction:executeasetofrelatedinstructions.(Executesasubroutinecall(call),loop(LOOP),interrupt(INT),orrepeatstringinstruction(REP)throughtothenextinstruction)

ForExample:Editingandexecutingaprogram.

編輯并執(zhí)行一個程序:

-A100↙xxxx:0100MOVDL,1↙(“1”為笑臉的AscII碼)xxxx:0102MOVAH,2↙xxxx:0104INT21↙xxxx:0106INT20↙xxxx:0108↙-T-T-P(用“P”命令執(zhí)行INT21h)

〖28-26〗如何在內(nèi)存中編輯和執(zhí)行匯編程序26

19.QuitFunction:QuittheDEBUGsession

ForExample:Editingandexecutingaprogram.

編輯并執(zhí)行一個程序:

-A100↙xxxx:0100MOVDL,1↙(“1”為笑臉的AscII碼)xxxx:0102MOVAH,2↙xxxx:0104INT21↙xxxx:0106INT20↙xxxx:0108↙-G=100↙?Programteminatednormally-Q↙〖28-27〗如何在內(nèi)存中編輯和執(zhí)行匯編程序27Questions:

Page49

3-23-43-73-83-103-12(參考P.46顯示字符!)Questions:28PARTA-3ExaminingComputerMemory如何在內(nèi)存中編輯和執(zhí)行匯編程序ExecutingInstructionsandPARTA-3ExaminingComputerMem29一、UsingTheDEBUGProgram

1.StartingDEBUG⑴.Someexamples①C>DEBUGCCCC.EXE↙-②C>DEBUGB:\CCCC·EXE↙-③C>DEBUG↙-NCCCC·EXE↙-L↙-⑵.TheInitialValueAfterStartingDEBUGDEBUG程序起動后,把各寄存器和標志位置成以下狀態(tài):一、UsingTheDEBUGProgram30

①SegmentRegister(CS、DS、ES和SS)=自由存貯空間的底部,即DEBUG程序結(jié)束以后的第一個段。②IP=0100H。③SP=段尾或裝載程序臨時區(qū)底部(兩者中取較低的一個)④AX、BX、CX、DX、BP、SI、DI=0若調(diào)入DEBUG時指定了文件名,則BX(高位)+CX=文件長度的字節(jié)數(shù)。⑤標志位置都為清除狀態(tài)。

31

2.AnAssemblylanguageExample

DisplayingaCharacter"3"onScreen:

①KeyinginProgramInstructionsandData:C:\>DEBUG↙(進入DEBUG)-A100↙(進入?yún)R編狀態(tài))XXXX:0100MOVDL,33↙(數(shù)字3的ASCII碼)XXXX:0102MOVAH,2↙XXXX:0104INT21↙(調(diào)用2號功能在屏上顯示DL中字符)XXXX:0106INT20↙(正常結(jié)束中斷)XXXX:0108↙(回車,結(jié)束匯編狀態(tài))-G↙(運行當前匯編程序)

3

(Display)Programterminatednormally

32

②UnAssemble

-U100,108↙XXXX:0100B233MOVDL,33XXXX:0102B402MOVAH,2XXXX:0104CD21INT21XXXX:0106CD20INT20XXXX:0108

③SavingaProgramfromwithinDEBUG

-RBX↙BX0000:↙-RCX↙CX0000:8↙(程序大?。?NW3.COM↙(命名)-W↙(存盤)

④ExitDEBUG

-Q↙C>_

33二、DEBUGCommands

RulesofDEBUGCommands:

①所有命令均為一單字母,其后跟一個或多個參數(shù)。②命令和參數(shù)可大寫、小寫或大、小寫混合方式輸入。③命令與參數(shù)間可用空格或逗號隔開。④修改軟件時注意,DEBUG不能改寫·EXE類型的文件。所以,如果需要改寫,就必須事先將EXE文件的后綴改名,待修改后再恢復原來名字。⑤命令參數(shù)中都以16進制數(shù)表示。

⑥參數(shù)中字符的引號可用雙引號,也可用單引號。

如何在內(nèi)存中編輯和執(zhí)行匯編程序34

1.Assemble

Function:Assemblesymbolicinstructionsintomachinecode.Format:A[Address]Theparameter“Address”:

用字母表示的段寄存器標志加上偏移值,例如“ACS:100”

一個段地址,加上一個偏移值,例如“A4AB:100”。

僅有一個偏移值,例如“A100”。

35

ForExample:

在屏上顯示“梅花”

C>DEBUG↙-A↙08FE∶0100MOVAH,02↙08FE∶0102MOVDL,05↙08FE∶0104INT21↙(調(diào)用2號功能顯示DL中字符)08FE∶0106INT20↙08FE∶0108↙-RCX↙CX0000:8↙-NA.COM↙-W↙-Q↙

Execution:

C>A.COM↙如何在內(nèi)存中編輯和執(zhí)行匯編程序36

2.Unassemble

Function:Unassemblemachinecodeintosymboliccode.Format:U[地址]——Unassemblebeginsatspecificaddress.U〈范圍〉——Unassemblewithinspecificarea.ForExample1:

C>DEBUGKEY·EXE↙-U↙(隱含從當前指針開始)0C1C∶000050PUSHAX↙...-U0000L13↙(從0000開始13個單元)-U0000DF3↙(從0000~DF3)

如何在內(nèi)存中編輯和執(zhí)行匯編程序37

ForExample2:

C>DEBUGWS.COM>11.TXT↙(反匯編存盤)-U100FFFF↙......-Q↙(紅框內(nèi)的字符不可見)

C>_如何在內(nèi)存中編輯和執(zhí)行匯編程序383.Dump

Function:Displaythecontentsofareaofmemory.

Format:—D[地址]-D〈范圍〉

ForExample:

-D0000L1F↙(顯示從0000開始的1F字節(jié)內(nèi)容)-D40:13↙(顯示基本內(nèi)存大?。?DFFFF:5↙(CheckingROMBIOSDate)FFFF:0000CD19E000F030362F-31362F393800FCBD.06/16/98...

如何在內(nèi)存中編輯和執(zhí)行匯編程序394.EnterFunction:

Enterdataintomemory,beginningataspecificlocation.

Format:

E〈地址〉〈內(nèi)容表〉E〈地址〉ForExample1:

-EDS:100F2,“XYZ”,8D↙(代替指定地址開始單元內(nèi)容)

ForExample2:-EDS∶100↙09BC∶010000.3000.3100.3200.↙(回車結(jié)束)

如何在內(nèi)存中編輯和執(zhí)行匯編程序40Note:ForExample2格式有三種操作方式:①按空格鍵————上一個替換完成,并顯示下一個單元的內(nèi)容。如要修改,則鍵入新的字節(jié),如不修改,則只按空格鍵。②輸入一個減號(“-”)————顯示前一單元的內(nèi)容,可進行修改。連續(xù)使用“-”號、可不斷地反方向修改。③按回車鍵——結(jié)束E命令。

如何在內(nèi)存中編輯和執(zhí)行匯編程序415.Register

Function:

Displayandmodificationthecontentsofoneormoreregisters.

Format:

R命令有三種功能格式:①-R——顯示所有寄存器及標志位內(nèi)容。②-R〈寄存器名〉——顯示和修改一個指定的寄存器的內(nèi)容。ForExample:

-RAX↙AXF1F4:3B↙此時,可選擇以下操作之一:a.若不改變其內(nèi)容,則直接按回車鍵。b.若要改變內(nèi)容,可用1~4個16進制值代替原值,再回車。如何在內(nèi)存中編輯和執(zhí)行匯編程序42③-RF——顯示和修改標志位態(tài)。

ForExample:-RF↙

NVUPEIPLNZNAPONC-此時,可采用以下兩種操作之一:a.若不需要修改,直接按回車鍵。b.若有一個或多個標志要修改,則可輸入此標志的相反值。輸入標志的次序是無關的,輸入各標志之間可以沒有空格,輸入完畢,按回車鍵。即-PONZDINV

PWS中的標志符號表示

置1:置0:狀態(tài):

-RF↙NVUPEIPLZRNAPENC-

OF

溢出

DF

方向

IF中斷

SF符號

ZF零

AF輔助

PF奇偶

CF進位OVNV有/無

DPUP減/增

EIDI開/關NGPL負/正ZRNZ零/非ACNA有/無PEPO奇/偶CYNC有/無OFDFIFSFZFAFPFC436.Go

Function:RuntheexecutableprogramInmemory.

Format:G[=〈始地址〉][〈斷點〉…]C>DEBUGB:KGY.EXE↙-G=023↙(在地址CS:0023中斷)7.Trace

Function:Tracetheexecutionofoneinstruction.

Format:T[=地址]——執(zhí)行CS:IP或指定地址處的指令。T[=地址][n]——執(zhí)行指定地址后n條指令。

ForExample:-T03↙(執(zhí)行CS:IP后3條指令)-T=CS:0F3B↙(執(zhí)行地址CS:0F3B處指令)

6.Go44

8.Search

Function:Searchaaddressofspecifycontent.

Format:S〈地址范圍〉〈內(nèi)容表〉ForExample1:

-S1001206↙(在DS∶100~120的范圍內(nèi)查找06H地址)08FF∶0101(查得08FF∶0101內(nèi)存單元的內(nèi)容為06H)ForExample2:-SCS∶00010041“XYZ”↙

〖28-17〗

459.Compare

Function:Comparethecontentbetweentwomemoryarea.

Format:-C〈源地址范圍〉〈目的地址〉

DisplayFormat:〈源地址〉〈源內(nèi)容〉〈目標內(nèi)容〉〈目標地址〉

ForExample1:

-CCS∶100L20200↙08FF∶0105000608FF∶0205

Note:以CS∶100為內(nèi)存首地址的32個(20H)字節(jié)與以CS∶200為首地址的32個字節(jié)進行比較。其中的CS∶105內(nèi)容“00”與CS∶205內(nèi)容“06”不同。〖28-18〗如何在內(nèi)存中編輯和執(zhí)行匯編程序46

10.Fill

Function:Fillthecontenttospecifymemoryunit.

Format:F〈地址范圍〉〈內(nèi)容表〉

ForExample:

-F04BA∶100L5F3“XYZ”8D↙

(用指定的5個字節(jié)填入04BA:100開始的5個內(nèi)存單元)

Note:若內(nèi)容表中的字節(jié)數(shù)少于地址范圍,則內(nèi)容表被重復使用,直到指定范圍被填滿為止;若內(nèi)容表的字節(jié)數(shù)大于地址范圍,則多余的內(nèi)容被忽略?!?8-19〗

4711.Move

Function:Movethecontentfromspecifymemoryareatoanother.

Format:M〈源地址范圍〉〈目的地址〉ForExample1:-MCS∶100110500↙

(將CS∶100~110共17個字節(jié)內(nèi)容搬到DS∶500開始的內(nèi)存區(qū))

ForExample2:-MCS∶100110CS∶105↙-MCS∶100110CS∶0F5↙

目的地址與源地址可以重迭,但重迭部分原來內(nèi)容被覆蓋。例,在程序中插入一段指令:如何在內(nèi)存中編輯和執(zhí)行匯編程序48

12.Hexarithmetic

Function:計算兩個16進制數(shù)的和與差。

Format:H〈值〉〈值〉

ForExample:

-H0F8↙00170007(表示0FH+8H=0017H,0FH-08H=0007H)

13.Name

Function:Nameaprogram.

Format:N〈文件標識符〉[〈文件標識符〉……]

ForExample:A>DEBUG↙-Nb:myprog↙-L↙〖28-21〗

4914.Load

Function:Loadaprogramtomemory.

Format:L〈起址〉〈驅(qū)動器號〉〈扇區(qū)號〉〈扇區(qū)數(shù)〉L[地址](裝入文件到指定地址,省地址則為CS:0100)ForExample1:-LCS:1200053↙(“0”為A盤)ForExample2:-NB:XEARCH.EXE↙;設置文件標識符-L↙;讀入文件

……-RBX↙;檢查文件長度BX0000:↙-RCX↙CX014A;原文件長度為014AH字節(jié)

:012E↙;修改文件長度為012EH字節(jié)-W↙;寫盤命令(Write)〖28-22〗如何在內(nèi)存中編輯和執(zhí)行匯編程序5015.Write

Function:Writeaprogramontodisk.

Format:W〈起址〉〈驅(qū)動器號〉〈扇區(qū)號〉〈扇區(qū)數(shù)〉

——把數(shù)據(jù)寫到指定的區(qū)段W[地址]——把指定的內(nèi)存中數(shù)據(jù)寫入文件中-NB:PROG↙;設置文件標識符

-L

↙……-RBX↙;修改BX、CX的內(nèi)容BX0000:0↙;文件長度的高位字節(jié)數(shù)-RCX↙

溫馨提示

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

評論

0/150

提交評論