龙芯开源社区

 找回密码
 注册新用户(newuser)
楼主: huanghuihuang

道cpu、道指令、道编程基本原理

    [复制链接]
发表于 2013-8-13 06:27:21 | 显示全部楼层
呵呵 道友又出山砌楼了

道字41
[上士闻道] -> 勤而行
[中士闻道] -> 若存亡
[下士闻道] -> 大笑之
<哈哈哈哈> -> 不足道
 楼主| 发表于 2013-12-11 10:55:00 | 显示全部楼层
新增两条道指令:后道道指令与自删除道指令
后道道指令程序
{
maifgn()()
{
    [dgdfg]->[子函数1("子函数1")(lll),子函数2("子函数2")(ttt)];

[lll][ttt] ->[gdfg1=lll,gdfg2=ttt,结束,显示结果];

}

子函数1(kk)(lll)
{
[kk]->[uuu];
[uuu]->[显示结果]<kk>;

}
子函数2(yy)(ttt)
{
<[yy]>;

[yy]->[uuu];
[uuu]->[显示结果]<yy>;
}

}

对象外后道道指令程序
{
maifgn()()
{
    [dgdfg]->[$jjjj];
    [jjjj] ->[子函数1("子函数1")(lll)]  ;                 //每运行一步,产生一个子函数1对象
    <[jjjj]><->[jjjj] ->[子函数2("子函数2")(ttt)]    ;        //每运行一步,产生一个子函数2对象,但产生的对象却暂时处于休眠状态,不会产生结果返回。
    [ttt]->[gggg];

[lll,gggg] ->[gdfg1=lll,gdfg2=ttt,结束,显示结果];
}
子函数1(kk)(lll)
{
[kk]->[显示结果]<kk>;
}
子函数2(yy)(ttt)
{
[yy]->[显示结果]<yy>;
}
}


自删除道指令程序
{
     maifgn()()
   {
        [dgdfg] ->[子函数1("子函数1")(lll),子函数2("子函数2")(ttt)];

        [lll,ttt] ->[gdfg1=lll,gdfg2=ttt,结束,显示结果];

   }

  子函数1(kk)(lll)
  {

     [kk]->[~,显示结果]<kk>;    //“~”表示函数返回结果后,从运行空间中删除

  }
  子函数2(yy)(ttt)
  {
     [yy]->[显示结果]<yy> ;   //函数返回值,但继续重复运行。
  }

}



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册新用户(newuser)

x
发表于 2014-1-8 08:11:00 | 显示全部楼层
无量天尊 对象生灭往还 无有终时 此其道生
发表于 2014-1-10 16:27:35 | 显示全部楼层
2012年11月开始发展对道指令进行控制的指令暨道道指令,刚开始时用非常复杂的语法形式“[[...]<...>...]<[..]<...>....>|[....]<....>.....->[....]<...>...”,后来在2013年1月又改为"[3]<2>->>[...]<..>"用行号表示的形式。在开发过程中,发现用行号编程极为不便,一不小心就可能犯错...
huanghuihuang 发表于 2013-8-13 00:09


太上曰 非一非多 非碍非无碍

已经2014年1月了 照发展趋势 可以改为统一的一种形式 如(...) ((...)) ((...) (...) ...)  ((((((...))))))

殊途同归 地球那边的人也这么写 只不过他们的说法是 要将深深的智慧隐藏在重重括号之中
 楼主| 发表于 2014-1-10 22:47:35 | 显示全部楼层
回复 374# water
等八卦指令不够用了,64卦指令"((((((hhh))))))"就可以派上用场了!
发表于 2014-1-12 15:48:20 | 显示全部楼层
迷糊了
 楼主| 发表于 2014-9-5 22:30:55 | 显示全部楼层
用对象外道道指令编了一个程序:

程序1:
对象外后道道指令程序1{maifgn()()

{

[dgdfg]->[$jjjj=0];

[jjjj] ->[jjjj=jjjj+1];

<[jjjj=5]><->[dgdfg] ->[子函数2(0)(ttt)];

[ttt][jjjj=5] ->[gdfg2=ttt,结束,显示结果];

}

子函数2(yy)(ttt)

{

[yy]->[yy=yy+1];

[yy=3]->[显示结果]<yy>;

}

}结果如下:


程序2:
对象外后道道指令程序1{maifgn()()

{

[dgdfg]->[$jjjj=0];

[jjjj] ->[jjjj=jjjj+1];

<[jjjj=5]><->[dgdfg] ->[子函数2(0)(ttt)];

[ttt][jjjj=5] ->[gdfg2=ttt,结束,显示结果];

}

子函数2(yy)(ttt)

{

[yy]->[yy=yy+1];

[yy=8]->[显示结果]<yy>;

}

}结果如下:



两个程序的差别在:

子函数2(yy)(ttt)中的 “[yy=8]->[显示结果]<yy>”的yy值为3和8的不同。

当为3时:子函数2先输出返回值;

当为8时:对象外道道指令已经暂停子函数2的运行,子函数2休眠中。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册新用户(newuser)

x
 楼主| 发表于 2015-2-16 15:12:33 | 显示全部楼层
把动态道指令稍微修改一下,增加一种近似C++模版输入的动态模版道指令,相当于把被调用函数的道指令复制到本函数的指令中。测试程序如下:
动态模板道指令
{
maifgn()()
{
[dgdfg] ->[子函数2(<>)(<>),yy=0];
[yy=5] ->[gdfg2=yy,结束,显示结果];
}
子函数2(yy)
{
[yy]->[yy=yy+1];
}
}

结果如图:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册新用户(newuser)

x
回复 支持 1 反对 0

使用道具 举报

发表于 2017-12-31 05:55:09 | 显示全部楼层
我不是软件行业的,属于看热闹的。
看到楼主那个忍不住想,要是用一键字或两键字输入卦象,或者用数字输入卦象。

纯理论演绎推理构建,与尝试试验实践。
作为门外看热闹的人,觉得编程是否在效率追求下放弃了很多思考。所以楼主的思考探索尝试是必要的。

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-3-21 09:31 , Processed in 0.189582 second(s), 16 queries .

快速回复 返回顶部 返回列表