Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
ndisasm.1
Package: nasm-0.98.zip [view]
Upload User: yuppie_zhu
Upload Date: 2007-01-08
Package Size: 535k
Code Size: 3k
Category:
Compiler program
Development Platform:
C/C++
- ." $Id: ndisasm.1,v 2.1 1999/05/21 04:16:13 hpa Exp $
- ."
- ." This file is part of NASM and is released under the NASM License.
- ."
- .TH NDISASM 1 "The Netwide Assembler Project"
- .SH NAME
- ndisasm - the Netwide Disassembler - 80x86 binary file disassembler
- .SH SYNOPSIS
- .B ndisasm
- [
- .B -o
- origin
- ] [
- .B -s
- sync-point [...]]
- [
- .B -a
- |
- .B -i
- ] [
- .B -b
- bits
- ] [
- .B -u
- ] [
- .B -e
- hdrlen
- ] [
- .B -k
- offset,length [...]]
- infile
- .br
- .B ndisasm -h
- .br
- .B ndisasm -r
- .SH DESCRIPTION
- The
- .B ndisasm
- command generates a disassembly listing of the binary file
- .I infile
- and directs it to stdout.
- .SS OPTIONS
- .TP
- .B -h
- Causes
- .B ndisasm
- to exit immediately, after giving a summary of its invocation
- options.
- .TP
- .BI -r
- Causes
- .B ndisasm
- to exit immediately, after displaying its version number.
- .TP
- .BI -o " origin"
- Specifies the notional load address for the file. This option causes
- .B ndisasm
- to get the addresses it lists down the left hand margin, and the
- target addresses of PC-relative jumps and calls, right.
- .TP
- .BI -s " sync-point"
- Manually specifies a synchronisation address, such that
- .B ndisasm
- will not output any machine instruction which encompasses bytes on
- both sides of the address. Hence the instruction which
- .I starts
- at that address will be correctly disassembled.
- .TP
- .BI -e " hdrlen"
- Specifies a number of bytes to discard from the beginning of the
- file before starting disassembly. This does not count towards the
- calculation of the disassembly offset: the first
- .I disassembled
- instruction will be shown starting at the given load address.
- .TP
- .BI -k " offset,length"
- Specifies that
- .I length
- bytes, starting from disassembly offset
- .IR offset ,
- should be skipped over without generating any output. The skipped
- bytes still count towards the calculation of the disassembly offset.
- .TP
- .BR -a " or " -i
- Enables automatic (or intelligent) sync mode, in which
- .B ndisasm
- will attempt to guess where synchronisation should be performed, by
- means of examining the target addresses of the relative jumps and
- calls it disassembles.
- .TP
- .BI -b " bits"
- Specifies either 16-bit or 32-bit mode. The default is 16-bit mode.
- .TP
- .B -u
- Specifies 32-bit mode, more compactly than using `-b 32'.
- .TP
- .BI -p " vendor"
- Prefers instructions as defined by
- .I vendor
- in case of a conflict. Known
- .I vendor
- names include
- .BR intel ,
- .BR amd ,
- .BR cyrix ,
- and
- .BR idt .
- The default is
- .BR intel .
- .PP
- .RE
- .SH RESTRICTIONS
- .B ndisasm
- only disassembles binary files: it has no understanding of the
- header information present in object or executable files. If you
- want to disassemble an object file, you should probably be using
- .BR objdump "(" 1 ")."
- .PP
- Auto-sync mode won't necessarily cure all your synchronisation
- problems: a sync marker can only be placed automatically if a jump
- or call instruction is found to refer to it
- .I before
- .B ndisasm
- actually disassembles that part of the code. Also, if spurious jumps
- or calls result from disassembling non-machine-code data, sync
- markers may get placed in strange places. Feel free to turn
- auto-sync off and go back to doing it manually if necessary.
- .PP
- .B ndisasm
- can only keep track of 8192 sync markers internally at once: this is
- to do with portability, since DOS machines don't take kindly to more
- than 64K being allocated at a time.
- .PP
- .SH SEE ALSO
- .BR objdump "(" 1 ")."