| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 812 人关注过本帖
标题:请教:循环超过255以后
只看楼主 加入收藏
kowang
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-9-19
收藏
 问题点数:0 回复次数:0 
请教:循环超过255以后

下面这段,为什么循环超过255以后会出错


for i:=0 to nheight-1 do begin
sptr := PBYTE(integer(sddsd.lpSurface) + (y+i) * sddsd.lPitch + x);
asm
mov scount, 0
mov esi, sptr
lea edi, source
@@CopySource:
mov ebx, scount //ebx = scount
cmp ebx, srclen
jae @@EndSourceCopy
db $0F,$6F,$04,$1E /// movq mm0, [esi+ebx]
db $0F,$7F,$07 /// movq [edi], mm0

mov ebx, 0
@@Loop8:
cmp ebx, 8
jz @@EndLoop8
movzx eax, [edi+ebx].byte
mov edx, peff
movzx eax, [edx+eax].byte //
mov [edi+ebx], al
inc ebx
jmp @@Loop8
@@EndLoop8:

mov ebx, scount
db $0F,$6F,$07 /// movq mm0, [edi]
db $0F,$7F,$04,$1E /// movq [esi+ebx], mm0

add edi, 8
add scount, 8
jmp @@CopySource
@@EndSourceCopy:
db $0F,$77 /// emms

end;
end;

谢谢了。麻烦解决一下。好急的。嘿嘿

[此贴子已经被作者于2007-9-19 22:02:18编辑过]

搜索更多相关主题的帖子: ebx mov scount sptr sddsd 
2007-09-19 21:53
快速回复:请教:循环超过255以后
数据加载中...
 
   



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

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