Record Class MemoryConfiguration

java.lang.Object
java.lang.Record
mars.mips.hardware.MemoryConfiguration
Record Components:
identifier - Identifier is used for saving setting; name is used for display

public record MemoryConfiguration(String identifier, String name, String[] addressNames, int[] addresses) extends Record
Models the memory configuration for the simulated MIPS machine. "configuration" refers to the starting memory addresses for the various memory segments. The default configuration is based on SPIM. Starting with MARS 3.7, the configuration can be changed.
Version:
August 2009
Author:
Pete Sanderson
  • Constructor Details

    • MemoryConfiguration

      public MemoryConfiguration(String identifier, String name, String[] addressNames, int[] addresses)
      Creates an instance of a MemoryConfiguration record class.
      Parameters:
      identifier - the value for the identifier record component
      name - the value for the name record component
      addressNames - the value for the addressNames record component
      addresses - the value for the addresses record component
  • Method Details

    • getAddress

      public int getAddress(int key)
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with Objects::equals(Object,Object).
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • identifier

      public String identifier()
      Returns the value of the identifier record component.
      Returns:
      the value of the identifier record component
    • name

      public String name()
      Returns the value of the name record component.
      Returns:
      the value of the name record component
    • addressNames

      public String[] addressNames()
      Returns the value of the addressNames record component.
      Returns:
      the value of the addressNames record component
    • addresses

      public int[] addresses()
      Returns the value of the addresses record component.
      Returns:
      the value of the addresses record component