很多人都在问电脑中的很多软件是怎么来的,比如说操作系统怎么来的,编程软件又是怎么来的。问这个问题的根本原因就是,认为某个软件必须在该软件更旧的版本存在条件下才能产生。具体化这种思想,例如:
认为新的操作系统必须在旧的操作系统存在条件下才能开发出来,那么,最初的操作系统优势如何开发出来的呢?又比如:C语言用汇编语言开发,但是汇编语言又是由什么更老的语言开发的呢?
这两个问题实际上都一样的逻辑。你为什么必须认为C语言只能用汇编语言开发,汇编语言只能用二进制开发呢?电脑的进化类似于生物进化,但是,又不等于生物进化,不是说只能由低等开发高等。
实际上C语言编译器可以用其他C语言编译器开发,VC++2012就是用VC++旧版本开发的;汇编编译器FASM是用汇编语言开发的,如果你有技术,即使用C++编译器开发汇编编译器也没有问题!!
操作系统也好,编译器也罢,根本上都是程序,他们有着共同发展历史:
程序首先出现在穿孔卡上,人们通过机械把小孔打上去,如果历史出现一点小差错,某个人忽然在这个时候突然想到要编一个汇编编译器(当然,这是假设的历史),那么,他只需要在上面打上几个小孔代表相应机器指令,就把汇编编译器程序写完了。
既然写程序就是写一些机器指令,然后把它储存好让机器执行,那么,编写其它任何程序包括编译器也是同样道理,只要把能够实现相应功能的代码写好,并且保存好就行,管他用什么编写
无论用C语言
还是汇编语言。
只要产生能够达到相应功能的代码就行,管他用什么写,哪怕你用刀子刻上去都一样!!