徳叔把车在公寓外停好,吩咐了一句侄子帮许成搬电脑,然后正色说道:“成少爷,那我们就说定了,等我在洛杉矶这边安顿好,你就搬过来和我们一起住。”
许成连连点头答应,先前那个许成太好强了,总是拒绝徳叔的照顾,弄的老人家很是揪心,如今自己这个冒牌货可没有那么多的心结,将来好好回报就是了,何况都让徳叔帮着买了一台苹果电脑,债多了不愁啊,反正徳叔也乐意。
侯元方本来还想在许成这里多瞧几眼电脑这个新奇玩意,结果被徳叔瞪了一眼后,便乖乖地跟着老爷子走了,估计安顿三人住处的力气活是怎么也逃不过的了。
许成的公寓里有两个舍友,一个是叫做山下雄的日本人,另外一个是叫做威尔特·鲍威尔的黑人,他们先后去医院看望过许成,不过这两位都在忙于实习工作,很晚才会回来,尤其是山下雄还经常住在公司那边。
将电脑放在自己床边的桌子上后,许成稍微观察了一下,便动手顺利地打开了电脑的主机箱。里面的结构并不如何复杂,简洁实用,折射着其发明者沃兹尼亚克的智慧,许成辨认了一番后就满意地合上了机箱盖。
可以说,不论在硬件方面还是在软件方面,这台苹果电脑都和许成记忆中的资料相符了,那么就可以开始从苹果这里找机会,迈出淘金的第一步了。
许成的想法是,在苹果电脑提供的硬件平台上开发几个实用性很强的具有首创意义的应用程序,如果经济效益好的话,再往英特尔的8086平台上移植。
随着个人电脑产业的发展,软件的重要性会越来越突出,没有各种各样应用程序的支持,硬件还真就是一个好看的摆设。比如,没有多媒体播放器就听不了歌曲看不了电影,没有英特网浏览器就冲不了浪,而苹果电脑在八十年代就是凭借着和adobe这家软件公司的合作成为了桌面出版行业事实上的标准电脑。而且,软件还可以特意为某种硬件进行优化,曾经有个时期里普遍流传个说法,oshop在苹果电脑上的运行速度要比在ibm兼容机上快,广而言之,苹果电脑用来做设计工作更适合,这里面的原因之一就是软件为硬件进行优化了。
目前在苹果电脑平台上,也包括其它类型的个人电脑,应用程序虽然开发的越来越多,但没有真正的王者级别的应用,比如前世里一提及办公软件就是office,开发软件就是visualstudio、浏览器就是ie、图形处理就是photoshop,但市场的需求却是真实存在的,如果把一台前世里装有eecel的电脑摆在当今的会计人员面前,没准她会乐得背过气去,因为她可以从大量繁琐枯燥的计算工作中脱身了,有了excel,一张报表会少扒拉多少算盘少敲多少计算器,可现在还没有人能够意识到是时候发明这个软件了。
所以说呢,乔布斯那句名言“你不能只问顾客要什么,然后想法子给他们做什么。等你做出来,他们已经另有新欢了”,还是颇有几分道理的。在it这个领域里,能否预见到客户的需求并且率先捕捉到这个机遇往往会是决定企业兴衰的最大因素。
许成现在的打算就是开发一个功能类似于excel的软件,其实excel只是电子表格的一种罢了,只是因为微软太凶残把竞争对手都打压掉了,才弄得普通用户以为excel和电子表格是一码事。
这款即将开发的电子表格软件,许成还没有想好名字,不过他可没打算叫做excel,这个名字还是等着微软去用吧,穿越者也要给别人留一点活路嘛。
而且,许成准备借助开发这套软件的契机,从最底层的编译器开始,好好地打造一套软件产品的开发平台,无疑这也会是一个拳头产品,只不过它所面对的应用领域是不那么大众化的专业开发,看起来似乎很小众,可这东西的售价起码数千美元起步,毕竟对于生产厂商而言,工欲善其事必先利其器是需要首先考虑的。
许成设想的这套开发平台支持的编程语言选择余地不大,因为目前这个阶段在个人电脑上开发软件,主要还得用汇编语言,没办法,硬件条件所限,比如许成买回来的这台apple2plus的配置吧,cpu运行频率1mhz,内存48k,就这条件,连前世里的智能手机都不如,所以呢,要开发一个使用范围广、运行效率高的软件,汇编语言是首选。
汇编语言之所以具备这个特点,是因为它和硬件之间没有经销商之类的二道贩子,很多代码中的汇编指令直接与cpu的机器语言指令对应,而机器语言是cpu能够理解和使用的,用于控制自身操作的二进制代码,比如只带立即数的加法指令,在cpu那里的机器码是一串二进制数字01101001,而汇编指令直接用adc表示就行了,后者就是前者的助记符。
从这一点可以看出,机器语言指令是cpu研发完毕后就固定不变的,而在汇编语言这边就可以按照需要自由设定了,比如上面提到的加法指令,不用adc,改用add也可以嘛,只要在编译的时候,让adc或者add变成对应的加法机器指令就行了。所以,对于同一种cpu也可能会有不同版本的汇编语言,比如在英特尔的8086架构a**。而在这之前,个人电脑的体系架构更是百家争鸣,与之对应的汇编语言种类自然也是令人眼花缭乱,这让开发人员在选择时很伤脑筋,许多计算机厂商干脆自己弄一套以求开发工作的稳定性和持续性,所以呢,许成计划打造一套自己的汇编语言平台是很有必要的。
前世的微软,产品能够运营的那么成功,其易用性功不可没,不提那个曾经风靡世界的visuabler的缩写,它是微软为x86微处理器家族编写的一套宏编译器。最初是用来开发在ms-dos上面运行的软件,可以说是该平台上最流行的编译器,即使在许成穿越的那年,indo8开发工具中也能找到它的身影。
许成打算把ma**中那些先进的技术比如结构化编程、宏汇编等等的都采纳过来,这些不但以后开发软件经常用到,而且还是一个学术上的硬通货,可以博得点儿名声啥的,在美国混,要会推销自己啊,许成可不想浪费自身的优势,再说前世里看那些个互联网之父、数据库之父的头衔,很厉害的样子,如果自己也弄个类似的头衔,往大里说为国争光,往小里说满足了自己的恶趣味。
按理说,弄出一套完整的汇编语言系统出来,并且要在计算机上得到实现,可不是一项简单轻松的工作,不过许成有优势啊。
首先,前世里的那个年代,开源软件得到了很大的发展,操作系统linux就是一个著名的例子,而在汇编语言方面也有很多开放源代码的项目,apple2plus所采用的cpu6502就包含在内,许成有经验可以借鉴。
其次,许成在自己的意念空间里找到了苹果电脑的标本,初步开发在这里就可以迅速完成,省去了在一穷二白实物电脑上的辛苦劳作。
最后,许成前世里是个资深技术宅男啊,此类工作他很在行的。
而且许成这几天在医院的时候,已经把编译器弄得差不多了,今天主要是在实物计算机上测试,不过要把这东西折腾到现实空间来,还是需要花费一番力气的,只能靠指敲手写,不过对比起那千万行级别源代码的linux,这工作量还是小巫见大巫了。
许成在电脑上敲好编译器核心部分的代码,然后开始用appledos里面的工具进行编译,在这个过程中间,他突然想起来自己在大学时候的一个困惑,不由得笑了起来。
有种说法,每种编程语言都应该能够编译自身,换句话说,每种编程语言都应该支持制作自己的编译器,但问题是,每种编程语言刚诞生的时候肯定不存在用该种语言编写的编译器,那么这第一个编译器是如何产生的呢?类似的问题可以是你是你爸的儿子,你爸是你爷的儿子,这样一直追问下去,那么第一位祖先是怎么出来的?
许成觉得自己现在的工作过程解答了这一点,那就是借助外部工具完成编译器最核心的部分,然后再利用这个已经完成的最核心部分去完成其余的部分,如此循环,直至完成全部编译器,说得直白点,visualbasic的第一个编译器可能是借助c语言完成的,c语言的第一个编译器可能是借助汇编语言完成的,汇编语言的第一个编译器……这个问题嘛,可能真的要追朔到电子计算机的诞生年代了,指不定是哪个苦逼程序员一条机器指令一条机器指令地完成了那个编译器,只是这位伟大的开创者没能在历史上留下自己的名字。
许成发觉自己就是这么苦中作乐自我解嘲,竟然能够在如此枯燥的工作中找到笑点……
(战场文学)
</p>