从INTEL的技术文档中查到。
他们是用程序来模拟CPU,所以这个程序,必须能够兼容这些指令集,例如给程序中输入指令ADD,它必须能够理解,这是让它对两个艹作数进行相加,而艹作数又分为内存和寄存器等不同的类型。
其中实现的细节,都是精确到BIT的,编写虚拟机的人,必须对其中每一个比特都要清楚,例如ADD本身就对应着多个不同的二进制编码。
能够把这些搞懂,基本上计算机的底层运行原理就已经理解得非常深刻了,这也是为什么大家认为参加这个项目,可以很好地学习计算机组成原理的原因。
甚至,计算机学院有老师听到这个项目之后,在考虑是否要以这个为案例,来设计课程,让大家学以致用,不至于纸上谈兵,学了相关知识,转眼就忘。
好在8086是16位的,其指令集相对来说数量也比较少,实现机制也没那么复杂,一路磕磕碰碰之下,吴东所组建的这个虚拟机项目小组毕竟顺利地按照林鸿之前所定好的流程一直在向前推进。
而林鸿所使用的方式,却是经过高度优化之后的,例如对条件判断机制,让吴东他们来实现,可能至少要三四条语句进行分别判断,而林鸿则使用一条语句就能搞定。而这条简单的语句,吴东他们看起来,必须得想半天才能想通其中的机制。
(未完待续)
本网站为网友提供小说上传储存空间平台,为网友提供在线阅读交流、txt下载,平台上的所有文学作品均来源于网友的上传
用户上传的文学作品均由网站程序自动分割展现,无人工干预,本站自身不编辑或修改网友上传的内容(请上传有合法版权的作品)
如发现本站有侵犯权利人版权内容的,请向本站投诉,一经核实,本站将立即删除相关作品并对上传人ID账号作封号处理