全部 我想在终端中显示函数 Additionner(一个添加函数)的返回值 (13)。 它存储在 %eax 寄存器中。
我知道,我不必为这个程序做一个函数,但它是那样做的,因为我正在学习。
`.section .text
.globl _start
_start:
pushl $9
pushl $4
call additioner
movl %eax, %ebx
#Show Value
movl %ebx, %ecx #Content i want to show
movl $4, %eax #Write
movl $1, %ebx #StdOut
movl $1, %edx #Len
int $0x80 #Syscall
movl $1, %eax
xorl %ebx, %ebx
int $0x80
.type additionner, @function
additioner:
pushl %ebp
movl %esp, %ebp
subl $4, %esp
movl 8(%ebp), %eax
movl 12(%ebp), %ebx
add %ebx, %eax
movl %ebp, %esp
popl %ebp
ret`
我在互联网、chatgpt、我的书中搜索,但什么也没有。 我试图改变长度,我想知道write函数是否只能用于显示ascii,如果是这样我如何将我寄存器中的结果传递给ascii字符串并在之后显示它。
非常感谢您的帮助