Informatika | Operációs rendszerek » Iványi Péter - A DOS Debug használata, segédlet

Alapadatok

Év, oldalszám:2008, 4 oldal

Nyelv:magyar

Letöltések száma:76

Feltöltve:2010. február 14.

Méret:61 KB

Intézmény:
-

Megjegyzés:

Csatolmány:-

Letöltés PDF-ben:Kérlek jelentkezz be!



Értékelések

Nincs még értékelés. Legyél Te az első!


Tartalmi kivonat

Debug használata Segédlet Iványi Péter September 20, 2008 1 Jelölések cı́m - cı́mleı́rás • segmens:offset - pl. 0044:0f57 • segmens reg:offset - pl. ES:0f30 • offset - pl. 400 tartomány - egy memóriatartomány kijelölése • cı́m cı́m • cı́m, cı́m • cı́m L hossz lista - egymás után leı́rt hexadecimális számok szöveg - dupla aposztrofok között karaktersorozat 2 A DEBUG indı́tása • D:DEBUG <ENTER> : A program elindul és egy minusz jel jelzi, hogy a program várja a felhasználó parancsait • D:DEBUG file<ENTER> : Betölti a file programot és belép a DEBUG programba 3 A DEBUG parancsai q - (Quit) kilépés a programból h val1 val2 - (Hex) kiı́rja a két érték összegét és különbségét -h 9 000A -h 1 000A 1 0008 9 FFF8 d tartomány - (Dump) memória tartalmának kiı́rása a képernyőre -d c000:0010 C000:0010 24 C000:0020 4D C000:0030 52 C000:0040 2F

C000:0050 29 C000:0060 50 C000:0070 40 C000:0080 E8 - 12 20 4F 56 00 43 00 26 FF 43 58 42 87 49 12 56 FF 4F 2F 45 DB 52 10 8B 00 4D 4D 20 87 2B 00 D8 00 50 47 42 DB 10 80 E8 00 41 41 49 87 01 00 C6 00-60 54-49 2D-47 4F-53 DB-87 10-00 00-38 56-74 00 42 31 20 DB 00 37 22 00 4C 30 28 87 18 34 8C 00 45 30 56 DB 00 2D C8 00 20 20 31 87 00 32 3D 20 4D 56 2E DB 00 00 00 49 41 47 32 87 00 FF C0 42 54 41 20 DB 03 FF 74 $.‘ IB M COMPATIBLE MAT ROX/MGA-G100 VGA /VBE BIOS (V1.2 ). PCIR+. @.874-2 .&VVt"=t -d 100 130 xxxx:0100 EB 24 0D 0A 54 68 69 73-20 69 73 20 6D 79 20 66 xxxx:0110 69 72 73 74 20 44 45 42-55 47 20 70 72 6F 67 72 xxxx:0120 61 6D 21 0D 0A 24 B4 09-BA 02 01 CD 21 B4 00 CD xxxx:0130 21 - .$This is my f irst DEBUG progr am!.$! ! s tartomány szöveg - (Search) memória tartományban megkeresi a szöveg valamennyi előfordulását -s fe00:0 ffff "BIOS" FE00:0021 FE00:006F -d fe00:0 FE00:0000 FE00:0010 FE00:0020 FE00:0030 FE00:0040 FE00:0050

FE00:0060 FE00:0070 41 4D 20 41 6E 41 1B 49 77 20 42 77 63 77 41 4F 61 43 49 61 2E 03 77 53 72 4F 4F 72 6F 0C 61 20 64 4D 53 64 66 04 72 76 20 50 20 20 74 01 64 34 53 41 43 53 77 01 20 2E 6F-66 54-49 4F-50 6F-66 61-72 6F-66 4D-6F 35-31 74 42 59 74 65 74 64 50 77 4C 52 77 20 77 75 47 61 45 49 61 49 E9 6C 00 72 20 47 72 6E 12 61 DB 65 34 48 65 63 14 72 32 49 38 54 20 2E 20 20 EC 42 36 20 49 20 43 42 33 Award SoftwareIB M COMPATIBLE 486 BIOS COPYRIGHT Award Software I nc.oftware Inc Aw.oftw C .Award Modular B IOS v4.51PG23 c tartomány cı́m - (Compare) összehasonlı́t két memória tartományt f tartomány szöveg - (Fill) memória tartomány feltöltése a szöveggel -f 100 12f -d 100 12f xxxx:0100 xxxx:0110 xxxx:0120 ’BUFFER’ 42 55 46 46 45 52 42 55-46 46 45 52 42 55 46 46 BUFFERBUFFERBUFF 45 52 42 55 46 46 45 52-42 55 46 46 45 52 42 55 ERBUFFERBUFFERBU 46 46 45 52 42 55 46 46-45 52 42 55 46 46 45 52 FFERBUFFERBUFFER e cı́m lista - (Enter)

értékek bevitele a memóriába 2 -e 100 B4 09 BA 0B 01 CD 21 B4 00 CD 21 g [cı́m] - (Go) programvégrehajtás folytatása, ha a cı́m is adva van akkor a cı́mre egy töréspontot tesz a [cı́m] - (Assemble) az opcionálisan megadott cı́mtől kezdve assembly parancsokat gépelhetünk be -a 100 xxxx:0100 xxxx:0102 xxxx:0123 xxxx:0126 xxxx:0128 xxxx:012B xxxx:012D xxxx:012F jmp 126 ; db 0d,0a,"This db 0d,0a,"$" mov ah,9 ; mov dx,102 ; int 21 ; int 20 ; adat átugársa is my first DEBUG program!" 09-es funkcionalitás DS:DX -en a $-al lezárt string string kiı́rása kilépés u [tartomány] vagy u [cı́m] - (Unassemble) az aktuális vagy a megadott cı́mtől az opcionálisan megadott tartományban assembly mnemonikra fordı́tja a gépi kódot -u 126 12F xxxx:0126 B409 xxxx:0128 BA0201 xxxx:012B CD21 xxxx:012D B400 xxxx:012F CD21 - MOV MOV INT MOV INT AH,09 DX,0102 21 AH,00 21 i port - (Input) a port-ról beolvas egy

byte-ot o port byte - (Output) a port-ra ı́r egy byte-ot -o -i 18 -o -i 55 70 04 71 70 02 71 <--- Kérdezzük le az órát <--- 18 óra <--- Kérdezzük le a percet <--- 55 perc n filenév - (Name) a file megnevezése r [reg] - (Register) a regiszterek kiı́ratása, vagy ha a regiszter meg van adva, akkor a regiszter értékének beállı́tása -r cx CX 0100 :273 3 Státusz bit Carry Parity Aux. carry Zero Sign Trap Direction Interrupt Overflow 1 CY PO AU ZR PL 0 NC NE NA NZ NG UP EI OV DW DI NV t - (Trace) egy utası́tás végrehajtása w - (Write) a BX és CX regiszterekben együttesen megadott byte-nyi adatot kiı́r a DEBUG a megnevezett file 4 Példa Írjunk egy programot mely egy csillag karaktert nyomtat ki. C:> DEBUG -a 100 xxxx:100 mov ah,02 xxxx:102 mov dl,09 xxxx:104 int 21 xxxx:106 int 20 xxxx:108 -r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE DS=xxxx ES=xxxx SS=xxxx CS=xxxx IP=0100 xxxx:0100 MOV AH,02 -g * Program

terminated normally -r cx :8 -n csillag.com -w -q C:>csillag.com * C:> 4 BP=0000 SI=0000 DI=0000 NV UP EI PL NZ NA PO NC