public MultDivMoveFromInstruction(string name, Register rd) : base(name) { this.rd = rd; }
public ImmediateShiftInstruction(string name, Register rd, Register rt, int shamt) : base(name) { this.rd = rd; this.rt = rt; this.shamt = shamt; }
public JalrInstruction(Register rd, Register rs) : base("jalr") { this.rd = rd; this.rs = rs; }
public Ctc2Instruction(Register rt, Register rs) : base("ctc2", rt, rs) { }
public AdduInstruction(Register rd, Register rs, Register rt) : base("addu", rd, rs, rt) { }
public BranchRegisterInstruction(string name, Register rs, Register rt, int offset) : base(name) { this.rs = rs; this.rt = rt; this.offset = offset << 2; }
public AddiuInstruction(Register rt, Register rs, int immediate) : base("addiu", rt, rs, immediate) { }
public BgezInstruction(Register rs, int offset) : base("bgez", rs, offset) { }
public SltiuInstruction(Register rt, Register rs, int immediate) : base("sltiu", rt, rs, immediate) { }
public RegisterInstruction(string name, Register rd, Register rs, Register rt) : base(name) { this.rd = rd; this.rs = rs; this.rt = rt; }
public RegisterShiftInstruction(string name, Register rd, Register rt, Register rs) : base(name) { this.rd = rd; this.rt = rt; this.rs = rs; }
public BeqInstruction(Register rs, Register rt, int offset) : base("beq", rs, rt, offset) { }
public MultuInstruction(Register rs, Register rt) : base("multu", rs, rt) { }
public MultDivMoveToInstruction(string name, Register rs) : base(name) { this.rs = rs; }
public BltzInstruction(Register rs, int offset) : base("bltz", rs, offset) { }
public SltuInstruction(Register rd, Register rs, Register rt) : base("sltu", rd, rs, rt) { }
public BneInstruction(Register rs, Register rt, int offset) : base("bne", rs, rt, offset) { }
public SrlInstruction(Register rd, Register rt, int shamt) : base("srl", rd, rt, shamt) { }
public Cop0MoveInstruction(string name, Register rt, Register rd) : base(name) { this.rt = rt; this.rd = rd; }
public SrlvInstruction(Register rd, Register rt, Register rs) : base("srlv", rd, rt, rs) { }
public Cop2MoveInstruction(string name, Register rt, Register rs) : base(name) { this.rt = rt; this.rs = rs; }
public SubuInstruction(Register rd, Register rs, Register rt) : base("subu", rd, rs, rt) { }
public DivuInstruction(Register rs, Register rt) : base("divu", rs, rt) { }
public SwrInstruction(Register rt, int offset, Register @base) : base("swr", rt, offset, @base) { }
public ImmediateInstruction(string name, Register rt, Register rs, int immediate) : base(name) { this.rt = rt; this.rs = rs; this.immediate = immediate; }
public XoriInstruction(Register rt, Register rs, int immediate) : base("xori", rt, rs, immediate) { }
public AndiInstruction(Register rt, Register rs, int immediate) : base("andi", rt, rs, immediate) { }
public XorInstruction(Register rd, Register rs, Register rt) : base("xor", rd, rs, rt) { }
public JrInstruction(Register rs) : base("jr") { this.rs = rs; }
public MultDivInstruction(string name, Register rs, Register rt) : base(name) { this.rs = rs; this.rt = rt; }