单片机设置软件陷阱的问题

[复制链接]
 楼主| 幸运的丞丞 发表于 2011-12-29 21:29 | 显示全部楼层 |阅读模式
通过跳转指令Ljmp err到出错指令实现,为什么前面要加两个NORG?不加可以吗?只加一个可以吗?求求各位帮帮我
anazel 发表于 2011-12-29 22:38 | 显示全部楼层
没用过NORG这个指令,不是51汇编吧
 楼主| 幸运的丞丞 发表于 2011-12-30 13:17 | 显示全部楼层
哦,是ORG
mb4555 发表于 2011-12-31 12:16 | 显示全部楼层
是   NOP 吧,可以保证读到【Ljmp err】的时候是指令
yewuyi 发表于 2011-12-31 13:33 | 显示全部楼层
这个是以前51时的一个应用小技巧。


51是一种多字节指令的编码方式,通过两个NOP,可以保证ljmp不会出现程序地址拆分组合造成的错误跳转。
icecut 发表于 2011-12-31 16:18 | 显示全部楼层
原来51也有bug
NE5532 发表于 2011-12-31 17:03 | 显示全部楼层
是NOP,因为51是变长指令字,飞的时候可能飞到一个长指令字的中间去,造成指令被误读,NOP是单字节指令,所以连续几个NOP,可以让飞翔的程序停下来,认出NOP指令并执行,以便顺利执行后面的陷阱。

不过说句实话,把硬件弄可靠了,软件陷阱只当书呆子的安慰剂罢了。
yewuyi 发表于 2011-12-31 17:13 | 显示全部楼层
硬件要强壮,软件也要强壮,聪明到大脑+强壮的身体才能做到‘天下无贼’。

否则容易导致硬件和软件扯皮。
NE5532 发表于 2011-12-31 17:47 | 显示全部楼层
呃,不希望看到这个帖子成为扯皮帖,只是希望说明软件技术不是弥补硬件漏洞的借口罢了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

4

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部