Board logo

标题: 程序跑飞 [打印本页]

作者: panpan123    时间: 2009-7-21 14:19     标题: 程序跑飞

程序莫名其妙跑飞

停止运行后发现程序跑到以下代码处运行,不知道什么意思

#pragma NO_FRAME
#pragma NO_ENTRY
#pragma NO_EXIT

void NEAR _CASE_CHECKED_BYTE (void) {
__asm {
PULX ; load address
PSHB
CMPB 2, X+ ; compare low byte
TBNE A, defa ; branch if value > 0xff
BLO jump ; branch if value < #entries
defa: LDAB -1, X ; select default entry, address = X-1
BRA sum
jump: LDAB B, X ; load branch offset
sum: LEAX B, X
PULB
_SRET ; debug info only: This is the last instr of a function with a special return
JMP 0, X ; jump to selected entry
}
}


作者: strongchen    时间: 2009-7-21 14:38

程序应该是跑飞了。仔细检查一下是否有堆栈溢出,中断矢量地址是否正确,等等。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0