这个CPU如果要实现函数调用的话比较困难 不是说实现不了 不过函数返回地址装入程序计数器很蛋疼 要靠编译器实现
实现方法:
这里 y为返回地址选择 调用函数的时候要给y装入返回地址选择值
然后函数尾部生成如下返回指令(编译器计算生成)...
if(y == 0) xxxx地址装入程序计数器;
else if(y == 1) xxxx地址装入程序计数器;
else if(y == 2) xxxx地址装入程序计数器;
.
.
.
.
.
.
这里目的是实现功能 忽略效率
1位CPU怎么判断多位数... 可以通地址线来选择判断哪一位 一位一位判断 虽然程序复杂而且量大 但是可以实现.
CPU指令功能简单 实现同样功能但代码量大 CPU指令功能复杂 实现同样功能代码量低.
这个CPU是可以实现C语言编译器的, 除了递归...
现在考虑是不是要做这个CPU的编译器开发这个CPU 如果做的话程序计时器增加到24位ROM容量可以寻址到16MB