随笔分类 -  CLR / CLI

介绍.NET底层相关知识。
摘要:.NET/CLI的PE文件中广泛采用了一种整数压缩算法,这种算法可以将一个32位整数根据其大小的不同放置在1、2或4个字节中。当整数的值比较小时,这种算法能够有效地减少PE文件的大小。本文介绍了这种压缩算法,并给出了压缩/解压缩的参考实现。 阅读全文
posted @ 2010-02-09 19:20 Anders Liu 阅读(3035) 评论(13) 推荐(2) 编辑
摘要:Compressed Integer is widely used in .NET/CLI PE files; this algorithm can place a 32-bit integer into 1, 2, or 4 bytes base on its value. Compressed integer can save the size of a PE file effectively, especially when the integer value is small. This document introduces the compression algorithm for integer, and gives the reference implement of the algorithm. 阅读全文
posted @ 2010-02-09 17:00 Anders Liu 阅读(2593) 评论(5) 推荐(4) 编辑
摘要:这里给出了一段可以搞死ILDASM的IL代码。 阅读全文
posted @ 2009-04-23 23:42 Anders Liu 阅读(3100) 评论(4) 推荐(0) 编辑
摘要:foreach语句是C#中一种重要的循环语句,用于遍历一个数组或对象集合中的每一个元素。这一篇文章介绍了在面对数组、IEnumerable接口和自定义类型时,编译器为foreach语句生成的IL代码。 阅读全文
posted @ 2009-02-04 01:17 Anders Liu 阅读(6795) 评论(23) 推荐(3) 编辑
摘要:常量的含义本是“永远不会变的量”,但是如果作为类库开发人员,把常量用作“可以由我变,但不能由你变”的量,那就可能铸成大错了。 阅读全文
posted @ 2008-11-23 10:05 Anders Liu 阅读(4777) 评论(38) 推荐(1) 编辑
摘要:switch语句是C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码。本文介绍了当向switch语句中传入不同类型的参数时,编译器为其生成的IL代码。这一部分介绍的是,在switch语句中使用字符串类型的情况。 阅读全文
posted @ 2008-11-06 10:04 Anders Liu 阅读(5264) 评论(16) 推荐(0) 编辑
摘要:switch语句是C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码。本文介绍了当向switch语句中传入不同类型的参数时,编译器为其生成的IL代码。这一部分介绍的是,在switch语句中使用整数类型和枚举类型的情况。 阅读全文
posted @ 2008-11-03 22:42 Anders Liu 阅读(7410) 评论(27) 推荐(1) 编辑
摘要:这是一个系列文章,介绍了C#中各种语言结构被编译器翻译为IL之后的样子,并从IL的角度分析其中的原理。 阅读全文
posted @ 2008-11-03 22:36 Anders Liu 阅读(6531) 评论(26) 推荐(3) 编辑
摘要:Microsoft Visual C# 3.0作为Visual Studio 2008的一部分发布以来已经快一年了。在VS Managed Languages团队,我们一直努力创建该语言的下一个版本(没什么惊喜,就是C# 4.0),而这个文档是我们现在所看到的、计划中的语言特性的第一个公开描述。 阅读全文
posted @ 2008-11-03 07:56 Anders Liu 阅读(9419) 评论(35) 推荐(1) 编辑
摘要:.NET/CLI的PE文件中广泛采用了一种整数压缩算法,这种算法可以将一个32位无符号整数根据其大小放置在1、2或4个字节中。本文介绍了这种压缩算法,并给出了解压缩的参考实现。 阅读全文
posted @ 2008-08-21 22:11 Anders Liu 阅读(3844) 评论(11) 推荐(0) 编辑
摘要:本文介绍了如何通过PE文件中某一项的RVA来计算其在文件中的位置。 阅读全文
posted @ 2008-08-04 12:41 Anders Liu 阅读(2547) 评论(9) 推荐(0) 编辑

点击右上角即可分享
微信分享提示