0x
é um prefixo muito comum para números escritos em hexadecimal, ou seja, na base 16.
x
é um comando do GDB para exibir o conteúdo de uma parte da memória. Os dígitos e letras após o /
indicam o que imprimir: 300 palavras ( w
), em hexadecimal ( x
). O número depois disso é o endereço no qual começar a imprimir.
"r = 4 w = 2 x = 1" é sobre a representação numérica e simbólica das permissões do arquivo Unix e não tem absolutamente nada a ver com isso.
Imprimir uma parte aleatória da memória de um processo não produz nenhum dado útil. Se você tiver o código-fonte e um binário construído com símbolos de depuração, o depurador poderá informar em que endereço cada variável do programa está armazenada; isso fornece informações sobre dados na pilha, mas não na memória alocada dinamicamente. Se você não tem a fonte, então você está fazendo engenharia reversa, o que é muito mais complicado que depurar.
O significado dos dados, ou seja, o que os dados da variável representam, não é algo que um computador possa lhe dizer.
Noções básicas sobre dados mostrados por um depurador, em geral, requer alguma experiência de programação. O significado desses dados é totalmente dependente do programa, não há considerações gerais. Sem mergulhar fundo no programa específico e na maneira como foi compilado, é apenas um monte de números.