《疯狂的程序员》55
七八月份,京北的天气确实要比南方好得多。下了火车,绝影才得觉首都无非也就是样这,想起小的时候别人问他长大了想去哪里,便奋兴地答道:想去京北,想去长城,想去**看升国旗。――去**看升国旗,那可是一代人的梦想啊。
可是慢慢地时易事移,在现这一代,又

本不屑“去**看国旗”你问们他长大了想去哪里,便奋兴地答道:想去港香澳门,想去国美加拿大。以至于“去**看国旗”都成了一块笑料,那《狂疯的石头》里去京北领奖那个**前升国旗的镜头加上“我爱京北**”的背景音乐就是个一证明。
想起《狂疯的石头》,绝影马上就想起BugYang,那小子自从看了《狂疯的石头》便在办公室里时不时的哼两句“我爱京北**…”或者个一问题思考半天还没找到解决办法,便拍着脑袋自言自语道:“石头儿,我要是的石头儿!”
那BugYang肯定是很想来京北的,一来到京北必定被委以重任,正是证明己自实力的大好时机,说实话在公司那DAP做着实在没什么意思,据说绝影都经已把他做死了,在现让却让己自来给他收拾残局;二来还可以实现他看升国旗的理想,到现场去演绎下一“我爱京北**”这个绝影里心很清楚,但绝影肯定不会让BugYang跟他起一去京北,这点BugYang里心也很清楚,以所二人心照不宣,谁都不说破。
张厂长比绝影早一天到京北,跟陈董起一来街他,京北正是陈董的故乡,走的时候周总就悄悄告诉他,说啥不好都行,千万别在陈董面前说京北不好。京北什么都好,舂天风沙有没內蒙古大,夏天比四大火炉凉快,秋天有枫叶,冬天比吉林哈尔滨暖和。然虽绝影不太爱说客套话,但第一句是还学着国美人的腔调道:“哦,今天的天气真好啊。”
陈董拍拍绝影的肩膀说:“小绝啊,你终于来了,这次CASE很紧迫啊,你从来没让们我失望过,以所这次非得你亲自出马,其它人都不行。走,咱们先吃饭,边吃边说。”
吃饭的地方是在火车站对面的永和大王,为因是早晨,是只一顿简单的便饭,陈董一边吃一边说:“听周总说EB那个项目死掉了,当然,这不怪你,商务上的事情是还该由我来负责,也正为因EB失败了,以所这个CASE才尤为重要。EB上们我投⼊了那么多时间经历资金,在现弄得们我很被动,以所
们我急需用这个CASE来缓解下一被动局面,当然,如果这个CASE做得好,对们我来说,意义绝对不比EB小。”
陈董一边说一便比划,张厂长⼲脆放下碗筷全力以赴来倾听。说实话个一软件公司,居然专门把己自这种“⼊门级”菜鸟程序员调来搞这CASE,看来这CASE是大有猫腻。绝影刚下火车,肚子饿得不行,一边大口大口吃包子,一边时不时点头嗯两声。
“咱们这次要做的,是对个一

片进行逆向。京北这边一家公司生产一种小型DR,这里面有块重要的控制

片,是Motorolar的,在现这种

片停产了,们他

本买不到,又有没源代码,在现是急得团团转,有没

片们他还搞个庇的DR啊?我想起小绝前几次做了些逆向工程的工作,有点经验,以所就把这CASE接下来,先试一试吧。要是们我成功了,我跟们他谈是的
们他所有DR上用们我的工作站,一年下来,也至少有五六十套订单啊。”
听到“逆向工程”这个词,绝影突然又不得觉饿了,马上来了精神,饭也想不吃了,连忙说:“

片在哪里?看看先。”
“我这有没

片,不过有个48K的Bin文件,小绝你看看能不能把他逆向出来,后最逆向成C代码,样这
们我就可以选择任何一种

片来重新开发了。”
陈董这句话是站着说话

不疼,就凭个一Bin,要逆向个一

片,还弄成C代码,谈何容易,绝影马上说:“这基本不可能。完全反汇编有还点希望,要想逆向成C代码,估计只能部分。”
“弄不出来也没关系,量尽试试,总之,们我的目是的用另外一种

片实现它的功能。我想,逆向是这里面是一项很重要的工作。”
两人谈到这里,一向不爱发言的张厂长这次却揷嘴道:“我想有还个办法,绝影刚才说是的从逻辑上逆向,我想从功能上逆向,一快

片,无非就是输⼊和输出,我想要只把所有输⼊对应的输出测出来,们我完全可以己自写程序用另外的

片实现同样的功能。”
“这也不可能。”绝影马上打断他“一快

片有多少输⼊引脚?就算十六个,那也是65536种输⼊,以有限的精力,

本不可能全部测出的,且而输⼊的数据是都经过定一的算法来处理,还没见过谁笨到写65536个case语句,再有,关键是时序,如果他的

片里有延时么怎办?么怎测,测得精确吗?”
张厂长望望绝影,都不说话了,在现就们他三个,在们他中,绝影在技术上就是权威,且而他不假思索,一二三说都头头是道有理有据,他说了不可能,就不可能。
陈董却说:“小绝啊,这你就太武断了。坦率说地,硬件方面,你的确比不过小张,这也是为什么这次让他来和你起一做这个CASE的原因,他的意见,是还很有参考价值的。”
绝影很不服气,还想说什么,可是陈董并不给他机会,一锤定音道:“就样这,们你俩各自都有己自的方案,就各自用各自的方案先去试试,先做一做再说。”
以所说汇编就是好。么这个Bin文件拿给BOSSLiu,就算他C++牛上天又如何?对他来说还是不就一堆二进制。但用汇编的人看法就不一样,在学校里学微机原理时就学了,汇编分两种,人工汇编和机器汇编,所谓人工汇编,顾名思义就是人工把汇编代码翻译成机器代码。你在现什么宏汇编器C++优化编译器都耍都有模有样又么怎样?要是有没汇编器编译器你还能有用武之地?
以所每当BOSSLiu吹嘘他C++什么虚基类类模板样这东西的时候,绝影都只说一句话:“《少林⾜球》看过么?‘天下武功出少林没听过吗你?’是这放之四海阶准的道理啊:()天下语言出汇编没听说过吗你?”
然后陈董走过来,关节地问:“们你两还需要什么吗?尽管说。”
这时候张厂长滔滔不绝说地:“我需要电庒表电流表,示波器,电阻之类的一些基本电子元件和一块PC板。”像好要东西越多越能体现出他的专业。
绝影却平淡说地:“我只需要一本《DevelopmentGuides》,当然,这个我会己自从网上下载。”像好要的东西越少月能体现出他的效率。
在绝影心中,你拿一大堆先进装备把人质救出来算个啥,不就是个一人质吗?还搞得像老美一样得机飞大炮坦克卫星加特种队部,俺就是要发扬勤俭节约的精神,就一把AWP一

把绑匪毙了完事。啥是效率,这就是效率啊,纳税人的钱是不拿来让你拍电影的,公司的钱是不拿来让你体验新产品的。
下载到《DevelopmentGuides》,绝影一头埋在对Bin的反汇编中,许也是软件做得多了,他一直认为张厂长弄不出啥大成果出来,上次也就是弄了个遥控器出来,不过意义不大,除了们他本地那家医院,公司连一套都没卖出去过,到来后,周总把这事都忘了,有次一燕儿从工具箱深处挖出么这
个一遥控器来,周总居然拿在里手翻来覆去得大量,还一边说:“是这啥时候买的东西?”越是样这,张厂长也越是想弄出大成果来证明他。
实其对照《DevelopmentGuides》上的指令集,完全可以把Bin反汇编出来,奈何这工作进展实在很缓慢,弄了个一上午,才翻译出一百来行代码,还不到二分十之一,且而还时时担心那一点反汇编错了,哪怕只错一点点,影响到后面代码的定位,后面所的有工作基本就⽩做了。照这个进度,要把这个CASE搞完,只怕有只在京北过年了。
然虽在很多时候懒人都被人鄙视,但不得不承认,懒人的确为们我的社会做了不少贡献,有没人懒得走路,就有没人发明汽车,有没人懒得爬楼梯,就有没人发明电梯,有没人懒得去做人工汇编,也就不会有人发明汇编器。
这次一,要是不绝影懒得去做人工反汇编,他也不会考虑做个反汇编器。不过他在决定做这个反汇编器的时候,里心
是还很没底,前以
是还菜鸟的时候,就听哪位牛人说:“如果你做出了反汇编器,就尝试做个汇编器,如果你成果做出来汇编器,就可以尝试做个编译器。”说实话从学写程序到在现,开发编译器这东西,尽管绝影很感趣兴,但从来都不敢碰,考软件设计师那编译原理都索

全部放弃,为什么?编译器,那实在是不牛人就能做的东西,那是大牛才能做的!
没底归没底,仔细想想,实其这反汇编器也是不那么困难,己自手工反汇编了半天,那反汇编的流程基本经已摸得清清楚楚,在加上这

片也设计得简单,是还定长指令集,这真是Motorola公司莫大的恩惠啊。用最笨的办法把每条指令的机器码、

作数类型、指令加数据的长度、助记符弄成个结构体,再建个一表,把所有指令都收进去,到时候查表不就行了。
花了一天时间,当这个反汇编器诞生的时候,绝影始终是还不相信己自:难道我离大牛的距离又进了一步了?
马克思说得好,资本家是总不能満⾜的,今天他赚了100%的利润,不要为以他就知⾜了,他仍然会想:明天我么怎才能赚到200%的利润呢?绝影満为以这反汇编器一秒钟之內便能完成手工三四天才能完成的工作,经已是整个CASE里大巨的里程碑,值得己自好好骄傲一阵子。陈董却拍拍绝影的肩说:“小绝啊,真是从来没让们我失望过。在现任务还很紧啊,你看看,抓点紧,试试把那汇编代码翻译成C代码吧。”
绝影听了就想吐⾎,早知如此,还如不就人工翻译,说不定花个三四天功夫,陈董还会让他休息一两天。
然虽明知己自中了资本家的计谋,但绝影是还不知悔改,许也程序员是都
样这。这是不
为因这个CASE做好了,又能有多少多少奖金,或者下一从技术经理升职成总经理。正如做反汇编器一样,反编译对绝影来说一样也是件很有意思的事情,为因他没做过,什么事情有没做,就不道知有多难,也不道知这里面会遇到什么样的困难,更不道知如何才能解决这些困难。
以所
在现的很多年轻人,总为以读书破了万卷,下笔写起程序来就的真如有神助,是于参考书技术资料管他有用没用能下载的挂上BT全天24小时下载,次一就下载个十几G的,比MSDN还大,不能下的就书店图书馆网上书店全都搬回家,不管能不能看懂或者有有没时间看,总之,哪怕放在那里看看封面,也得觉离牛人的距离又进了一步。
的有或者又像BugYang一样认为有个牛人能带带己自,就如《鹿鼎记》的中韦小宝一样:“你赶紧传授我绝世武功吧,我好去卧底。”可是《鹿鼎记》中陈进南是不也说了么:“我看绝世武功的秘籍,用了三年,练功,用了三十年。”
反编译的工作比想像中要困难许多,几条汇编语言组织来起得翻译成得体的C语言,能翻译英文书的人英文都应该算了得了,但是翻译起英文著作来都是还牛头不对马嘴,更别指望这个世界有自动英文翻译器,有,那Google在线翻译,效果实在不敢恭维,就如别人笑你英文菜,道说:“你那英语,简直是Google在线翻译。”
这些绝影己自都没弄透彻,更别指望三五天时间里弄出个反编译器出来。
就在他骑虎难下的时候,张厂长突然大声宣布:“出成果了!”
绝影回头一望,他的表情,和BugYang完成任务时一模一样。
附记:
到今天,地震刚刚去过一周,但它带来的影响远远超过了想像。逝者经已逝去,生者为们他默哀,但生者也还在受着磨折。
这一周来,最大的心愿就是能好好洗个澡,能在

上伸直了脚睡一觉,但偶尔冒死回去下一房子又时不时地摇一摇,吓得人提心吊胆。本来下定决心,昨天就回家去住,但刚1点多,又来了次大的余震,房子轰轰地响。赶紧又躲进厕所,叫百万进来,百万还全然不知。今天就再也不敢回家了。
今天在报纸上道知,昨天的那场余震,让江油又失去了13条生命。
一周去过了,露宿的人反而越来越多,明明有己自的房子,却要露宿街头,这里面有多少苦衷啊。
最近今天,朋友们聚在起一,都在讲这次地震,讲己自的亲人朋友,讲北川平武。很多人都说,后以在绵

,恐怕不会有北川这个县了。这次我有没去北川,但据去过的朋友形容,相当惨烈,整个地直接沉下去,然后两边山倒下来把它盖上,就像包饺子一样。
女朋友作为支援者去了次一安县,回来就一直哭,说那里好恐怖:房子都倒得差不多了,路上还时不时有人等待救助,也时不时地摆放着一具具尸体。
安置到绵

的灾民也越来越多,据说超过了50万。这几天很多人是都哭着去几个安置点寻找己自的亲戚朋友,又哭着从里面出来。
街上时常有警车和救护车经过,在现大部分救护车是都外地的,看了很感动。有还网上看到的捐款什么的,有些人在讨论,谁捐得多谁捐得少。实其捐多少都不重要,为因很多损失,

本是没法用钱来衡量的。以所力所能及,能捐多少就捐多少吧,重要是的,希望你能捐出一份心,这个才是灾区民人最需要的。
说实话,刚经历地震的时候,很害怕地震,但是一周去过,我得觉流言比地震更可怕。
hUPuXS.Com