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

[复制链接]
4677|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 | 显示全部楼层

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

lsfsxfljj 发表于 2007-9-12 21:36 | 显示全部楼层

典型的状态转移

zhf0964 发表于 2007-9-13 08:37 | 显示全部楼层

传说中的精神分裂?

zhuyu800 发表于 2007-9-13 12:08 | 显示全部楼层

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

你们说的很对,真的不知道他在讲什么~
CONWH 发表于 2007-9-13 16:17 | 显示全部楼层

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

Cortex-M0 发表于 2011-10-9 07:17 | 显示全部楼层
使用PUSH与RET(I)的非典型状态转移**~~~ :P
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

1669

帖子

0

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