HP (Hewlett-Packard) 5992-4701 Computer Hardware User Manual


 
w
Words (four bytes). This is the initial default.
g
Giant words (eight bytes).
Each time you specify a unit size with x, that
size becomes the default unit the next time
you use x. (For the 's' and 'i' formats, the
unit size is ignored and is normally not
written.)
addr, starting display address addr is the address where you want GDB to
begin displaying memory. The expression need
not have a pointer value (though it may); it is
always interpreted as an integer address of a byte
of memory. Refer to See “Expressions” (page 83),
for more information on expressions. The default
for addr is usually just after the last address
examined―but several other commands also set
the default address: info breakpoints (to the
address of the last breakpoint listed), info line
(to the starting address of a line), and print (if
you use it to display a value from memory).
For example, 'x/3uh 0x54320' is a request to display three halfwords (h) of memory,
formatted as unsigned decimal integers ('u'), starting at address 0x54320. 'x/4xw $sp'
prints the four words ('w') of memory above the stack pointer (here, '$sp'; see “Registers”
(page 98)) in hexadecimal ('x').
Since the letters indicating unit sizes are all distinct from the letters specifying output
formats, you do not have to remember whether unit size or format comes first; either
order works. The output specifications '4xw' and '4wx' mean exactly the same thing.
(However, the count n must come first; 'wx4' does not work.)
Even though the unit size u is ignored for the formats 's' and 'i', you might still want
to use a count n; for example, '3i' specifies that you want to see three machine
instructions, including any operands. The command disassemble gives an alternative
way of inspecting machine instructions; see “Source and machine code” (page 80).
All the defaults for the arguments to x are designed to make it easy to continue scanning
memory with minimal specifications each time you use x. For example, after you have
inspected three machine instructions with 'x/3i addr', you can inspect the next seven
with just 'x/7'. If you use RET to repeat the x command, the repeat count n is used
again; the other arguments default as for successive uses of x.
The addresses and contents printed by the x command are not saved in the value
history because there is often too much of them and they would get in the way. Instead,
GDB makes these values available for subsequent use in expressions as values of the
convenience variables $_ and $__. After an x command, the last address examined is
88 Examining Data