module legv8.mem


class mem

Memory class for the LEGv8 ISA

method __init__

__init__(dmem: list = [], dmem_num: int = 512)

Initialize the memory

Args:

  • dmem (list, optional): Initial data memory. Defaults to [].
  • dmem_num (int, optional): Length of zeroed data memory when dmem is default. Defaults to 512.

method dmem_read

dmem_read(addr: int, offset: int, size: int) → int

Read from data memory

Args:

  • addr (int): Address to start from
  • offset (int): Offset from address
  • size (int): Number of bytes to read

Returns:

  • int: Value stored in data memory

method dmem_write

dmem_write(value: int, addr: int, offset: int, size: int)

Write to data memory

Args:

  • value (int): Value to be stored
  • addr (int): Address to start from
  • offset (int): Offset from address
  • size (int): Number of bytes to write

method mem2str

mem2str() → str

For GUI, returns a string of the values stored in memory

Returns:

  • str: Formatted memory values

method pcfl2str

pcfl2str() → str

For GUI, returns a string of the values stored in PC and flags

Returns:

  • str: Formatted PC and flag values

method print

print()

Prints the data in the registers and memory to stdout


method reg2str

reg2str() → str

For GUI, returns a string of the values stored in registers

Returns:

  • str: Formatted register values

method regs_read

regs_read(reg: str) → int

Read the value stored in a register

Args:

  • reg (str): Register string (e.g. X9, X11)

Returns:

  • int: Value stored in register

method regs_write

regs_write(reg: str, value: int)

Write a value to a register

Args:

  • reg (str): Register string (e.g. X9, X11)
  • value (int): Value to store

method reset

reset()

Resets the memory to initialized values


This file was automatically generated via lazydocs.