图灵机是由输入、输出和状态转移 3要素组成广义上自动机模型理论上讲任何任何完备图灵机语言都可用于通用编程并且和其他完备图灵机语言样有效但实际上有些此类语言作用在其特定领域的外时可能令人非常痛苦例如m4是种有意完备图灵机但实战中把m4当作通用语言使用则非常困难
最近对些计算机语言进行分析整理总结门最简单可编程语言也应该具备:
-
输入输出获得待处理数据可以是从标准输入输出也可以从文件;
-
算数运算计算机核心当然是“计算”就是普通计算机上提供加减乘除运算;
-
内存管理:临时变量值获取和存储管理其实有点像通过变量名来查找值Hash表(这在DOS批处理中体现很到位);
-
按条件跳转:拥有条件判断(test)加上语句跳转(jump)就能模拟出、while、for和goto等语句(其中goto条件为永真就执行“test(true) jump xxx”样)
批处理中可以用 给变量赋值; /a 可以进行算数运算在命令行中执行 /? 可以查看所有支持运算符;另外还有、for、call、goto等语句支持跳转; /p 和echo 可以实现从键盘和屏幕上输出文本信息但对 2进制文件操作显得有点力不从心(可以用debug 来实现但貌似 挺复杂)所以我用C语言写了两个小(Bmp2Txt和Txt2Bmp可到子清行下载 2进制文件和C语言源码)解决批处理对BMP文件输入输出下面是我用这两个小工具写拉普拉斯算子求边缘检测批处理源码:
view plaincopy to clipboardpr?
在我机子上跑了两分钟居然也跑出结果来了相应效果图如下
原始图:
处理后图片:
最新评论