免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 37086 | 回复: 161
打印 上一主题 下一主题

电影《黑客帝国》测试你的软件逻辑能力和OO编程能力!你看懂《黑客帝国》了么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-02-23 12:57 |只看该作者 |倒序浏览
本帖最后由 HappyTigerYear 于 2010-02-25 16:59 编辑

电影《黑客帝国》测试你的软件逻辑能力和OO(面向对象)编程能力!你看懂《黑客帝国》了么?

在影片里,Neo最后说服了Matrix,拯救了人类,就是因为抓住了Matrix系统的逻辑漏洞。

bool  Combat(&Neo, &Smith)
{
   // Neo 和 Smith 激战...

   // Smith调用memcpy函数,把Neo复制成自己:
   memcpy(&Neo, &Smith, sizeof(Neo));

   if(Neo胜利)
      return  true;
   else
      return false;
}

Matrix时刻删除没用没有目的的程序。
影片末尾,Matrix调用Combat函数,Neo和Smith开战...
战斗结束,Neo所在内存空间内的数据都被Smith用自己的数据填充了,Combat函数返回了false。Neo失败了,Matrix因此删掉了Neo,即冲洗掉了Neo内存空间数据,而实际上冲洗掉了Smith在Neo内存上的复本数据。Smith看到自己的一个复本被删除,惊疑自己怎么是无用的程序了,所以他那时非常惊恐。Matrix看到Smith的一个复本“自杀”(Matrix不知道这个Smith复本是自己一箭双雕杀死的,这是Matrix系统的一个逻辑漏洞),所以Matrix就认为Smith已是个无用的程序,就迅速接二连三地把Smith及每个Smith的复本删除(杀死)。

Smith死得很惨,比赵本山那一万元钱死的还惨。

因此,Neo就与Matrix达成了和平交易,拯救了人类。


“生活”在Matrix控制的虚拟世界中的所有物质都是用先进OO(面向对象)技术编写的程式,“人”、“美女”、“俊男”、“楼房”、“汽车”、“小猫”、“小狗”、“灰尘”、“牛排”、“花”、“鸟”、“树”、“木”、“草”、“虫”等等所有东西都是对象化的程序。

为什么说是“对象化”的程序呢?
虚拟世界与真实世界那么逼真,以致让真正的人类都无法辨别真假(即使顶级天才程序员能辨别出来,那也很不容易,像尼奥、莫菲斯、崔妮蒂、坦克等),然而你知道么,只有具备先进的OO编程思想才能设计出优秀的软件,才能设计出如此逼真的虚拟世界。

论坛徽章:
0
2 [报告]
发表于 2010-02-23 13:30 |只看该作者
好像是因为母体也对付不了病毒,才不得不让尼奥出手的吧,你看懂没有啊....

论坛徽章:
0
3 [报告]
发表于 2010-02-23 13:33 |只看该作者
用程序灭程序

论坛徽章:
0
4 [报告]
发表于 2010-02-23 16:56 |只看该作者
TANK用的是linux字符界面,其它人用的是windows图形界面..

论坛徽章:
0
5 [报告]
发表于 2010-02-23 18:52 |只看该作者
我不是那个片子的编剧,不过我喜欢那妞儿。

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
6 [报告]
发表于 2010-02-23 19:09 |只看该作者
科幻的电影看少了,多看点就能看懂了。《黑客帝国》不是最难理解的,关于时间的那些科幻片才难理解。

论坛徽章:
0
7 [报告]
发表于 2010-02-24 01:41 |只看该作者
《黑客帝国》里,尼奥最后说服了“母体”,就是因为抓住了虚拟世界程序的逻辑漏洞。

你看懂《黑客帝国》 ...
HappyTigerYear 发表于 2010-02-23 12:57



    Neo并没有说服母体,而是母体认为不利用Neo就无法kill掉Smith,不二之选,或者说是个交易。

论坛徽章:
0
8 [报告]
发表于 2010-02-24 08:51 |只看该作者
本帖最后由 HappyTigerYear 于 2010-02-24 08:54 编辑
Neo并没有说服母体,而是母体认为不利用Neo就无法kill掉Smith,不二之选,或者说是个交易。
JohnBull 发表于 2010-02-24 01:41



    Smith把Neo复制成自己后,Neo死了,为什么Smith也崩溃了?

论坛徽章:
89
水瓶座
日期:2014-04-01 08:53:31天蝎座
日期:2014-04-01 08:53:53天秤座
日期:2014-04-01 08:54:02射手座
日期:2014-04-01 08:54:15子鼠
日期:2014-04-01 08:55:35辰龙
日期:2014-04-01 08:56:36未羊
日期:2014-04-01 08:56:27戌狗
日期:2014-04-01 08:56:13亥猪
日期:2014-04-01 08:56:02亥猪
日期:2014-04-08 08:38:58程序设计版块每日发帖之星
日期:2016-01-05 06:20:00程序设计版块每日发帖之星
日期:2016-01-07 06:20:00
9 [报告]
发表于 2010-02-24 09:09 |只看该作者
Noe和Smith融为了一体,

Matrix通过物理伤害杀死了Noe,自然也就杀死了Smith,

Matrix利用Noe来干掉失去控制的Smith,

Noe用自己的生命来换取人类和Matrix之间的和平,(我好肉麻啊) {:3_197:}

和平是不会持续很久,期待张纪中大导演拍摄黑客帝国续集,此举必将创造更多的GDP,并给更多的女演员上镜的机会。 {:3_187:}

论坛徽章:
0
10 [报告]
发表于 2010-02-24 09:41 |只看该作者
{:3_188:}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP