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;

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

相关推荐
small_wh1te_coder4 天前
GCC深度剖析:从编译原理到嵌入式底层实战
汇编·c++·面试·嵌入式·状态模式·c
白书宇5 天前
5.从零开始写LINUX内核--从实模式到保护模式的过渡实现
linux·汇编·数据库·开源
浩浩测试一下5 天前
02高级语言逻辑结构到汇编语言之逻辑结构转换 if (...) {...} else {...} 结构
汇编·数据结构·数据库·redis·安全·网络安全·缓存
蚰蜒螟6 天前
JVM安全点轮询汇编函数解析
汇编·jvm·安全
要记得喝水11 天前
汇编中常用寄存器介绍
开发语言·汇编·windows·c#·.net
技术领导力12 天前
华为开源CANN,再次释放“昇腾转向”信号
汇编
DONG91316 天前
Python 中的可迭代、迭代器与生成器——从协议到实现再到最佳实践
开发语言·汇编·数据结构·python·算法·青少年编程·排序算法
embrace9919 天前
【C语言学习】scanf函数
c语言·开发语言·汇编·学习·青少年编程·c#·编辑器
麦兜*19 天前
【算法】十大排序算法超深度解析,从数学原理到汇编级优化,涵盖 15个核心维度
java·汇编·jvm·算法·spring cloud·ai·排序算法
会掉头发20 天前
x86_64汇编
汇编