📄 dbx
字号:
Changing the current function implicitly changes the current source fileto the one that contains the function; it also changes the current scopeused for name resolution..IP "\fBlist\fP [\fIsource-line-number\fP [\fB,\fP \fIsource-line-number\fP]]".ns.IP "\fBlist\fP \fIprocedure/function\fP"List the lines in the current source file from the first line number tothe second inclusive.If no lines are specified, the next 10 lines are listed.If the name of a procedure or function is givenlines \fIn-k\fP to \fIn+k\fP are listed where \fIn\fP is the first statementin the procedure or function and \fIk\fP is small..IP "\fBuse\fP \fIdirectory-list\fP"Set the list of directories to be searchedwhen looking for source files..sp 1.br.ne 8v.PP.B Machine Level Commands.sp 1.TP\fBtracei\fP [\fIaddress\fP] [\fBif\fP \fIcond\fP].ns.TP\fBtracei\fP [\fIvariable\fP] [\fBat\fP \fIaddress\fP] [\fBif\fP \fIcond\fP].ns.TP\fBstopi\fP [\fIaddress\fP] [\fBif\fP \fIcond\fP].ns.TP\fBstopi\fP [\fBat\fP] [\fIaddress\fP] [\fBif\fP \fIcond\fP]Turn on tracing or set a stop using a machine instruction address..TP\fBstepi\fP.ns.TP\fBnexti\fPSingle step as in \fBstep\fP or \fBnext\fP, but do a single instructionrather than source line..TP\fIaddress\fP \fB,\fP\fIaddress\fP\fB/\fP [\fImode\fP].ns.TP[\fIaddress\fP] \fB/\fP [\fIcount\fP] [\fImode\fP]Print the contents of memory starting at the first \fIaddress\fPand continuing up to the second \fIaddress\fP or until \fIcount\fP items are printed.If no address is specified, the address following the oneprinted most recently is used.The \fImode\fP specifies how memory is to be printed;if it is omitted the previous mode specified is used.The initial mode is ``X''.The following modes are supported:.nr In 5.in +\n(Inn.ta \n(Inn.br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBi\fP \cprint the machine instruction.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBd\fP \cprint a short word in decimal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBD\fP \cprint a long word in decimal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBo\fP \cprint a short word in octal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBO\fP \cprint a long word in octal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBx\fP \cprint a short word in hexadecimal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBX\fP \cprint a long word in hexadecimal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBb\fP \cprint a byte in octal.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBc\fP \cprint a byte as a character.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBs\fP \cprint a string of characters terminated by a null byte.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBf\fP \cprint a single precision real number.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fBg\fP \cprint a double precision real number.in -\n(Inn.br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.PPSymbolic addresses are specified by preceding the name with an ``&''.Registers are denoted by ``$rN'' where N is the number of the register.Addresses may be expressions made up of other addresses andthe operators ``+'', ``-'', and indirection (unary ``*'')..sp 1.br.ne 8v.PP.B Miscellaneous Commands.sp 1.IP "\fBsh\fP \fIcommand-line\fP"Pass the command line to the shell for execution.The SHELL environment variable determines which shell is used..IP "\fBalias\fP \fInew-command-name\fP \fIold-command-name\fP"Respond to \fInew-command-name\fPas though it were \fIold-command-name\fP..IP \fBhelp\fPPrint out a synopsis of \fI\*(dB\fP commands..IP \fBgripe\fPInvoke a mail program to send a message to the person in charge of \fI\*(dB\fP..TP\fBsource\fP \fIfilename\fPRead \fI\*(dB\fP commands from the given \fIfilename\fP..IP "\fBquit\fP"Exit \fI\*(dB\fP..SH FILES.nr In 20.in +\n(Inn.ta \n(Inn.br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&a.out \cobject file.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\&.\*(dBinit \cinitial commands.br.nr wg 0v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.SH SEE ALSOcc(1), f77(1), mod(l).SH COMMENTSNon-local gotos can cause some trace/stops to be missed.Most of the command names are too long.The alias facility helps, but is really quite weak.A \fIcsh\fP-like history capability would improve the situation.But then, who wants to duplicate the c-shell in a debugger?.PP\fI\*(DB\fP suffers from the same ``multiple include'' malady as does sdb.If you have a program consisting of a number of object filesand each is built from source files that include header files,the symbolic information for the header files is replicated ineach object file.Since about one debugger start-up is done for each link,having the linker (ld) re-organize the symbol informationwon't save much time, though it would reduce some of thedisk space used.The problem is an artifact of the unrestricted semanticsof #include's in C; for example an include file can containstatic declarations that are separate entities for each filein which they are included.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -