- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
唐常杰翻译及计算理论导引13
Lecture Notes for Computation 2006 五一放假 换课 今天课程 复习 Undecidability cp136 复习 Undecidability cp136 Self-Reference ep198, cp136 Self-Reference ep198, cp136 Self-Reference ep198, cp136 Avoiding Paradoxes? ep199 Avoiding Paradoxes? Ep199递归 递归 的 第一种意义, 自己调用自己 从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:”从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是……” Void story ( ) { printf(“从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:”); story( ); } 毛病,没有递归深度控制,栈溢出时死机 镜子里面照镜子,电影里面放电影,故事里面讲故事 更新奇的是: 递归的 第一种意义, 自己调用自己 从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:”从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是……” Void story ( ) { printf(“从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:\r\n”); story( ); } 毛病,没有递归深度控制,栈溢出时死机 镜子里面照镜子,电影里面放电影,故事里面讲故事 更新奇的是: 递归 自己调用自己 从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:”从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是……” Void story ( ) { printf(“从前有个庙,庙里有个老和尚,老和尚给小和尚讲故事,讲的故事是:\r\n”); story( ); } 毛病,没有递归深度控制,栈溢出时死机 镜子里面照镜子,电影里面放电影,故事里面讲故事,庄生梦蝶,梦里面做梦,更新奇的是: 递归 自己调用自己 庄生梦蝶 的IT新分析 庄子梦中化为蝴蝶, 梦醒之后糊蝶复化为庄周。庄子问道,到底是蝴蝶化为庄周, 还是庄周化为蝴蝶. (还在做梦) 如果是:庄子梦中化为蝴蝶,蝴蝶做梦化为庄子, 则是 梦里面做梦,递归梦 The ‘Droste Effect’ The ‘Droste Effect’ Infinite Recursion in Math ep200 递归 的第二种意义: 自我繁殖,自我描述 例3 计算机病毒;(Autoexec.BAT ) 从A;盘 复制 到B:盘 Echo This is a Virus program IF exist b:\autoexec.bat goto Virus Goto No_Virus : Virus B: Rename autoexec.bat auto.bat //准备冒名顶替 Copy a:\autoexec.bat b: //自我复制部分 Echo I am Virus //诚实的自白 Del *.exe //实施破坏 : No_virus A: \Auto //调用原来 autoexec.bat,给出平安无事的假象 递归 的第二种意义: 自我繁殖,自我描述 注意 1 解释执行程序,脚本语言 自我复制比较容易。例如A.BAT 解释执行时,一句句解释,A.Bat 文件在磁盘上,没有被锁定, 可以被copy。 2 Windows中的 EXE程序 ,自己执行, 磁盘文件被安全机制封锁, 不能被改写。这是附加的安全管理监视程序禁止的, 不是本质上不可以。 绕过禁令的方法之一: 写源程序, 园地或本地编译成Temp.EXE,(类似moris蠕虫)再修改autoexec.bat批处理程序, 下次启动时,冒名顶替。 递归 的另一层意义: 自我繁殖 例1 Nitice ( ) { Printf(“通知:今天下午开会 请互相转告”);} 要点: 执行程序 必须 复制程序, 例2 传销式信件( ) { 收到本邮件的人必须给 你的上家 寄信片;//传销获利; 必须复制10份 散发给你的朋友; 否则…. } ( 效果:浪费大量网络资源) 例3 计算机病毒(下
文档评论(0)