1.4 KiB
1.4 KiB
Depuració amb Kdbg
Depurar programa
kdbg ./executable
Valors de variables i registres
Podem veure el contingut de les variables, adreces de memòria i registres afegint watches durant l'execució pas a pas d'un programa.
Contingut d'una variable
(mida) nom_variable
!!! example "Exemple"
`(char)`, `(char[8])`, `(short[4])`, `(int[2])`, `(long)`
Adreça d'una variable (i contingut)
&nom_variable
Contingut d'un registre de 64 bits:
$nom_registre
Per a veure només una part dels registres r8-r15 cal utilitzar un sufix segons el què volguem recuperar:
l
: 1 byte menys significatiuw
(word): 2 bytes menys significatiusd
(double) 4 bytes menys significatius
Per als registres rax
, rbx
, rcx
i rdx
podem utilitzar:
al
,bl
,cl
,dl
, : primer byte menys significatiuah
,bh
,ch
,dh
, : segon byte menys significatiu
Per als registres rsi
, rdi
i rbp
podem utilitzar:
sil
,dil
,bpl
, : primer byte menys significatiu
!!! example "Exemple"
- `$al` primer byte menys significatiu de `rax`
- `$ah` segon byte menys significatiu de `rax`
- `$ax` valor dels 2 bytes menys significatius de `rax`
- `$eax` valor dels 4 byte menys significatiu de `rax`
- `$rax` valor del `rax` sencer (8 bytes)
- `$r8l` 1 byte menys significatiu de `r8`
- `$r8d` 4 bytes menys significatius de `r8`