2.2.35. DISASSEMBLE

The DISASSEMBLE command displays memory addresses and corresponding assembly code on the DSM tabbed page of the Code window.

Syntax

DISASSEMBLE [/D|/S|/A|/J] [address | @stack_level]

where:

/D

Disassemble using the default instruction format. This is ARM state.

/S

Disassemble using the standard instruction format. This is ARM state.

/A

Disassemble using the alternate instruction format. This is Thumb state.

/J

Disassemble using the Java instruction set.

address

Specifies the starting address for disassembly. This can be a literal address or a debugger expression.

stack_level

Enables you to specify the starting point without knowing its address. Stack level 0 is the current address in the current procedure, stack level 1 is the code address from which the current procedure was called.

Description

The DISASSEMBLE command displays memory addresses in hexadecimal and assembly code on the DSM tabbed page of the Code window, starting at the specified memory location and using the assembler mnemonics and register names associated with the processor type of this connection.

If the specified address falls in the middle of an instruction, the whole instruction is displayed. Memory is displayed starting at the address held in the PC if you do not supply an address. The current execution context and variable scope of the program remains unchanged even if you select an alternate stack level.

If you issue the OPTION command with the LINES=ON option, source code is intermixed with the assembly language code. If you issue the OPTION command with the SYMBOLS=ON option, symbol references are displayed with the assembly language symbols and labels.

The DISASSEMBLE command runs synchronously unless background access to target memory is supported. Use the WAIT command to force it to run synchronously.

Examples

The following examples show how to use DISASSEMBLE:

DISASSEMBLE /S @1

Disassemble, using the standard instruction format (ARM state format), the instructions that are executed when the current function returns, displaying the result in the Dsm tab in the File Editor pane .

DISASSEMBLE 0x80200

Disassemble, using an instruction format selected using symbol table information, the instructions starting at address 0x80200, displaying the result in the Dsm tab in the File Editor pane .

See also

The following commands provide similar or related functionality:

Copyright © 2003, 2004 ARM Limited. All rights reserved.ARM DUI 0235B
Non-Confidential