欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

学习_你必须知道的.net2_第四章_一切从IL开始

发布时间:2025/4/14 编程问答 35 豆豆
生活随笔 收集整理的这篇文章主要介绍了 学习_你必须知道的.net2_第四章_一切从IL开始 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

IL体验中心:

 1: .class表示是一个类  ;  .public表示访问权限  ; auto表示程序加载时内存由CLR决定的,而不是程序本身

  .ansi实现托管与非托管代码的无缝转换;   .beforefieldinit为附加信息,在静态字段执行之行,可以在任何时候执行构造函数

  .cil managed说明为IL代码,指示编译器编译为托管代码 ;maxstack执行.ctor可容纳最大个数

  .IL_0000是一个标识代码行开头; ldarg.0即load argment表示装载第一个成员参数

  call一般调用静态方法,因为静态方法是在编译时确定,callvirt表示调用实例方法

  ret即return

  entrypoint是CLR执行程序的入口点

  ldstr即load string,表示将字符串压栈,字符串被移到stack顶部,CLR通过元数据表中获得文字常量来构造string对象

  hidebysig表示如果作父类,则该方法不会被继承

  locals用来声明局部变量

  ld将变量从内存中装载到堆栈上面,而st开头对应存储指令

  ldc将数字压入堆栈,ldind加载间接寻址,ldlen加载数组长度,ldelem加载元素

  ldloc加载局部变量到堆栈,ldloca加到局部变量的地址到堆栈

  ldfld/ldsfld将实例,静态字段加入堆栈

  ldarg/ldarga装载成员参数/装载成员参数地址

  .s表示取单个字节

  brturn/br.s用于条件跳转

--------------------------------看的想吐了。。。这尼玛感觉是在搞汇编啊-------------------

 

  

转载于:https://www.cnblogs.com/jessetang/p/3408943.html

《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读

总结

以上是生活随笔为你收集整理的学习_你必须知道的.net2_第四章_一切从IL开始的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。