dis -- object code disassembler


dis [-d sec] [-D sec] [-F function] [-L] [-l string] [-o] [-s] [-T] [-t sec] [-V] file ...


The dis(CP) command produces an assembly language listing of file, which may be an object file or an archive of object files. The listing includes assembly statements and an octal or hexadecimal representation of the binary that produced those statements.

The following options are interpreted by the disassembler and may be specified in any order.

-d sec
Disassemble the named section as data, printing the offset of the data from the beginning of the section.

-D sec
Disassemble the named section as data, printing the actual address of the data.

-F function
Disassemble only the named function in each object file specified on the command line. The -F option may be specified multiple times on the command line.

Lookup source labels for subsequent printing. This option works only if the file was compiled with additional debugging information (for example, the -g option of cc).

-l string
Disassemble the archive file specified by string. For example, the command

dis -l x -l z

disassembles libx.a and libz.a, which are assumed to be in LIBDIR.

Print numbers in octal. The default is hexadecimal.

Perform symbolic disassembly where possible. Symbolic disassembly output will appear on the line following the instruction. Symbol names will be printed using C syntax.

Debug the operation of the disassembler itself.

-t sec
Disassemble the named section as text.

Print, on standard error, the version number of the disassembler being executed.

If the -d, -D or -t options are specified, only those named sections from each user-supplied file name are disassembled. Otherwise, all sections containing text will be disassembled.

On output, a number enclosed in brackets at the beginning of a line, such as (5), indicates that the break-pointable line number starts with the following instruction. These line numbers will be printed only if the file was compiled with additional debugging information (for example, the -g option of cc). An expression such as <40> in the operand field or in the symbolic disassembly, following a relative displacement for control transfer instructions, is the computed address within the section to which control will be transferred. A function name will appear in the first column, followed by () if the object file contains a symbol table.


The self-explanatory diagnostics indicate errors in the command line or problems encountered with the specified files.


Since the -da option did not adhere to the command syntax rules, it has been replaced by -D.

At this time, symbolic disassembly does not take advantage of additional information available if the file is compiled with the -g option.


usually /usr/ccs/lib

See also

a.out(FP), as(CP), cc(CP), ld(CP)

Standards conformance

dis(CP) is conformant with:

X/Open Portability Guide, Issue 3, 1989 .

© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003