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;

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

相关推荐
草莓熊Lotso13 分钟前
Linux 进程创建与终止全解析:fork 原理 + 退出机制实战
linux·运维·服务器·开发语言·汇编·c++·人工智能
爱编码的小八嘎2 小时前
汇编语言全接触-105.Natas 幽灵王病毒的分析
汇编
老鱼说AI16 小时前
深入理解计算机系统1.5:抽象的重要性:操作系统与虚拟机
c语言·开发语言·汇编
猫猫的小茶馆2 天前
【Linux 驱动开发】一. 搭建开发环境
linux·汇编·arm开发·驱动开发·stm32·嵌入式硬件·mcu
猫猫的小茶馆2 天前
【Linux 驱动开发】二. linux内核模块
linux·汇编·arm开发·驱动开发·stm32·嵌入式硬件·架构
切糕师学AI3 天前
ARM 中的 SVC 监管调用(Supervisor Call)
linux·c语言·汇编·arm开发
ベadvance courageouslyミ3 天前
硬件基础中断
汇编·硬件·中断
你爱写程序吗(新H)3 天前
基于单片机的洗衣机控制系统设计 单片机洗衣机控制(设计+文档)
c语言·汇编·单片机·嵌入式硬件·matlab
VekiSon4 天前
ARM架构——用汇编语言点亮 LED
汇编·arm开发·嵌入式硬件
JJCar4 天前
汇编文字池(literal pool)
汇编·文字池·literal pool