开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 4157|回复: 25
收起左侧

[易语言纯源码] 整理了几个速度很快的汇编代码,文本操作

[复制链接]
结帖率:100% (11/11)
发表于 2020-10-19 17:42:03 | 显示全部楼层 |阅读模式   陕西省渭南市
分享源码
界面截图: -
是否带模块: -
备注说明: -
声明一下.这四个全是在论坛或是资源网里下载得到的.原作者也丢了.这里要向原作者致敬的.

需要注意的是汇编本为性能而生,在使用汇编代码时一定要自己检查入口参数是否有效.不然程序会挂的.

  
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
计时整数型 
文本文本型 
内容字节集 
文本 = 取空白文本 (1024 × 1024 × 10)
内容 = 到字节集 (文本)到字节集 (“jr21066”)
计时 = 取启动时间 ()
计次循环首 (100, )
取文本长度 (文本)
计次循环尾 ()
调试输出 (“系统取文本长度”, 取启动时间 () - 计时)
计时 = 取启动时间 ()
计次循环首 (100, )
取文本长度_SSE2_汇编 (文本)
计次循环尾 ()
调试输出 (“汇编取文本长度”, 取启动时间 () - 计时)
计时 = 取启动时间 ()
计次循环首 (100, )
寻找字节集 (内容, 到字节集 (“jr21066”), )
计次循环尾 ()
调试输出 (“系统寻找字节集”, 取启动时间 () - 计时)
计时 = 取启动时间 ()
计次循环首 (100, )
寻找字节集_SSE_汇编 (内容, 到字节集 (“jr21066”), )
计次循环尾 ()
调试输出 (“汇编寻找字节集”, 取启动时间 () - 计时)
计时 = 取启动时间 ()
计次循环首 (10, )
字节集到十六进制文本_汇编 (内容)
计次循环尾 ()
调试输出 (“字节集到十六进制文本_汇编”, 取启动时间 () - 计时)
计时 = 取启动时间 ()
计次循环首 (10, )
十六进制文本到字节集_汇编 (文本)
计次循环尾 ()
调试输出 (“十六进制文本到字节集_汇编”, 取启动时间 () - 计时)
返回 (0)  ' 可以根据您的需要返回任意数值
子程序名返回值类型公开备 注
取文本长度_SSE2_汇编整数型 速度最快
参数名类 型参考可空数组备 注
参_文本通用型文本变量或文本指针
置入代码 ({ 139, 69, 8, 139, 0, 133, 192, 116, 59, 80, 137, 193, 102, 15, 239, 192, 131, 225, 15, 131, 224, 240, 102, 15, 111, 8, 102, 15, 116, 200, 102, 15, 215, 209, 211, 234, 211, 226, 15, 188, 210, 117, 20, 131, 192, 16, 102, 15, 111, 8, 102, 15, 116, 200, 102, 15, 215, 209, 15, 188, 210, 116, 236, 89, 41, 200, 1, 208, 201, 194, 4, 0 })
' mov eax,dword ptr ss:[ebp+0x8]
' mov eax,dword ptr ds:[eax]
' test eax,eax
' je end_
' push eax
' mov ecx,eax
' pxor xmm0,xmm0
' and ecx,0xF
' and eax,0xFFFFFFF0
' movdqa xmm1,xmmword ptr ds:[eax]
' pcmpeqb xmm1,xmm0
' pmovmskb edx,xmm1
' shr edx,cl
' shl edx,cl
' bsf edx,edx
' jne Label_a
' Label_b:
' add eax,0x10
' movdqa xmm1,xmmword ptr ds:[eax]
' pcmpeqb xmm1,xmm0
' pmovmskb edx,xmm1
' bsf edx,edx
' je Label_b
' Label_a:
' pop ecx
' sub eax,ecx
' add eax,edx
' end_:
' leave
' ret 0x4
返回 (0)
子程序名返回值类型公开备 注
寻找字节集_SSE_汇编整数型 by:绿色的可达鸭
参数名类 型参考可空数组备 注
被搜寻的字节集字节集
欲寻找的字节集字节集
起始搜寻位置整数型
如果真 (被搜寻的字节集 = {  } 欲寻找的字节集 = {  })
返回 (0)

置入代码 ({ 131, 228, 248, 131, 236, 48, 139, 69, 8, 86, 87, 139, 8, 139, 69, 12, 139, 81, 4, 141, 113, 8, 139, 0, 51, 201, 137, 116, 36, 44, 137, 84, 36, 28, 141, 120, 8, 139, 64, 4, 137, 68, 36, 48, 15, 190, 7, 137, 124, 36, 40, 102, 15, 110, 192, 139, 69, 16, 72, 102, 15, 96, 192, 131, 248, 1, 102, 15, 97, 192, 102, 15, 112, 200, 0, 15, 156, 193, 73, 35, 200, 137, 76, 36, 16, 59, 202, 15, 131, 236, 0, 0, 0, 139, 194, 15, 16, 4, 49, 51, 210, 137, 84, 36, 20, 102, 15, 116, 193, 137, 84, 36, 24, 102, 15, 215, 240, 137, 116, 36, 32, 15, 188, 246, 137, 116, 36, 36, 15, 132, 160, 0, 0, 0, 138, 7, 139, 124, 36, 16, 136, 68, 36, 15, 141, 4, 50, 51, 201, 138, 84, 36, 15, 3, 199, 3, 68, 36, 44, 137, 68, 36, 52, 56, 16, 139, 84, 36, 20, 117, 70, 139, 255, 65, 59, 76, 36, 48, 15, 132, 130, 0, 0, 0, 3, 254, 139, 193, 51, 246, 153, 3, 248, 19, 242, 139, 84, 36, 20, 3, 250, 19, 116, 36, 24, 133, 246, 119, 120, 114, 6, 59, 124, 36, 28, 115, 112, 139, 68, 36, 52, 139, 116, 36, 40, 139, 124, 36, 16, 138, 4, 8, 58, 4, 49, 139, 116, 36, 36, 116, 188, 139, 68, 36, 32, 141, 78, 1, 211, 232, 3, 209, 137, 76, 36, 52, 131, 84, 36, 24, 0, 15, 188, 240, 137, 68, 36, 32, 137, 84, 36, 20, 137, 116, 36, 36, 15, 133, 118, 255, 255, 255, 139, 76, 36, 16, 139, 124, 36, 40, 139, 68, 36, 28, 131, 193, 16, 137, 76, 36, 16, 59, 200, 115, 24, 139, 116, 36, 44, 233, 37, 255, 255, 255, 141, 70, 1, 3, 194, 3, 199, 95, 94, 139, 229, 93, 194, 16, 0, 95, 131, 200, 255, 94, 139, 229, 93, 194, 16, 0 })
返回 (0)
子程序名返回值类型公开备 注
字节集到十六进制文本_汇编文本型 
参数名类 型参考可空数组备 注
参_内容字节集
变量名类 型静态数组备 注
局部变量_1整数型 
局部变量_2整数型 
局部变量_3文本型 
局部变量_4整数型 
局部变量_5整数型 
置入代码 ({ 139, 93, 8, 139, 27, 139, 91, 4, 137, 93, 252 })  '
'
如果真 (局部变量_1 < 1)
返回 (“”)
置入代码 ({ 232, 0, 0, 0, 0, 89, 131, 193, 9, 233, 0, 2, 0, 0 })  '
'
置入代码 ({ 48, 48, 48, 49, 48, 50, 48, 51, 48, 52, 48, 53, 48, 54, 48, 55, 48, 56, 48, 57, 48, 65, 48, 66, 48, 67, 48, 68, 48, 69, 48, 70, 49, 48, 49, 49, 49, 50, 49, 51, 49, 52, 49, 53, 49, 54, 49, 55, 49, 56, 49, 57, 49, 65, 49, 66, 49, 67, 49, 68, 49, 69, 49, 70, 50, 48, 50, 49, 50, 50, 50, 51, 50, 52, 50, 53, 50, 54, 50, 55, 50, 56, 50, 57, 50, 65, 50, 66, 50, 67, 50, 68, 50, 69, 50, 70, 51, 48, 51, 49, 51, 50, 51, 51, 51, 52, 51, 53, 51, 54, 51, 55, 51, 56, 51, 57, 51, 65, 51, 66, 51, 67, 51, 68, 51, 69, 51, 70, 52, 48, 52, 49, 52, 50, 52, 51, 52, 52, 52, 53, 52, 54, 52, 55, 52, 56, 52, 57, 52, 65, 52, 66, 52, 67, 52, 68, 52, 69, 52, 70, 53, 48, 53, 49, 53, 50, 53, 51, 53, 52, 53, 53, 53, 54, 53, 55, 53, 56, 53, 57, 53, 65, 53, 66, 53, 67, 53, 68, 53, 69, 53, 70, 54, 48, 54, 49, 54, 50, 54, 51, 54, 52, 54, 53, 54, 54, 54, 55, 54, 56, 54, 57, 54, 65, 54, 66, 54, 67, 54, 68, 54, 69, 54, 70, 55, 48, 55, 49, 55, 50, 55, 51, 55, 52, 55, 53, 55, 54, 55, 55, 55, 56, 55, 57, 55, 65, 55, 66, 55, 67, 55, 68, 55, 69, 55, 70, 56, 48, 56, 49, 56, 50, 56, 51, 56, 52, 56, 53, 56, 54, 56, 55, 56, 56, 56, 57, 56, 65, 56, 66, 56, 67, 56, 68, 56, 69, 56, 70, 57, 48, 57, 49, 57, 50, 57, 51, 57, 52, 57, 53, 57, 54, 57, 55, 57, 56, 57, 57, 57, 65, 57, 66, 57, 67, 57, 68, 57, 69, 57, 70, 65, 48, 65, 49, 65, 50, 65, 51, 65, 52, 65, 53, 65, 54, 65, 55, 65, 56, 65, 57, 65, 65, 65, 66, 65, 67, 65, 68, 65, 69, 65, 70, 66, 48, 66, 49, 66, 50, 66, 51, 66, 52, 66, 53, 66, 54, 66, 55, 66, 56, 66, 57, 66, 65, 66, 66, 66, 67, 66, 68, 66, 69, 66, 70, 67, 48, 67, 49, 67, 50, 67, 51, 67, 52, 67, 53, 67, 54, 67, 55, 67, 56, 67, 57, 67, 65, 67, 66, 67, 67, 67, 68, 67, 69, 67, 70, 68, 48, 68, 49, 68, 50, 68, 51, 68, 52, 68, 53, 68, 54, 68, 55, 68, 56, 68, 57, 68, 65, 68, 66, 68, 67, 68, 68, 68, 69, 68, 70, 69, 48, 69, 49, 69, 50, 69, 51, 69, 52, 69, 53, 69, 54, 69, 55, 69, 56, 69, 57, 69, 65, 69, 66, 69, 67, 69, 68, 69, 69, 69, 70, 70, 48, 70, 49, 70, 50, 70, 51, 70, 52, 70, 53, 70, 54, 70, 55, 70, 56, 70, 57, 70, 65, 70, 66, 70, 67, 70, 68, 70, 69, 70, 70 })
'
局部变量_5 = 0  '
局部变量_4 = 1  '
局部变量_2 = 2  '
'
置入代码 ({ 137, 77, 248 })  '
置入代码 ({ 209, 101, 252 })  '
局部变量_3 = 取空白文本 (局部变量_1)
置入代码 ({ 137, 69, 244 })  '
置入代码 ({ 139, 93, 8, 139, 27, 131, 195, 8, 137, 93, 240 })  '
'
置入代码 ({ 139, 117, 240, 139, 93, 248, 139, 125, 244, 209, 109, 252, 139, 77, 252, 3, 206, 51, 192, 138, 6, 70, 209, 224, 102, 139, 20, 24, 102, 137, 23, 71, 71, 59, 241, 124, 236 })
返回 (局部变量_3)
子程序名返回值类型公开备 注
十六进制文本到字节集_汇编字节集 
参数名类 型参考可空数组备 注
参_内容文本型
变量名类 型静态数组备 注
局部变量_1整数型 
局部变量_2整数型 
局部变量_3整数型 
局部变量_4整数型 
局部变量_5字节集 
局部变量_1 = 0  '
局部变量_2 = 1  '
局部变量_3 = 2  '
局部变量_4 = 3  '
置入代码 ({ 139, 93, 8, 139, 27, 137, 93, 248, 139, 251, 185, 255, 255, 255, 255, 50, 192, 252, 242, 174, 184, 254, 255, 255, 255, 43, 193, 137, 69, 252 })
如果真 (局部变量_1 < 1)
返回 ({  })
置入代码 ({ 232, 0, 0, 0, 0, 89, 131, 193, 6, 235, 103 })  '
'
置入代码 ({ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 0, 0, 10, 11, 12, 13, 14, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 11, 12, 13, 14, 15 })
'
置入代码 ({ 144, 144, 144, 144, 144, 137, 77, 244 })  '
置入代码 ({ 209, 109, 252 })  '
局部变量_5 = 取空白字节集 (局部变量_1)
置入代码 ({ 131, 192, 8, 137, 69, 240 })  '
'
置入代码 ({ 139, 93, 244, 139, 117, 248, 139, 125, 240, 209, 101, 252, 139, 77, 252, 3, 206, 51, 192, 102, 139, 6, 70, 70, 80, 37, 255, 0, 0, 0, 138, 52, 24, 88, 193, 232, 8, 138, 20, 24, 192, 230, 4, 8, 242, 136, 23, 71, 59, 241, 124, 223 })
返回 (局部变量_5)


i支持库列表   支持库注释   
spec特殊功能支持库

几个性能代码.e

292.13 KB, 下载次数: 83, 下载积分: 精币 -2 枚

点评

可达鸭那个寻找字节集我记得有个BUG 就是搜索结果在首字节的时候会返回-1   福建省福州市  发表于 2021-7-13 11:33

评分

参与人数 4好评 +3 精币 +8 收起 理由
被封禁言 + 1 很赞同,谢谢!
易语言资源网 + 1 + 3 支持开源~!感谢分享
懒人定制软件 + 1 + 2 支持开源~!感谢分享
QQ1329127360 + 1 + 2 欢迎常来帮助新人,谢谢~

查看全部评分


本帖被以下淘专辑推荐:

结帖率:100% (2/2)

签到天数: 2 天

发表于 2022-2-3 17:54:49 | 显示全部楼层   保留地址
感谢大佬
回复 支持 反对

使用道具 举报

发表于 2021-6-25 19:14:43 | 显示全部楼层   广东省河源市
看看如何
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)
发表于 2021-6-21 10:55:43 | 显示全部楼层   四川省遂宁市
好人一生平安,好东西
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)
发表于 2021-6-21 10:52:48 | 显示全部楼层   四川省遂宁市
感谢大佬
回复 支持 反对

使用道具 举报

结帖率:67% (2/3)
发表于 2021-6-21 10:31:25 | 显示全部楼层   四川省遂宁市
好人一生平安
回复 支持 反对

使用道具 举报

结帖率:61% (22/36)

签到天数: 19 天

发表于 2021-5-8 13:37:22 | 显示全部楼层   辽宁省大连市
感谢楼主分享,太棒了
回复 支持 反对

使用道具 举报

发表于 2021-2-8 05:20:17 | 显示全部楼层   浙江省绍兴市
谢谢大佬分享 支持支持
回复 支持 反对

使用道具 举报

发表于 2021-2-7 20:41:03 | 显示全部楼层   河南省焦作市
谢谢楼主分享!!! 好人一生平安!!!
回复 支持 反对

使用道具 举报

结帖率:40% (6/15)

签到天数: 4 天

发表于 2020-10-30 13:16:04 | 显示全部楼层   重庆市重庆市
这个一定要收藏,谢谢分享
回复 支持 反对

使用道具 举报

签到天数: 5 天

发表于 2020-10-28 23:33:42 高大上手机用户 | 显示全部楼层   广东省广州市
没得下了,M
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表