*   >> Læs Uddannelse artikler >> science >> computers

***** Debug ******

Det er et fantastisk værktøj til debuging programmer, unassembling og revner, og læse "skjulte" hukommelse områder som boot sektor, og meget mere.

Følgende blev kopieret fra en forsamling tutorial, der er forfatter, vi kan ikke kredit, fordi vi ikke har nogen idé om, hvem han er

Kom i DOS og skriv "debug", vil du få en prompt som dette:.


< p> -

Nu skriver, bør du få følgende svar "?":

samle en [adresse] sammenligne C rækkevidde adresse dump D [interval] indtaste E-adressen [liste] fylde F rækkevidde liste gå G [= adresse] [adresser] hex H værdi1 værdi2 input I port belastning L [adresse] [drev] [firstsector] [antal] flytte M rækkevidde adresse navn N [stinavn] [arglist] output O-port byte fortsætte P [= adresse] [antal] afslutte Q registrere R [tilmelding] søgning S rækkevidde liste spor t [= adresse] [værdi] unassemble U [interval] skriver W [adresse] [drev] [firstsector] [antal] allokere udvidet hukommelse XA [#pages] deallocate udvidet hukommelse XD [håndtag] Kort udvidet hukommelse sider XM [Lpage] [Ppage] [håndtag] display udvidet hukommelse status XS

Lets gå gennem hver af disse kommandoer: Saml:

< p> -a 107A: 0100

På dette punkt kan du begynde at samle nogle programmer, ligesom at bruge en assembler.

Men debug assembler er meget begrænset som du sikkert vil lægge mærke til. Lad os prøve at indtaste et simpelt program:

-a 107A: 0100 MOV AH, 02 107A: 0102 MOV DL, 41 107A: 0104 INT 21 107A: 0106 INT 20 -g En

Program afsluttes normalt

Det er det samme program vi gjorde i slutningen af ​​det forrige kapitel. Bemærk, hvordan du kører det program, du lige har indtastet med "g", og også mærke, hvordan opsætningen del ikke er der? Det er fordi debug bare er for begrænsede til at understøtte det.

En anden ting du kan gøre med at samle, er angive den adresse, hvor du ønsker at starte, som standard er det 0100, da det er hvor alle .COM filer starter. Sammenlign:

Sammenlign tager 2 blok af hukommelse og viser dem side om side, byte for byte. Lets do et eksempel. Helt ud af debug, hvis du ikke allerede har ved hjælp af "q". Skriv nu "debug c: \\ command.com"

-c 0100 l 8 0200 10A3: 0100 7A 06 10A3: 0200

Denne kommando sammenlignede offset 0100 med 0200 for en længde på 8 byte . Debug reageret med den placering, der var anderledes.

Hvis 2 steder var de samme, debug ville bare udelade dem, hvis alle er de samme debug ville blot returnere til pr

Page   <<       [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Læs Uddannelse artikler,https://uddannelse.nmjjxx.com All rights reserved.