| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7329 人关注过本帖, 1 人收藏
标题:贴一个简单的滑鼠程式
只看楼主 加入收藏
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:11
帖 子:340
专家分:2482
注 册:2016-5-15
收藏
得分:0 
回复 10楼 zhulei1978
对啊,就是要把SI移到第一个字符的前一个位置,所以要减SI二次。
顺便提一下,SUB SI,2虽然一句,机器码长3bytes,两次DEC SI都不过是2byte长。
2016-07-11 07:48
zhulei1978
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:53
帖 子:1351
专家分:1200
注 册:2006-12-17
收藏
得分:0 
              rep     cmpsb           ;compare ds:si and es:di

0c0中的数据不是从first_pos那里复制过来的吗,为什么还要比较判断是否相等

其实我就是改变社会风气,提高少女素质,刺激电影市道,提高年轻人内涵,玉树临风,风度翩翩的整蛊专家,我名叫古晶,英文名叫JingKoo!
2016-07-11 09:45
Valenciax
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:11
帖 子:340
专家分:2482
注 册:2016-5-15
收藏
得分:0 
说来话长…

当键入c:\> pickme  I like this book <按回车>
你会看见I like this book立即变成反白,但实际操作不是如此简单,当按回车后,光标会下移一列,且回到最前

pickme  I like this book <按回车>
_

我们可以把光标上移一行(回到输入行),但问题是,谁知道光标的x坐标,因为文件夹的位置不确定。

c:\>pickme  I like this book
c:\data>pickme  I like this book
c:\data\myprogram\masm>pickme  I like this book

按了回车后,只知道光标被下移一行,回到最前,然而[I like this book]在该行的哪儿?

要找到x坐标,做法是:
1.上移一行(dh-1)
2.光标移到最前(dl=0)
3.设定光标
4.读取光标位置的字符,放到c0处,dl+1(光标右移),c0+1(储存字串缓冲+1)
5,回到3,直到读完64bytes(我们的限制)
6.这时候,读入整行如下:
c:\data>pickme  I like this book
7.然后,设定x坐标=0
8.由c0开始,和参数区(约82h开始)的字符串比较,不同则c0+1,x坐标+1,再比较,直至找到相同。
9.最后的x坐标值就是 [c:\data>pickme]  之后的位置,再做反白,就像你看见的行为。




[此贴子已经被作者于2016-7-11 10:58编辑过]

2016-07-11 10:52
zhulei1978
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:53
帖 子:1351
专家分:1200
注 册:2006-12-17
收藏
得分:0 
哦,懂了,谢谢,讲解的很详细。
是我想的简单了,输入的字符串参数在内存中的存储位置和在显存中的存储位置并不是对应的。

其实我就是改变社会风气,提高少女素质,刺激电影市道,提高年轻人内涵,玉树临风,风度翩翩的整蛊专家,我名叫古晶,英文名叫JingKoo!
2016-07-11 11:02
快速回复:贴一个简单的滑鼠程式
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022072 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved