当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 抽象机模式 (已发表在《程序员》2003年第1期上)
 

 

    摘要:帮朋友jacques lebrun贴这篇帖子,顺便提醒某些过于容易激动的读者:当你开口批评之前,你有没有想过,自己究竟有没有批评的资格?当然,孔雀开屏式的批评没人能阻止。不过有句老话说得好,你拿自己当根葱,还真有人拿你蘸酱? “书评的目的是,让评论者对一本自己看过或者没看过的书说点儿什么。评论只在一个意义上有指导作用,那就是它向书评的读者——包括原书的作者——提供了一些关于评论者的智力的信......
 ·p2p技术与应用    »显示摘要«
    摘要: p2p即peer to peer,称为对等连接或对等网络,p2p技术主要指由硬件形成连接后的信息控制技术,其代表形式是软件。 技术背景 p2p起源于最初的联网通信方式,如在建筑物内pc通过局域网互联,不同建筑物间通过modem远程拨号互联。其中建立在tcp/ip协议之上的通信模式构成了今日互联网的基础,所以从基础技术角度看,p2p不是新技术,而是新的应用技术模式。 今天,p2p再一......


抽象机模式
上一页   ... l       当我们想要对我们的程序的执行进行模拟时.程序模拟将可视化工具与调试工具强制性地结合进程序中.很容易将这些查看组件与其他特性视为抽象机模式的参与者.特别地,与可视化或调试有关的执行代码可以通过增强抽象机的指令来定义.

结构 【程序编程相关:WinCE 进程、线程和内存管理(一)

  【推荐阅读:WinCE 进程、线程和内存管理之同步

抽象机模式的结构如图3所示. 【扩展信息:模拟器和远程调试工具(二)

 

 

 

图3 抽象机模式(结构)

 

参与者

 

抽象机可抽象地定义为两个部分的联合:(i)静态部分,由与状态(state)有关的组件组成,(ii)动态部分,确定与抽象机的行为(behavior)相关联的要素.抽象机模式将两个部分的参与者组织与定位为它的结构的组件.

抽象机的状态由以下组件组成:

 

1.       abstract-machine factory(抽象机工厂):它为创建abstract dataarea与abstract program的操作声明接口.

2.       abstract dataarea(抽象数据区):它为数据区对象类型声明接口,用以配置抽象机.它声明两种抽象操作:

l       init操作,用以确定数据区的初始配置,以及

l       stop操作,确定抽象机的执行是否已结束.如果结束条件不依赖于数据区,stop操作就返回true.

3.       concrete dataarea(具体数据区):它定义具体的数据区对象.具体数据区可以是简单对象或复杂对象结构(对象容器).该组件必须提供abstract dataarea接口的实现.

4.       abstract program(抽象程序):它为汇编程序声明通用接口.它的定义必须处理一系列指令(abstract instruction)及一个指令集(abstract instruction set).此外,它还声明了四种抽象操作:

l       init操作,用以确定汇编程序的初始配置.

l       stop操作,用以确定抽象机是否到达它的最终阶段.如果终止条件不依赖于任何程序配置,stop操作返回true.

l       loadprog操作负责构造抽象机程序的汇编指令.该操作从输入流中读取文本表示,并将每条指令翻译为concrete instruction对象.

l       currentinst操作返回要由抽象机执行的指令.

5.       concrete program(具体程序):它定义具体的程序对象.它被定义为具体指令集与一些程序计数器的集合.它必须实现在abstract program中定义的init.stop与currentinst操作.

6.       abstract instruction set(抽象指令集):它声明用以表示一组抽象指令的通用接口.

7.       concrete instruction set(具体指令集):它通过concrete instruction对象来定义一组对象.具体指令集与具体数据区及具体程序相联系.它必须实现abstract instruction set的各操作.

8.       abstract instruction(抽象指令):它声明用以表示抽象机指令的通用接口.

9.       concrete instruction(具体指令):它定义具体的指令对象.具体指令直接与具体数据区与具体程序相联系.它必须实现abstract instruction的各操作.

 

在抽象机的行为这一方面,它依赖于在静态组件之上工作的一些操作.这些操作是抽象机状态的定义的一部分,它们负责描述在执行过程中抽象机所到达的不同状态.这些操作描述如下:

 

1.       abstract-machine state(抽象机状态):作为汇编concrete instruction的执行结果,它对dataarea与program之间的交互进行协调.
...   下一页
 ·中文windows2000登录安全漏洞    »显示摘要«
    摘要:中文windows 2000登录安全漏洞   不知道你有没有过遗失忘记windows 2000登录密码的情况,其实在遇到了这种突发事件后我们没有必要去重新安装系统、求助第三方软件甚至将机器大卸八块取出硬盘来找寻密码;只要利用windows 2000中的一个小小的漏洞就可以轻松的解决问题,到底是怎么操作的呢?   (1)在windows2000启动之后,按照屏幕提示按下alt+ctrl+del进行登......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE