Metasm is a cross-architecture assembler, disassembler, linker, and debugger. It is written in such a way that it is easy to add support for new architectures. For now, the following architectures are in:
Intel Ia32.txt (16 and 32bits)
Intel X86_64.txt (aka Ia32 64bits, X64, AMD64)
MIPS
PowerPC
Sh4
Supports low and high-level debugging support (Ia32 only for now) under Windows, Linux and remote (via a gdbserver). Metasm is included in Metasploit by default.