MIPS_disassembly
This crate dissembles u32 into mips assembly
Examples
Simple example
use get_disassembly;
let instr: u32 = 0x24a50001;
let instr_asm: String = get_disassembly;
assert_eq!
Example using the advance version
use get_disassembly_adv
let mut sym_tab: = new;
sym_tab.insert;
let instr: u32 = 0x11a0001a;
let instr_adrs: u32 = 0x9c;
assert_eq!;
Example of the pseudo instruction option
use get_disassembly_adv;
use MipsDisassemblyOptions;
use HashMap;
let instr: u32 = 0x0;
assert_eq!;
assert_eq!;
Supported instructions
- SLL
- SRL
- SRA
- SLLV
- SRLV
- SRAV
- JR
- JALR
- SYSCALL
- ADD
- ADDU
- SUB
- SUBU
- AND
- OR
- XOR
- NOR
- SLT
- SLTU
- BLTZ
- BGEZ
- BLTZAL
- BGEZAL
- J
- JAL
- BEQ
- BNE
- BLEZ
- BGTZ
- ADDI
- ADDIU
- SLTI
- SLTIU
- ANDI
- ORI
- XORI
- LUI
- LB
- LH
- LWL
- LW
- LBU
- LHU
- LWR
- SB
- SH
- SWL
- SW
- SWR
Supported pseudo instructions
- NOP
- B
- BAL
- MOVE
- JALR (omits $rd if its $31/$ra)