来自 澳门新葡亰 2019-11-13 18:56 的文章
当前位置: 澳门新葡亰app > 澳门新葡亰 > 正文

源码、语言、语言编译器、Clr、中间语言IL、元数

1、使用编制程序语言编写源码--->编程语言的编写翻译器(面向Clr卡塔 尔(阿拉伯语:قطر‎---->生成IL代码和元数据(满含:代码中声名的类和成员 以至所引述的分子卡塔 尔(英语:State of Qatar)

1. 公物语言运行时(Common Language Runtime,CL奥迪Q5)是一种可由多样编程语言应用的"运转时"。

2、IL就被誉为托管代码,因为有Clr管理者它的实行

2. CL揽胜极光的主干职能(比方内存管理,程序集加载、安全性、相当管理和线程同步等卡塔尔国可由面向CLPRADO的持有语言应用。

澳门新葡亰app 1

  1. 用四个对应的编写翻译器编写翻译源代码之后,结果都以二个托管模块

 

澳门新葡亰app 2

==================关键词==================

澳门新葡亰app 3

源码、语言、语言编写翻译器、Clr、中间语言IL、元数据

4. 托管模块是一个规范的32/60位Microsoft Windows 可移植实行体(PE32/PE32+卡塔尔国文件,它们都亟需CLOdyssey本领奉行。

语言正是编写代码的应用的言语,有c# F#澳门新葡亰官网APP, c++等

 

言语编写翻译器:种种语言都对应着一个编写翻译器,在,.net平台要想和谐写的代码能够被实施,编译器都要面向CL奥迪Q5(公共语言运转时).

澳门新葡亰app,5. 托管的前后相继集应用Windows的数量实践珍惜地点空间布局随机化加强整个类其余安全性。

Clr :公共语言运转时,试行进度是  源码---托管代码(由语言编写翻译器生成卡塔 尔(阿拉伯语:قطر‎--加载公共语言运行时---推行代码

 

IL: 本机代码生成器生成的代码都以面向特定架构的Cup的代码(x86,x64,arm卡塔 尔(英语:State of Qatar),而各样面向Clr的编写翻译器生成的代码都是面向IL的代码,加载运营时后,会把IL代码解释成cup能识别的机器码,最后实施

  1. 托管模块的顺序组成都部队分

 

澳门新葡亰app 4

 

 澳门新葡亰app 5

为了实行托管的代码,客户得要在融洽的微管理机上设置好“运营时”(近期是framework的豆蔻梢头局地卡塔 尔(阿拉伯语:قطر‎

  1. 本土代码编写翻译器生成的是面向特定CPU架构(比方x86、x64和IA64卡塔尔国的代码。

 

 

8. 各样面向CL瑞虎的编写翻译器生成的都以IL(中间语言卡塔尔代码。IL有的时候称为托管代码,因为CLHighlander要治本它的实施。除了生成IL,面向CL奥德赛的各种编译器还要在各样托管模块中生成完全的元数据。

 

9.  元数据是意气风发组数据表。个中大器晚成部分数据表描述了模块中定义的内容,比如类型及其成员。还也会有部分元数据表描述了托管模块引用的剧情,举个例子导入的品类及其成员。元数据连接与含蓄IL代码的公文涉及。事实上,元数据连接嵌入和IL代码相符的EXE/DLL文件中,两个密不可分。

 

  1.  元数据的用途
  •     编写翻译时,元数据排除了对本土C/C++头和库文件的供给,因为在担当落到实处项目/成员的IL代码文件中,已包蕴和援用的品种/成员有关的全体音信。编译器可径直从托管代码中读取元数据。
  •     Visual Studio 使用元数据帮您写代码。它的"智能感知"技术能够拆解解析元数据。
  •     CLXC90的代码验证进度选用元数据确认保证代码试行“类型安全”的操作。

    ......

 

本文由澳门新葡亰app发布于澳门新葡亰,转载请注明出处:源码、语言、语言编译器、Clr、中间语言IL、元数

关键词: