.NET中常见的 IL 指令集

1、IL中常见的符号html

 

 

 

2、.NET中常见的 IL 指令集spa

 

 

名称指针

说明调试

Addhtm

将两个值相加并将结果推送到计算堆栈上。对象

Add.Ovf排序

将两个整数相加,执行溢出检查,而且将结果推送到计算堆栈上。get

Add.Ovf.Unit

将两个无符号整数值相加,执行溢出检查,而且将结果推送到计算堆栈上。io

And

计算两个值的按位并将结果推送到计算堆栈上。

Arglist

返回指向当前方法的参数列表的非托管指针。

Beq

若是两个值相等,则将控制转移到目标指令。

Beq.S

若是两个值相等,则将控制转移到目标指令(短格式)。

Bge

若是第一个值大于或等于第二个值,则将控制转移到目标指令。

Bge.S

若是第一个值大于或等于第二个值,则将控制转移到目标指令(短格式)。

Bge.Un

当比较无符号整数值或不可排序的浮点型值时,若是第一个值大于第二个值,则将控制转移到目标指令。

Bge.Un.S

当比较无符号整数值或不可排序的浮点型值时,若是第一个值大于第二个值,则将控制转移到目标指令(短格式)。

Bgt

若是第一个值大于第二个值,则将控制转移到目标指令。

Bgt.S

若是第一个值大于第二个值,则将控制转移到目标指令(短格式)。

Bgt.Un

当比较无符号整数值或不可排序的浮点型值时,若是第一个值大于第二个值,则将控制转移到目标指令。

Bgt.Un.S

当比较无符号整数值或不可排序的浮点型值时,若是第一个值大于第二个值,则将控制转移到目标指令(短格式)。

Ble

若是第一个值小于或等于第二个值,则将控制转移到目标指令。

Ble.S

若是第一个值小于或等于第二个值,则将控制转移到目标指令(短格式)。

Ble.Un

当比较无符号整数值或不可排序的浮点型值时,若是第一个值小于或等于第二个值,则将控制转移到目标指令。

Ble.Un.S

当比较无符号整数值或不可排序的浮点值时,若是第一个值小于或等于第二个值,则将控制权转移到目标指令(短格式)。

Blt

若是第一个值小于第二个值,则将控制转移到目标指令。

Blt.S

若是第一个值小于第二个值,则将控制转移到目标指令(短格式)。

Blt.Un

当比较无符号整数值或不可排序的浮点型值时,若是第一个值小于第二个值,则将控制转移到目标指令。

Blt.Un.S

当比较无符号整数值或不可排序的浮点型值时,若是第一个值小于第二个值,则将控制转移到目标指令(短格式)。

Bne.Un

当两个无符号整数值或不可排序的浮点型值不相等时,将控制转移到目标指令。

Bne.Un.S

当两个无符号整数值或不可排序的浮点型值不相等时,将控制转移到目标指令(短格式)。

Box

将值类转换为对象引用(O 类型)。

Br

无条件地将控制转移到目标指令。

Br.S

无条件地将控制转移到目标指令(短格式)。

Break

向公共语言结构 (CLI) 发出信号以通知调试器已撞上了一个断点。

Brfalse

若是 value false、空引用(Visual Basic 中的 Nothing)或零,则将控制转移到目标指令。

Brfalse.S

若是 value false、空引用或零,则将控制转移到目标指令。

Brtrue

若是 value true、非空或非零,则将控制转移到目标指令。

Brtrue.S

若是 value true、非空或非零,则将控制转移到目标指令(短格式)。

Call

调用由传递的方法说明符指示的方法。

Calli

经过调用约定描述的参数调用在计算堆栈上指示的方法(做为指向入口点的指针)。

Callvirt

对对象调用后期绑定方法,而且将返回值推送到计算堆栈上。

Castclass

尝试将引用传递的对象转换为指定的类。

Ceq

比较两个值。若是这两个值相等,则将整数值 1 (int32) 推送到计算堆栈上;不然,将 0 (int32) 推送到计算堆栈上。

Cgt

比较两个值。若是第一个值大于第二个值,则将整数值 1 (int32) 推送到计算堆栈上;反之,将 0 (int32) 推送到计算堆栈上。

Cgt.Un

比较两个无符号的或不可排序的值。若是第一个值大于第二个值,则将整数值 1 (int32) 推送到计算堆栈上;反之,将 0 (int32) 推送到计算堆栈上。

Ckfinite

若是值不是有限数,则引起 ArithmeticException

Clt

比较两个值。若是第一个值小于第二个值,则将整数值 1 (int32) 推送到计算堆栈上;反之,将 0 (int32) 推送到计算堆栈上。

Clt.Un

比较无符号的或不可排序的值 value1 value2。若是 value1 小于 value2,则将整数值 1 (int32 ) 推送到计算堆栈上;反之,将 0 ( int32 ) 推送到计算堆栈上。

 

参考资料:.NET中常见的 IL 指令集  http://www.studyofnet.com/news/1242.html

相关文章
相关标签/搜索