通过启动程序发出奇怪的消息

时间:2014-11-03 20:32:07

标签: assembly x86

我非常需要帮助,因为我已经创建了这个汇编程序 (弹出/ dev / sr0)和我运行程序时。 CD打开但我有一个奇怪的消息:"分段错误(核心转储)" 为什么我收到此错误消息? 谢谢你非常愉快的一天=)

[section .text]

global _start
_start:
    mov al, 5
    cdq
    push edx
    push dword 0x3072732f
    push dword 0x7665642f
    mov ebx, esp
    mov cx, 0xfff
    sub cx, 0x3e7
    sub cx, 0x418
    int 0x80
    mov ebx, eax
    mov al, 54
    mov cx, 0x5309
    cdq
    int 0x80

1 个答案:

答案 0 :(得分:1)

我假设第一个系统调用是open,第二个是弹出托盘的ioctl。你觉得之后发生了什么?你忘了结束你的程序,所以cpu将继续执行内存中的任何内容,直到它遇到故障。您可能希望添加与mov eax, 1; int 0x80等效的内容。

最后,通常的建议是:学会使用调试器。