首页 文章

汇编:表达后的“垃圾`oc'”

提问于
浏览
1

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

gcc -m32 -c assemblylevel2.s

我收到错误:

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

我已尝试使用mov,movl,push,pushl的各种排列代码 . 这一切都会产生相同的错误 . 我该如何编译?

assemblylevel2.s:

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

1 回答

  • 3

    鉴于它在第2行抱怨 oc ,我首先会检查你的代码实际上是不是这样:

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

    这肯定会使它成为无效的十六进制数,因此会导致错误,例如您所看到的内容 .

相关问题