IL汇编定义方法

cpp 复制代码
.assembly extern mscorlib {}
 
.assembly Methods
{
    .ver 1:0:1:0
}
.module Methods.exe
 
.method static void main() cil managed
{
    .maxstack 5
    .entrypoint
    
    ldc.i4 101
    ldc.i4 202
    call int32 DoSum(int32, int32)
    call void PrintSum(int32)
    ret
}
 
.method public static int32 DoSum (int32 , int32 ) cil managed
{
    .maxstack 2    
    
    ldarg.0
    ldarg.1
    add
    
    ret
}

.method public static void PrintSum(int32) cil managed
{
    .maxstack 2
    ldstr "The Result is : "
    call void [mscorlib]System.Console::Write(string)
    
    ldarg.0
    call void [mscorlib]System.Console::Write(int32)
    
    ret
}

构建运行如下;

代码定义了2个方法;

调用的时候指明返回类型和参数类型;

和C#语言相比,方法名前面加了.method,后面加了 cil managed;

这是网上的程序;我还不是太理解;目前还不能写一个方法,比如说是计算阶乘之类的;

相关推荐
矿渣渣19 小时前
RM Cortex-A7 架构中“SEV”汇编指令解析
汇编·架构
CYRUS STUDIO2 天前
Unidbg Trace 反 OLLVM 控制流平坦化(fla)
android·汇编·算法·网络安全·逆向·ollvm
淬渊阁2 天前
汇编学习之《运算和逻辑指令》
汇编·学习
长安——归故李3 天前
51单片机彩灯控制与数码管结合
汇编·单片机·嵌入式硬件·青少年编程·c#·51单片机·硬件工程
淬渊阁3 天前
汇编学习之《扩展指令指针寄存器》
汇编·学习
淬渊阁3 天前
汇编学习之《push , pop指令》
汇编·学习
leluckys4 天前
逆向-ARM64汇编二
汇编
小麦嵌入式4 天前
Linux驱动开发实战(九):Linux内核pinctrl_map详解与优势分析
linux·c语言·汇编·驱动开发·stm32·嵌入式硬件·硬件工程
淬渊阁4 天前
汇编学习之《指针寄存器&大小端学习》
汇编·学习
淬渊阁4 天前
汇编学习之《段寄存器》
汇编·学习