两者在执行普通指令是没有什么不同的。F7和F8主要的不同在于对call指令的调用
F8:把整条CALL指令当成一条指令来执行,当执行完call这条指令后,继续执行当前指令的下一条指令
F7:会进到CALL指令后的地址逐个执行指令
断点:让程序执行到指定位置。
DTDebug中如何使用:选中一行指令按F2,再运行程序的话就能让程序执行到指定位置。

设置了断点的位置,当启动时程序会执行到该位置并停止,这个同指令INT 3 。都是表示断点。
让F8下一步指令断不下来
步骤:

当使用F8执行的时候,执行到call的那条指令时,当前call指令的下一条指令0119ECF5已经被压到的栈中,此时执行当前(0119 ED17)指令将栈指针修改成一个不存在的地址即可实现反调试
不过这种反调试方法对F7无效
原文:https://www.cnblogs.com/codexlx/p/13252201.html