Visual Studio命中未知断点
问题描述:
这是我点击“本地Windows调试器”时的屏幕外观,然后单击断点按钮。它去是点.....Visual Studio命中未知断点
http://i.stack.imgur.com/yufiH.png
我的ASM文件说:
.model small
.stack
.data
.code
_Func proc
mov ax, 1
leave
ret
_Func endp
end
而且cpp文件:
extern "C" {
int Func();
}
int main(int argc, char** argv) {
Func();
return 0;
}
所以我不知道,为什么这个代码会碰到这个奇怪的断点?这是不是在我的代码...
是的,我知道什么“int 3”在组装意味着,这不是我想知道的。这不是我的代码,但它不会让我的代码运行...
答
.model small
适用于32位Windows(Win32)的16位MSDOS,而不是。请尝试以下代码:
.model flat
.code
_Func proc
mov eax, 1
ret
_Func endp
end
“ENTER”指令与“LEAVE”匹配在哪里? – SomeWittyUsername 2014-11-22 07:45:03
你的asm是无稽之谈,堆栈指针被破坏。所以RET会在任意地址恢复。这恰好是代码段中的填充字节。填充字节是INT3指令,你可以猜出原因。 – 2014-11-22 10:25:18