软件综合项目工程科普一场层层调用的函数大战.docVIP

软件综合项目工程科普一场层层调用的函数大战.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Inception:一场层层调用函数大战(发表时间:-09-09 18:14:17) 收藏(0) 标签: 原创 意识 电影 计算机 ?分类:心理 就有这么凑巧事:上周还在看侯世达 (Hofstadter)先生《集异璧》,这周就在电影院里看到了书中概念演绎版——哈,说当然是日前火爆酷炫高分电影Inception啦。废话少说,赶快剧透。还没看过同学们海涵了,虽说透穿了剧情也不会影响你观影效果。 Inception抓人眼球是它“梦中做 梦”和盗梦情节设计。在层层深入梦境里,人意识逐步放松警惕,入侵者便能够趁机盗走储存在大脑中信息。控制梦中意识,“我做你梦”,两个 人思想在同一个大脑中争斗……这全部是令人看得过瘾狂野想象。然而身为一个业余程序员和《集异璧》忠实读者,看到人在梦里死了掉进迷失域(limbo) 再也出不来,我第一反应还是忍不住叫出来:“哇,堆栈溢出!” 堆栈是一个计算机术语,我看来看去,认为Cobb这群人在剧中完成任务方法就像出自程序员手笔。你看每个梦,全部是一样一组人物,抱着一样目标,只是换到了不一样场景里。这多像一个函数调用过程啊。 可能你没听说过函数调用,但你可能炒过青菜。 通常我们会先热锅、放油,然后爆炒、加盐、出锅。那么从热锅到出锅一整套动作就能够写一个名为“炒”函数。假如我们为白菜调用这个函数,就完成了“炒 白菜”任务;假如为空心菜调用这个函数,就完成了“炒空心菜”这个任务。你还能够自由发挥,为多种包菜、韭菜、胡萝卜调用同一个函数,就把它们全部炒了。 Cobb先生当然不在意炒是什么菜,她任 务是在Fisher脑中播种下拆分企业念头。她为Fisher先生设计函数就是梦,让Fisher潜意识瓦解梦。在计算机程序中,一个函数内部 能够调用另一个函数,在第二层函数运行过程中,第一层函数就在等候,直到第二层函数返回了运算结果,第一层函数再利用这个返回值来继续它本身运 算。这么一比较,Cobb精心设计实际上就是用一个梦去调用另一个梦,上一层梦境中熟睡大家全部在等候下一层梦境中人完成任务。一旦成功,就用音乐或失去平衡方法返还(在迷失域则是死亡),来结束上一层梦境。 就像程序员喜爱在函数中调用函数来使问题步步细化,这些嵌套在一起梦也起到了步步迫近Fisher内心深处作用。不过这么层层调用也有个风险,万一信息链被破坏,函数不知道自己身处是哪一层,事情就要乱套。这么就使得“堆栈”这个概念变得关键了。 在计算机语言里,“栈”是内存中存放区,它保留着正在运行中程序临时信息,在程序完成后就被新程序信息覆盖。“堆栈”就是向这些存放区写入信息,好让系统知道现在哪个函数在等候返回值,和返回来值要到哪里去读取。 不过计算机内存容量是有限。当函数调用 层数过多,新调用函数信息在写入内存时候空间不够,就把部分老信息覆盖了。麻烦是,被覆盖那层函数还在等候下层函数返回值来完成暂停任务。 这么即使新函数成功运行,老函数却没法正确找到返回值,整个程序就犯错了。这种因为空间不够而产生错误覆盖,就是开头提到堆栈溢出。 这和情节有什么联络呢?当然有啊,Cobb 老婆Mal不就是堆栈犯错受害者嘛。依据影片情节设计,Mal在迷失域中就因为待得太久而失去了对现实记忆。她一直在最底层函数里,却认为活在最顶层现实,不需要返回到任何地方。而Cobb“栈”还是完好,她还记得 现实中孩子,知道应该返回到顶层去。 这个时候,假如Cobb直接带着Mal卧轨, 不和她说那些有没,两人可能就安全地从底层返还了。不过Cobb犯了个错误,她对Mal潜意识进行了修改,这就相当于有意在Mal“栈”里放置了 错误不过有意义数据。这么当Mal回到最顶层现实时,原来整个大程序应该宣告结束,但因为她“栈”被改写了,这个程序就错误地认为自己并不在顶 层。于是Mal就失去了对梦境和现实分辨力,认为自己应该再死一次才回到现实。 “悲剧啊!”看见Mal坠下高楼,我不由叹息,一出内存犯错惨剧。 和其说这是一部相关梦科学幻想,倒不如说是 利用人类算法对意识进行一次设计。听说影片灵感有部分来自侯世达先生《集异璧》。这是本包含甚广奇书,试图综合各学科知识来探讨意识机制。 侯先生即使也不能完全回复自己提出这个问题,但她猜想意识关键之处于于“我”这个概念产生。而这个概念来自自我和外界区分,来自人类和外界不停 信息交流。于是对“我”认知从出生时起就一层层叠进脑内,这种交流积累终其一生循环往复。书中曾把这个过程类比于函数对本身进行循环调用,那么影片中 小说设计和计算机原理相同情况倒也不太出乎人意料。 咦,那么有没有可能,导演在试图把计算机科学知识植入到我们潜意识里面?银幕前面你,被她Inception施中了吗? ======== 注:已发于《开啦》电子杂志,此处为修改版。写作过程中参考了

文档评论(0)

181****8523 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档