mars.mips.instructions
Class InstructionSet

java.lang.Object
  extended by mars.mips.instructions.InstructionSet

public class InstructionSet
extends Object

The list of Instruction objects, each of which represents a MIPS instruction. The instruction may either be basic (translates into binary machine code) or extended (translates into sequence of one or more basic instructions).

Author:
Pete Sanderson and Ken Vollmar

Constructor Summary
InstructionSet()
          Creates a new InstructionSet object.
 
Method Summary
 BasicInstruction findByBinaryCode(int binaryInstr)
           
 ArrayList getInstructionList()
          Retrieve the current instruction set.
 ArrayList matchOperator(String name)
          Given an operator mnemonic, will return the corresponding Instruction object(s) from the instruction set.
 void populate()
          Adds all instructions to the set.
 ArrayList prefixMatchOperator(String name)
          Given a string, will return the Instruction object(s) from the instruction set whose operator mnemonic prefix matches it.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InstructionSet

public InstructionSet()
Creates a new InstructionSet object.

Method Detail

getInstructionList

public ArrayList getInstructionList()
Retrieve the current instruction set.


populate

public void populate()
Adds all instructions to the set. A given extended instruction may have more than one Instruction object, depending on how many formats it can have.

See Also:
Instruction, BasicInstruction, ExtendedInstruction

findByBinaryCode

public BasicInstruction findByBinaryCode(int binaryInstr)

matchOperator

public ArrayList matchOperator(String name)
Given an operator mnemonic, will return the corresponding Instruction object(s) from the instruction set. Uses straight linear search technique.

Parameters:
name - operator mnemonic (e.g. addi, sw,...)
Returns:
list of corresponding Instruction object(s), or null if not found.

prefixMatchOperator

public ArrayList prefixMatchOperator(String name)
Given a string, will return the Instruction object(s) from the instruction set whose operator mnemonic prefix matches it. Case-insensitive. For example "s" will match "sw", "sh", "sb", etc. Uses straight linear search technique.

Parameters:
name - a string
Returns:
list of matching Instruction object(s), or null if none match.