WEB开发网
开发学院软件开发C语言 (翻译) 《C# to IL》第一章 IL入门 阅读

(翻译) 《C# to IL》第一章 IL入门

 2009-05-29 08:31:17 来源:WEB开发网   
核心提示: 2 - A Windows Character 子系统,3 - A Windows GUI 子系统,(翻译) 《C# to IL》第一章 IL入门(10),5 – 像OS/2这样的老系统, .corsflags: 这个伪指令用于指定对于64位计算机唯一的标志,它包括了dll的所

2 - A Windows Character 子系统。

3 - A Windows GUI 子系统。

5 – 像OS/2这样的老系统。

.corsflags: 这个伪指令用于指定对于64位计算机唯一的标志。值1表示它是从il中创建的可执行文件,而值64表示一个库。

.assembly: 在前面,我们曾经简单涉及过一个名为.assembly的指令。现在让我们进行深入的研究。

无论我们创建了什么,都是一个称为清单(manifest)的实体的一部分。.assembly伪指令标注了一个清单的开始位置。在层次上,模块是清单最小的实体。.assembly伪指令指定了这个模块属于哪个程序集。模块只能包括一个单独的.assembly伪指令。

对于exe文件,这个伪指令的存在是必须的,但是,对于.dll中的模块,则是可选的。这是因为,我们需要使用这个伪指令来创建一个程序集。这是.NET的基本需要。程序集伪指令包括了其它伪指令。

.hash: 散列计算是一门在计算机世界中通用的技术,这里有大量使用到的散列方法或算法。这个伪指令用于散列计算。

.ver: .ver:伪指令包括了4个由冒号分割的数字。按照下面给定的顺序,它们代表了下面的信息:

主版本编号

次版本编号

内部版本号

修订版本号

extern: 如果有涉及到其它程序集的需求,就要使用到extern伪指令。.NET核心类的代码位于mscorlib.dll中。除了这个dll之外,当我们的程序需要涉及到大量其它的dll时,extern伪指令就要排上用场了。

originator: 在转移到解释上面程序的本质和意义之前,这是我们要研究的最后一个伪指令。这个伪指令揭示了创建该dll的标识。它包括了dll的所有者公钥的8个字节。它显然是一个散列值。

让我们以一种不同的方式一步一步地温习到目前为止我们所做的事情。

上一页  5 6 7 8 9 10 

Tags:翻译 to IL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接