Spaces:
Sleeping
Sleeping
| from ram_controller import RAMController | |
| import random | |
| RAM_SIZE_BYTES = 1024 * 1024 * 16 # 16 MB of RAM | |
| def demo(): | |
| print(f"Virtual RAM Demo: {RAM_SIZE_BYTES / (1024 * 1024):.2f} MB") | |
| ram = RAMController(RAM_SIZE_BYTES) | |
| print("\nWriting sequential data to RAM:") | |
| for i in range(0, 1024, 16): | |
| data = [random.randint(0, 255) for _ in range(16)] | |
| ram.write(i, data) | |
| if i < 64: | |
| print(f"Address {i}: Data (first 16 bytes) {data}") | |
| print("\nReading sequential data from RAM:") | |
| for i in range(0, 1024, 16): | |
| read_data = ram.read(i, 16) | |
| if i < 64: | |
| print(f"Address {i}: Read Data (first 16 bytes) {list(read_data)}") | |
| print("\nWriting random data to RAM:") | |
| for _ in range(10): | |
| address = random.randint(0, RAM_SIZE_BYTES - 16) | |
| data = [random.randint(0, 255) for _ in range(16)] | |
| ram.write(address, data) | |
| print(f"Address {address}: Data (first 16 bytes) {data}") | |
| print("\nReading random data from RAM:") | |
| for _ in range(10): | |
| address = random.randint(0, RAM_SIZE_BYTES - 16) | |
| read_data = ram.read(address, 16) | |
| print(f"Address {address}: Read Data (first 16 bytes) {list(read_data)}") | |
| if __name__ == "__main__": | |
| demo() | |