打印

经典的非典的PUSH与RET(I)的用法

[复制链接]
3698|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
conwh|  楼主 | 2007-9-12 20:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
都知道在键盘输入时,为了防止重复输入都采用状态输入法,这样就会给程序带来大量的冗余,为了减小冗余很多都使用了返回键码的判断。
这里介绍的就是使用更为简练的RET(I)的方式,使程序更为可读性和方便。
在键盘操作后(功能)仍然使用RET(I)来返回,但这里并没有键盘状态的检测(这里的分支很多,CASE、GOTO也是很多的),但为了结构的清晰同样可以达到都从键盘检测(有没有松键的检测,当然对连续按键的除外)的返回,这就使用了PUSH和RET(I)的非典用法。
在子程序(如键盘)进入时首先压入(键盘的)检测松开的检测首地址(在这个地址里放置检测程序),剩下的每个分支都可以直接RET(I)就可以了,在每个分支(CASE)的结束都将自动返回到检测的程序里去。
完毕:)。

相关帖子

沙发
ayb_ice| | 2007-9-12 21:00 | 只看该作者

不知在讲什么...

使用特权

评论回复
板凳
conwh|  楼主 | 2007-9-12 21:02 | 只看该作者

我也不知道

使用特权

评论回复
地板
awey| | 2007-9-12 21:05 | 只看该作者

我知道,是自言自语~~~

使用特权

评论回复
5
lsfsxfljj| | 2007-9-12 21:36 | 只看该作者

典型的状态转移

使用特权

评论回复
6
zhf0964| | 2007-9-13 08:37 | 只看该作者

传说中的精神分裂?

使用特权

评论回复
7
zhuyu800| | 2007-9-13 12:08 | 只看该作者

经典的非典的PUSH与RET(I)的用法

你们说的很对,真的不知道他在讲什么~

使用特权

评论回复
8
CONWH| | 2007-9-13 16:17 | 只看该作者

喝高的时候写的,有点乱,学童不宜。

使用特权

评论回复
9
Cortex-M0| | 2011-10-9 07:17 | 只看该作者
使用PUSH与RET(I)的非典型状态转移**~~~ :P

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

1669

帖子

0

粉丝