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 whendmem
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 fromoffset
(int): Offset from addresssize
(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 storedaddr
(int): Address to start fromoffset
(int): Offset from addresssize
(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.