Gcc 大会:“;垃圾“oc';在表达“后”;

Gcc 大会:“;垃圾“oc';在表达“后”;,gcc,assembly,Gcc,Assembly,我试图生成以下汇编代码的十六进制表示形式。我正在做一个缓冲区溢出实验室,在那里我需要将命令放入堆栈。当我尝试使用命令编译以下代码时: gcc -m32 -c assemblylevel2.s 我得到一个错误: assemblylevel2.s:2:错误:表达式后的垃圾'oc' 我试过用不同排列的mov,movl,push,push来编写代码。这一切都会产生相同的错误。我怎样才能编译这个 装配级别2.s: movl $0xfaa6ef53, 0x804d108 pushl $0x8048d0c

我试图生成以下汇编代码的十六进制表示形式。我正在做一个缓冲区溢出实验室,在那里我需要将命令放入堆栈。当我尝试使用命令编译以下代码时:

gcc -m32 -c assemblylevel2.s
我得到一个错误:

assemblylevel2.s:2:错误:表达式后的垃圾'oc'

我试过用不同排列的mov,movl,push,push来编写代码。这一切都会产生相同的错误。我怎样才能编译这个

装配级别2.s:

movl $0xfaa6ef53, 0x804d108
pushl $0x8048d0c
ret

考虑到它在第2行抱怨
oc
,我首先要检查您的代码实际上不是这样的:

movl $0xfaa6ef53, 0x804d108
pushl $0x8048doc             ;; oh-see rather than zero-see
ret

这肯定会使它成为一个无效的十六进制数,因此会导致一个错误,比如你看到的东西。

哇,就是这样。我已经盯着这个看了将近一个小时了。非常感谢。