ret语句并不是像你想象的那样作为一个跳转语句的返回值使用的。 ret语句是和call语句配套出现的。就像c语言里面的两个大括号一样,有左边的,就要相应的有右边的。 当你调用call命令的时候,PC寄存器的内容被压栈,程序转去执行call指令指向的地址,也就是PC寄存器被赋于新值。 当你调用ret命令的时候,堆栈栈顶元素被返回到PC里面,然后pc++,从刚才的断点继续执行。记得采纳啊