1、虚拟机概念的引入
我们不要单纯地以几种计算机语言思考问题,取而代之的是一系列假想的虚拟机组成的多层结构,每一层由一个虚拟机组成,其中虚拟机VMn执行Ln语言书写的指令。
每台虚拟机都可由硬件或软件构成。如果VMn是由一台真实的计算机构成的话,那么用Ln写的程序就可以直接在VMn的硬件上执行。除此以外,这个程序也可以通过解释或编译的方法转换为L(n-1)程序转到VM(n-1)上执行。
相邻每层虚拟机不应由根本不同,否则编译或解释的过程将过于耗时。如果VM0支持的语言对程序员不够友好,则可设计另外一个更易于理解的虚拟机VM1。此过程不断重复直到设计出VMn,它支持的语言功能强...


- [parse] Linux实在是让人又爱又恨:爱的是任何有勇气探索者都可以鼓捣它,恨的是它的系统表现实在是让人难以恭 02/17 20:55
- [rotapple] 过中秋,加上玩了几天游戏,我的程序丢在一边很多天了。 这两天把它写完了。偏移修正也加完了。 现在 09/15 16:22
- [rotapple] 我的意思是这样: proc_a: push ax push bx s: 09/15 16:19
- [chaplinyip] 好像也过了十几天,对这代码好像有点陌生。 不过我试过从显示时间返回至主菜单来回几十次也没发生什 09/09 23:55
- [chaplinyip] 不要急,忙则乱,心平气和一定会有解决之道。一开始写没必要把所有细节都考虑好,可以先大概弄出一个较粗糙 09/09 22:59
- [rotapple] 1 lp 2 mov ax,0 3 mov bx,0 4 jmp short l 09/08 18:36
- [rotapple] 重新跳回main会不会好点?因为重设了ss 09/08 18:25
- [rotapple] 我也不知道到底是不是这么个运行过程。 是同时发生吗? 还是怎样的顺序?? 09/08 18:21
- [rotapple] 我的程序完成了70%左右。只有设置时间没写了。 我写的时候解决了一个重大问题,就是从显示时间返回至 09/08 18:15
- [rotapple] OK,明白。 09/05 10:39
[2011-09-04 11:23] 虚拟机
阅读全文 |
评论次数(0) |
浏览次数(782) |
所属类型(Intel汇编)
[2011-09-04 10:12] two‘s complement 完美释义
以前看到对two‘s complement的解释都是将各位取反然后加1得到。如此突兀的解释是在令人大惑不解。今天终于看到一个比较清晰的含义。
整数的two‘s complement就是其相反数,即x的two‘s complement与x相加的和为0.
如此便可将补码推广至任意进制。
若要求n位m进制数two‘s complement,则用n位0组成的数减之即可得。
经仔细观察上述计算过程,可得到一个具体的算法:将每位数字从m-1中减除(此过程称为取反)然后加一。...
整数的two‘s complement就是其相反数,即x的two‘s complement与x相加的和为0.
如此便可将补码推广至任意进制。
若要求n位m进制数two‘s complement,则用n位0组成的数减之即可得。
经仔细观察上述计算过程,可得到一个具体的算法:将每位数字从m-1中减除(此过程称为取反)然后加一。...
阅读全文 |
评论次数(6) |
浏览次数(1168) |
所属类型(Intel汇编)
页码数(1):
1