发布于 2010-05-18 21:30:54
9楼
第一个初始程序清零一个VB,然后退出。
我的每次调用的子程序,前提是用SM0.0调用,里面用SM0.1把VB增一。然后退出子程序。
第二个初始程序,由于在END之前。VB应该加的都已经加过了。程序根据VB的值可以计算出子程序被分配的内存的首址。在首址写下程序身份标识。
第二个周期。
两个初始程序都不再执行了。子程序除了SM0.1这个网络外,下一个网络根据身份标识的值和根据本子程序已知的内存用量(例如4个VB,是自己确实知道的)用间接寻址,从vb8000开始分配4个内存,然后把VB减1。然后下一次被调用有分配下一个4个内存,VB又减1。再调用,再分配,再减1。直到减到0为止置位一个位。表明分配已完成。以后执行可以用这个位跳过分配的程序。这样间接寻址的目标就固定下来了。
我的思路说完了。