FASM源代码分析01

全汇编操作系统Kolibri 0.7.7基于MenuetOS使用fasm汇编编译器

第2个光盘安装的,肯定不用下的

第1个软盘镜像是我们需要的

第3个是源代码

第4个是APP开发包

在其官网http://kolibrios.org/可以下到的文件有

kolibri_0.7.7.0_img_en.7z ------------软盘镜像文件

kolibri_0.7.7.0_sdk.7z------------------APP开发包

kolibri_0.7.7.0_src.7z ------------------操作系统源代码

all_soft.7z ---------------------------------所有软件

latest-distr.7z 最新发布版,与其他项目档案 Archive with additional programs



fasm源代码官网下载地址:

http://flatassembler.net/download.php

代码都差不多,因为在XP上看所以就下了这个:flat assembler 1.71.39 for Windows

fasm源代码分析:
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
In FASM, `stdcall` and `invoke` are both used to call a function. However, they differ in their syntax and the way they handle function arguments. `stdcall` is a calling convention that specifies the order and manner in which function arguments are passed and the order in which registers are saved and restored. It is commonly used with Windows API functions. The syntax for using `stdcall` in FASM is: ``` stdcall function_name, arg1, arg2, ..., argn ``` Here, `function_name` is the name of the function being called, and `arg1` through `argn` are the arguments being passed to the function. For example, to call the `MessageBoxA` function from the Windows API using `stdcall`, you would write: ``` stdcall MessageBoxA, 0, message, caption, MB_OK ``` `invoke`, on the other hand, is a macro that simplifies the syntax for calling functions. It automatically generates the code for setting up the stack, pushing the arguments, and calling the function. The syntax for using `invoke` in FASM is: ``` invoke function_name, arg1, arg2, ..., argn ``` For example, to call the `MessageBoxA` function from the Windows API using `invoke`, you would write: ``` invoke MessageBoxA, 0, message, caption, MB_OK ``` Note that `invoke` automatically adds the `stdcall` calling convention for Windows API functions, so you don't need to explicitly specify it. In summary, `stdcall` is a calling convention that specifies the order and manner in which function arguments are passed, while `invoke` is a macro that simplifies the syntax for calling functions by automatically generating code for setting up the stack, pushing the arguments, and calling the function.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值