嵌入式汇编的问题
时间:2010-09-04
来源:互联网
Linux 0.11内核的include/unistd.h里的_syscall1实现我看不懂
代码如下,就是那个输入寄存器我没看懂,“0”是啥:
复制代码
代码如下,就是那个输入寄存器我没看懂,“0”是啥:
- #define _syscall1(type,name,atype,a) \
- type name(atype a) \
- { \
- long __res; \
- __asm__ volatile ("int $0x80" \
- : "=a" (__res) \
- : "0" (__NR_##name),"b" ((long)(a))); \
- if (__res >= 0) \
- return (type) __res; \
- errno = -__res; \
- return -1; \
- }
作者: yylogo 发布时间: 2010-09-04
回复 yylogo
0就是第0个参数,就是=a,就是eax
0就是第0个参数,就是=a,就是eax
作者: 论坛ID 发布时间: 2010-09-04
干脆谁来个痛快,把整个都解释一下得了,老是忘了嵌入汇编的规则。。

作者: pengjianbokobe 发布时间: 2010-09-04
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28