随笔分类 -  匹夫细说CIL

摘要:CIL究竟应该使用call呢还是应该使用callvirt呢?那么匹夫就和各位一起去分析下这个话题背后的故事吧~~从ILGenerator实现一段本该报错的代码,到揭露CIL代码中的call 和 callvirt的异同,探索c#方法调用背后隐藏的知识点。 阅读全文
posted @ 2015-03-15 02:54 慕容小匹夫 阅读(5001) 评论(32) 推荐(17) 编辑
摘要:之前匹夫也介绍过CIL其实也是面向对象的,所以寻思着大过年的,不如就写一个类,一个用来抽象化小匹夫的类吧,既可以介绍下小匹夫,小匹夫也可以借这个类给各位拜年。那么顺序由上到下,无外乎如何声明一个类,类成员如何定义,以至于到后来如何实例化一个类,并且调用实例的各个方法,当然本文的完整CIL代码各位可以在附录部分看到。 阅读全文
posted @ 2015-02-20 02:52 慕容小匹夫 阅读(4379) 评论(13) 推荐(18) 编辑
摘要:以上一篇文章中的那个CIL实现的Hello Wolrd程序为基础,继续通过写CIL代码实现一些功能的方式来和各位探讨交流,同时也加深自己对CIL的掌握和印象。会涉及:函数的实现,局部变量的声明,cil是如何依托堆栈执行命令的,以及装箱~~~ 阅读全文
posted @ 2015-02-04 23:57 慕容小匹夫 阅读(3593) 评论(5) 推荐(7) 编辑
摘要:为何是CIL?难道不能直接从C#,VB...编译成机器码码?那为何又是栈式机?难道不能是内存,寄存器吗?详细分析一下这两个问题之后,再让我们从Hello World开始书写CIL的旅程吧! 阅读全文
posted @ 2015-01-31 07:25 慕容小匹夫 阅读(12685) 评论(39) 推荐(49) 编辑