第8章
作者:绝影    更新:2021-12-07 11:44
  但是,不看书是肯定要不得的,本来绝影以为C语言,不过尔尔嘛,凭自己平时的技术积累,还有过不了的?但实际上才上了几节课他就发现不对了。原来一门课看起来容易,你要真的把它当课去学,问题就多了。很多事情都是这样,比如公司里,BOSS跟你说:“小李啊,那个软件客户还想要个功能啊,我看也不复杂,估计就一二十行代码,就当场答应了,你就去看看吧。客户就是上帝,他们的合理要求我们当然要首先考虑。”可是当你把那要求拿来一看,妈呀!这数据库也要重新设计,界面也要改,配置文件要增加,好多结构又要重新设计,一算下来,一两万行代码也解决不了问题,而且估计又要制造一二十个新BUG。
  再这样忽悠下去,别说拿全年级最高分,就是考及格,都有很大问题。迫不得已,绝影开始C语言学习计划。当然,他不敢明目张胆地拿出来学习,那就破坏了他在同学心目中神童的形象。
  他就偷偷地学。把《C语言程序设计 第二版》,谭浩强,清华大学出版社的封面撕了,粘上《PC汇编语言程序设计》,先在电脑上开一大堆应用程序,什么QQ啊,Flastget啊,记事本啊,计算器啊能开的都开上,再偷偷开个TurboC的DOS窗口,一有人来,马上切换。
  所以说人活得很累,有很多事情,像学习,在很多时候都不是为自己学,是为别人学。为什么?因为你在别人心目中是个高手。你不得不花比别人更多时间去维护你在别人心目中高手的形象。你做到了,但那又有什么,别人认为你理所当然应该是个高手,那是你应该,他才不会管你比自己多花了多少时间和精力而来赞扬你刻苦,值得学习。
  这一点被资本家充分利用。BOSS总说:“小张啊,你从来没让我们失望过。”你听了心里自然舒坦。然后他说:“哎呀现在公司里这个编译器不好用啊,你想想办法,给咱们开发个编译器吧,两个月时间够了吧,这点东西对你来说算啥啊?你从来没让我们失望过啊。”你听他这么说的时候又恨不得立刻给他两耳光,但是没办法,谁让你从来没让别人失望过。最后反正不管你用什么办法千辛万苦终于把这编译器搞出来了,BOSS又微笑着对你说:“小张啊,你真是从来没让我们失望过啊!”那你就等着他下一次让你开发操作系统吧。
  话说回来,绝影认真学了下C语言,觉得很有意思,他就不明白别人为啥老不懂,像土匪,背数据类型,背关键字,背函数甚至去背程序,每天累得要死。其实C语言这东西,只要你天天上机,经常摸着代码很多东西不用背甚至不用看就知道了,反而是那些天天背不上机的人,一旦上机,写的东西又全是错的。写程序,不比其它的学科,动手才是硬道理。
  往后一点是讲的指针。指针这东西,绝影开始还有点害怕,早在他还在学“DOS”的时候,广告公司那男人就说:“指针啊,是C语言最复杂的东西,也是C语言的灵魂。”这话估计是他抄的,因为现在很多前辈都用这句话教导后辈。不过到后来,也觉得就那么回事,不就是存放个变量的地址么?就像学校的信箱一样。你跟别人说,给我写信,寄到XXXX大学509号信箱,别人怎么知道509信箱是啥?不过他不用管,只管把信发过来,到时候你去箱子里取东西就是了。只要这么想,就拿指针当信箱吧,往那里送信行了,其它不管,一切问题就简单了。
  想到这里,绝影突然又想起来一个问题,他的心跳开始加快,呼吸急促,手开始战抖,胡乱往桌上摸索着,他在找一本书。
  又是寻址方式
  他在找那本《PC汇编语言程序设计》,那书封面已经被撕掉,还好没被当废纸扔掉。他赶紧翻到寻址那章。
  原来如此!寻址方式原来就是寻找数据的方法。比如要除法,被除数在哪里,除数在哪里,商放哪里,余数放哪里,要么在寄存器要么在内存。就这么简单个道理,不如就叫“数据寻找方法”那让人一看就明白,多直观。非要叫个大家都不熟悉的“寻址”。就算叫“寻址”,也完全可以在旁边加以解释,或者写上句:“XXXX寻址方式类似于C语言中的数组。”在C语言指针那一节中加上句:“指针实际反映了CPU的XXXX寻址方式。”
  可中国的教材就是这样,好像搞汇编的人和搞C语言的人有仇,大家各自为政,我专门出书讲汇编,可不能便宜了那些搞C语言的,更不能在书里给他们打免费广告。最后的结果就是:寻址是汇编中最难的,指针是C语言中最难的;学汇编不懂寻址,学C语言不懂指针。害的是真正来学习的人。
  明白了这个道理,绝影觉得寻址那些东西就不过尔尔,什么寄存器寻址,就当寄存器是个指针,里面放地址;什么基址变址,就相当于数组,放个首地址,加几就相当于访问后面几个字节。
  语言的课继续上着,对大部分人来说,到后面越来越难,特别是学了函数,你想他们要去背那么多库函数,还要记关键字,甚至宴斌跟他们讲个For循环,他们都要把例子背下来才行。然后是上机练习,那本《C语言程序设计 第二版》,谭浩强,清华大学出版社还附带有本上机练习。
  不过这都难不到他。他觉得这本书很不错,当初刚领到书的时候他就觉得不错,因为是清华大学出版社的。记得以前什么图书博览会他去买书,到最后书都是论斤卖,清华大学出版社的最贵,16块一斤。现在他也不怕了,干脆把《PC汇编语言程序设计》的封面也撕掉,书弄到这个地步,叫读书破万卷。
  他想谭老教授凭这书也赚了不少钱吧。这也没什么不好,能够真正给别人带来好处的东西就是应该让人赚到钱,当然,如果你的东西真的有价值,你也不用愁赚不到钱。可现在的人一天到晚还是愁:哎呀物价涨了,啥时候才能赚大钱啊?这样想的时候你自己好好反省一下:你真的有多高的技术么?你真的有多高的智商么?你做的东西真的有那么大的价值么?
  慢慢地,和去年一样,陆陆续续有人来找他。基本都是做上机作业。这些人很干脆,关系好的直接扔给他,补充句:“千万别跟别人搞成一样咯!”;关系不好的,要么请他吃顿饭,要么先站那讲一大堆溢美之词,最后也要补充句:“千万别跟别人搞成一样咯!”
  对于这些请求,绝影一般不会拒绝。关系好的,可以加深关系;关系不好的,要不可以免费吃顿饭,要不可以听些让自己开心的话,买个好心情。关键是他们最后补充的那句:要每个人都不一样。他很乐意尝试同样的题用不同的解法。这个用指针,那个就用数组,这个用函数,那个就用宏,这个用For循环,那个就用While循环,一道题也许练不完整本书的内容,但是一道题如果用N种方法去解,那就有可能练完整本书的内容。
  你想两全其美的好事,绝影怎么会不做呢?
  所以那段时间他就特别忙。土匪说:“走走,吃火锅去。”
  他说:“莫空,莫空。”
  “干啥?又在编程啊?”
  “写程序。”
  现在大部分不搞程序的人都会这样说:“他,是个编程的。”绝影不喜欢用“编程”,喜欢用“写程序”。比如你去问一个作家:“最近在干啥啊?”他说:“写小说。”要是他说“编小说”,你心里会怎样想?那人也太不厚道了,编造些小说来忽悠看客。在绝影心中,写程序是“创造”,不是“编造”。
  这样说的时候,土匪还是很鄙视绝影。虽然他自己断然写不了程序,但是他仍然可以鄙视他。为啥?他自己说:“我啥都不懂,我认了。可是你凭啥就说你水平高呢?”
  这种可怕思想存在于现在大部分人的头脑中。别人就算真的好,那也不是真的好,因为我不懂,你跟我讲你水平高,没用,我不懂啊。除非你给我出具一份专家的鉴定书。所以,你比他好一点,他不会承认你,会嫉妒你。要是你比他好很多,他才会承认你,然后会很崇拜你。所以你要做,就应该比别人做得好很多。
  后来绝影觉得这书上和宴斌讲的也没啥学的了。书就这么多章,就算你再用功学的东西也不可能超过书的内容。宴斌就讲那么多,除非学校再给他开工资,他不会讲更多,就算讲,也没几个人能听。他忽然想起那汇编语言一放就给放了大半年,反正学校的课也是那样,只要你能够去上课,要挂科还是比较困难,每个老师挂学生都是有指标的,指标早让那些点名不到的人占满了。
  于是他又从书架的角落翻出那本没有封面的《PC汇编语言程序设计》。
  把这本书拿在手里,想到周星驰的《国产零零柒》,那阿柒辗转沦落为街头卖肉的,这一天,终于来了个人,拍拍他的肩膀说:“阿柒,国家需要你的时候到了。”
  过了寻址这一关,汇编学来也容易了一些,至少那后面的什么分支程序设计阿、循环程序设计阿、子程序设计阿这样东西他在学C语言里面已经有了概念,但是他又试想一下,要是没学C语言,这些东西还不是像寻址一样抽象,这样一想他就有点冒冷汗。计算机这门学科,确实和其它的不一样qi书+奇书-齐书,看来语言都是相通的,要相辅相成,不像那英语就是英语,就算你数学拿到100分,英语还是有可能得0分。