自制编程语言(10)---辅助虚拟环境---内存

本文介绍了一种基于数组实现的简单内存模型设计,用于生成中间代码。通过自定义的Memory类,实现了内存空间的初始化、地址分配及内存访问操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.简介

在生成中间码之间,要设计好一个运行内存模型。这里直接就用数组来代替内存空间。

1.内存

class Memory
{
public:
	Memory()
	{
		//初始化内存
		memory = new char[8192];
	}
	//生成中间代码用的地址分配计数器
	int address = 0;
	//内存空间
	int esp=0;
	int ebp = 0;
	int malloc(int size)
	{
		return address+=size;
	}
	char & operator[](int addr)
	{
		return memory[addr];
	}
	char * memory;
	~Memory(){}
};

同时我们还需要对内存的使用和分配做工作。暂时先用这个类,后面再根据情况继续完善。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值