【发布时间】:2014-03-24 02:21:32
【问题描述】:
我对 ASM 很陌生,所以如果问题太愚蠢,请原谅。我正在使用 GAS + Ubuntu 12.04。
我做了以下事情:
.data
x: .ascii "15"
.text
.global _start
_start:
movl $4, %eax
movl $1, %ebx
movl $x, %ecx
movl $2, %edx
int $0x80
EndProg:
movl $1, %eax
movl $0, %ebx
int $0x80
上述工作正常并输出15。但是当我尝试将其输出为long时,它什么也没显示。也没有错误。
这是我的非工作代码:
.data
x: .long 15
.text
.global _start
_start:
movl $4, %eax
movl $1, %ebx
movl $x, %ecx
movl $4, %edx # I'm assuming 4 bytes for long.
int $0x80
EndProg:
movl $1, %eax
movl $0, %ebx
int $0x80
【问题讨论】:
标签: assembly output gnu-assembler