相关疑难解决方法(0)

Syscall实现exit()

我写了一个简单的C程序,只调用exit()函数,但是strace说二进制文件实际上是调用exit_group,exit()是一个exit_group()包装器吗?这两个功能是否相同?如果是这样,为什么编译器会选择exit_group()而不是exit()?

c x86 assembly gcc system-calls

6
推荐指数
1
解决办法
2300
查看次数

如果函数没有显式使用'ret',为什么没有返回值

我有以下程序:

SECTION .text
main:
     mov ebx, 10
     mov ecx, 50

repeat:
     inc ebx
     loop repeat

     mov eax, ebx
     ret
Run Code Online (Sandbox Code Playgroud)

当该程序运行时,它按预期返回60.但是,如果你删除最后的ret语句,程序运行正常,但然后返回0.为什么?

x86 assembly

2
推荐指数
1
解决办法
555
查看次数

标签 统计

assembly ×2

x86 ×2

c ×1

gcc ×1

system-calls ×1