ILDASM教程.docVIP

  • 5
  • 0
  • 约2.12千字
  • 约 3页
  • 2018-02-04 发布于河南
  • 举报
ILDASM教程

ILDASM教程 虚拟CPU 对.NET程序来说,.NET CLR在功能上就如同一块虚拟的CPU,它执行IL代码、操作数据。CLR和真实的CPU类似之处在于它们都不直接操作内存中的变量而是使用程序变量的临 时拷贝,CLR把这些程序变量存放在堆栈上。从内存拷贝某个变量到堆栈的行为称做装载(loading),而从堆栈拷回某个变量到内存的行为则被称做存储 (storing)。 所以把两个数字相加的过程应该是这样的: 1.装载第1个数字并把它推入堆栈。 2.装载第2个数字并把它推入堆栈。 3.从堆栈中取出这两个数字并把它们相加。 4.把结果存储到内存。 什么是堆栈? 理 解IL的关键是知道堆栈的工作原理。堆栈是一种抽象数据结构,其操作机理是后进先出。当你把新条目推进堆栈时,已经在堆栈内的任何条目都会压到堆栈的深 处。同样的,把一个条目从堆栈移出则会让堆栈内的其他条目都向堆栈的顶部移动。只有堆栈最顶端的条目能从堆栈中取出,条目离开堆栈的顺序和它们被推进堆栈 的顺序一样。你不妨回想下自动售货机的装货和取货过程就明白了。 重要的IL语句 既然你已经明白了CLR操作的基础知识,下面我们就接着讨论你面前的那些代码。怎么?没有看到什么代码?那么请你看看这里列出的IL代码。 你首先看见的是对当前方法的IL声明,其中包括方法的名字,返回类型、参数列表以及附着于该方法的

文档评论(0)

1亿VIP精品文档

相关文档