我目前正在为我的 JS 中的 Logisim CPU 开发一个 c++ 编译器,现在变量有问题:
我在 ram 中定义了一个空间来存储数据/值,并且我已经定义了一个空间来存储数据空间的地址。我有一个带有指向最后一个变量的指针的寄存器 nx 和一个带有指向最后一个“数据存储”RAM 的指针的寄存器 mx。但我不知道如何访问它们,例如这里:
修改后的 C++ 代码:
int *pointer_test;
int test;
test = 123;
pointer_test = &test;
*pointer_test = 25;
预编译器:
//Allocate new variable <--- int *pointer_test;
add nx, 1
//Set the pointer pointing to zero
sram nx, 0
//Allocate another variable <--- int test;
add nx, 1
//Allocate new storage for the variable
add mx, 1
//Let the variable point to the data <--- test = 123;
sram nx, mx
sram mx, 123
我现在如何实施:
pointer_test = &test;
我只有 &test 的值,保存在 nx 中,因为它是声明的最后一个变量,但不是变量/指针“pointer_test”的地址......