杨林呵呵一笑,说道:“这是书籍上关于计算机的定义。但是在我看来,这种定义实在是太过刻板了。何谓计算机,计算机的本质就是一个加法器(仅会1+1)和一个搬运工。”
众人不由得微微一愣。
杨林道:“减法用补码加,乘法多次算,除法转乘法,这是计算;8位一字节,128个ascii码,数字就成了字母;字母组单词单词做指令,数可以代表指令也可以代表运算部件,指令有操作码和操作数,指挥加法器操作数,这就是汇编。”
“图像rgb三元色256灰度,声音采样,汉字两字节de。于是我们经常听到的声音就变成二进制01代码。有了这些,我便可以用单片机控制led显示屏,我传1你就亮,这是开关。当我128*64个液晶一起,这是128*64液晶显示屏。”
“怎么现实矩阵数码这几个字?怎么使用键盘扫描a这个字母?怎么打开ifi模块?怎么写驱动?这都是c语言在干的。这就是驱动。”
“驱动出来了,处理器改怎么分配时间,内存怎么占用,硬盘内存cache怎么分,进程何时用,外设驱动怎么处理,等等,这些写好了就是简易操作系统。”
“屏幕可以任意显示了,音响可以随意响了,有os做底层支撑了,然后我让屏幕显示一把枪,我定义它为一个物体。定义一些操作,比如扣动扳机。再定义一些人物,场景,定义一些规则,这就是cs。这里枪只是一个枪。我不会去管它怎么画怎么显,我只要知道他是一个东西,我可以用它。这就是面向对象编程。”
杨林不疾不徐地说着,整个会议室静得针落可闻,他的声音却仿佛带着一种奇特的韵律,虽然说的都是众所周知的一些基础。但再结合刚才的那份矩阵语言资料,所有人都有种醍醐灌顶的感觉。
杨林顿了顿,继续道:“从计算机诞生之初到现在,我们所编写的所有程序的运算过程就是在不停地做数学题,即使所谓编写游戏。也就是把游戏的规则和游戏的效果转化为数学题。”
“电脑上fps游戏的本质活动就是不停地求三维座标系下的多面体经过变换之后在二维平面上的投影,不停地判断两个多面体是否彼此重叠,以及不停地寻找两个顶点之间的最短路径,最终达到让怪物冲到你面前咬你一口的目的。不止游戏如此,其他软件也都差不多,每一个细节都是某种数学题。我们浏览的网络页面顶端的蓝色导航条背景,就是css描述的一个浅蓝到深蓝的渐变。渐变是怎么回事呢?给出两个数字分别代表两种颜色,以及第三个数字代表一段距离。求一系列颜色的数值以及次序,使得这段距离中两种相邻颜色之间的变
请收藏:https://m.bi66.cc
(温馨提示:请关闭畅读或阅读模式,否则内容无法正常显示)