ia-32

    0热度

    1回答

    我想知道机器代码00是什么意思?另外,我有时会在程序中看到机器代码08。 08是什么意思? 08048413 <main>: 8048413: 55 push %ebp #save frame pointer 8048414: 89 e5 mov %esp,%ebp #create new frame pointer 8048416: 83 e4 f

    0热度

    1回答

    我把一个简单的c程序翻译成IA32,然后将它转译成Y86,但是我收到一个错误,我不明白或知道如何调试,因为我只是学习Y86。错误是: Stopped in 1 steps at PC = 0x1. Exception 'HLT', CC Z=1 S=0 O=0 Changes to registers: Changes to memory: 的程序是应该初始化i到0,然后通过继续进行循环

    2热度

    6回答

    我正在研究一本程序集书,并且,程序将包含在origen中的字符串复制到destino。程序编译没有错误,但是当我执行它时,Windows会说:“程序需要关闭”。 我正在编程IA-32汇编,并编译与Qeditor。 这是代码: .386 .model flat,stdcall option casemap:none .data origen BYTE "Esta es la cadena

    0热度

    1回答

    我在逆向工程中遇到了一些麻烦,一些IA32汇编代码。即,这些行: 0x08049d6d <+206>: mov -0xc(%ebp),%edx 0x08049d70 <+209>: mov -0x14(%ebp),%eax 0x08049d73 <+212>: mov %edx,%ecx 0x08049d75 <+214>: sub %eax,%ecx 0x

    0热度

    2回答

    Im做一些功课和困惑回复:这行代码: ja 8048448 <switch_prob+0x28> 我理解除了一部分一切......这怎么修改跳转到8048448? (我相信这是突破声明) 让我知道是否需要更多的代码。 感谢

    0热度

    1回答

    我试图读取组件的文件(86,IA-32)中读取文件,我发现这个例子: mov ebx,eax mov al,0x3 mov edi,esp mov ecx,edi xor edx,edx mov dh,0xff mov dl,0xff int 0x80 其中eax中(第一指令)有开放系统调用的返回码。 有,我还没有完全了解两两件事: 为什么做mov edi,esp然后mov ec

    0热度

    1回答

    有谁知道什么是错误的解决方案在这里: func PROC x:sdword, y:sdword LOCAL tmp: sdword ... func ENDP A. mov tmp, y B. mov eax, y C. mov tmp, ecx D. lea eax, tmp 我可以使用所有这些说明吗?或者它们中有哪些是无效的? 诚挚的问候,并感谢您

    1热度

    2回答

    我目前正在尝试开发对IA32体系结构中程序集的理解。我曾经想过我理解了堆栈结构,直到我运行了一些缓冲区溢出攻击代码,这些代码将返回地址压入堆栈顶部并返回。然后,这个程序让我惊讶地回到了我已经推入堆栈的地址。我最初以为基指针会用于返回,因为它位于返回地址的旁边。但是,我没有触及基指针。那么,大会如何知道在哪里返回? 谢谢。

    1热度

    2回答

    我正在尝试写一个引导加载程序,并且我正在编写的所有代码都以实模式运行。在所有的例子中,我发现有一个xor ax, ax或xor eax, eax,我不明白这是做什么。这似乎与设置段寄存器有关,但我不清楚是什么。

    0热度

    4回答

    我开始了我在汇编程序,我正在做一些算法和通用寄存器的数量是不够的,这 有什么办法在asm中使用特殊寄存器(eip,eflags)作为通用寄存器? 我只需要它们进行少量操作,但所有通用寄存器都已占用,我不喜欢将值存储在内存中,这会降低算法的性能。 可能吗?