开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 3113|回复: 11
收起左侧

[易语言纯源码] crc16 汇编置入代码 翻译论坛的帖子

[复制链接]
结帖率:97% (31/32)
发表于 2021-9-8 15:50:08 | 显示全部楼层 |阅读模式   福建省福州市
分享源码
界面截图: -
是否带模块: -
备注说明: -
.版本 2

.子程序 汇编_取CRC16, 文本型, , 非查表法 翻译论坛发布的源码改写而成  作者cf2006a
.参数 数据, 字节集
.局部变量 缓存, 文本型

缓存 = 取重复文本 (8, “F”)
' 置入代码 ({ 139, 117, 8, 139, 54, 131, 198, 4, 139, 14, 131, 198, 3, 187, 255, 255, 0, 0, 70, 49, 192, 49, 210, 138, 6, 49, 195, 137, 216, 66, 131, 227, 1, 131, 251, 1, 117, 9, 209, 232, 53, 1, 160, 0, 0, 235, 2, 209, 232, 137, 195, 131, 250, 7, 118, 227, 226, 216, 201, 194, 4, 0 })'这个是返回短整数 没有转成十六进制文本
置入代码 ({ 139, 117, 8, 139, 54, 131, 198, 4, 139, 14, 131, 198, 3, 187, 255, 255, 0, 0, 70, 49, 192, 49, 210, 138, 6, 49, 195, 137, 216, 66, 131, 227, 1, 131, 251, 1, 117, 9, 209, 232, 53, 1, 160, 0, 0, 235, 2, 209, 232, 137, 195, 131, 250, 7, 118, 227, 226, 216, 137, 194, 139, 125, 252, 79, 49, 201, 177, 8, 136, 208, 36, 15, 60, 9, 119, 4, 4, 48, 235, 2, 4, 55, 136, 4, 57, 193, 234, 4, 116, 2, 226, 232, 141, 4, 57, 137, 69, 252, 201, 194, 4, 0 })
返回 (“”)
' *** 缩略程序块 ***
' mov esi, dword [ebp+0x08]
' mov esi, dword [esi]
' add esi, 0x04
' mov ecx, dword [esi]
' add esi, 0x03
' mov ebx, 0x0000FFFF
' label1:
' inc esi
' xor eax, eax
' xor edx, edx
' mov al, byte [esi]
' xor ebx, eax
' label2:
' mov eax, ebx
' inc edx
' and ebx, 0x01
' cmp ebx, 0x01
' jne label3
' shr eax, 1
' xor eax, 0x0000A001
' jmp label4
' label3:
' shr eax, 1
' label4:
' mov ebx, eax
' cmp edx, 0x07
' jbe label2
' loop label1
' mov edx, eax
' mov edi, dword [ebp-0x04]
' dec edi
' xor ecx, ecx
' mov cl, 0x08
' label5:
' mov al, dl
' and al, 0x0F
' cmp al, 0x09
' jnbe label6
' add al, 0x30
' jmp label7
' label6:
' add al, 0x37
' label7:
' mov byte [ecx+edi], al
' shr edx, 0x04
' je label8
' loop label5
' label8:
' lea eax, dword [ecx+edi]
' mov dword [ebp-0x04], eax
' leave
' retn 0x0004


点评

越是看不懂 越牛逼 越牛逼越不会用   浙江省温州市  发表于 2021-9-8 17:54

发表于 2023-10-21 21:17:05 | 显示全部楼层   广西壮族自治区桂林市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:81% (26/32)

签到天数: 2 天

发表于 2022-4-16 13:01:24 | 显示全部楼层   上海市上海市
感谢发布原创作品,精易因你更精彩!
回复 支持 反对

使用道具 举报

结帖率:81% (26/32)

签到天数: 2 天

发表于 2022-3-31 10:02:23 | 显示全部楼层   上海市上海市
感谢发布原创作品,一定好好学习,天天向上
回复 支持 反对

使用道具 举报

结帖率:96% (50/52)

签到天数: 8 天

发表于 2021-9-12 01:01:53 | 显示全部楼层   上海市上海市
很好很强悍,坚持下去哦~
回复 支持 反对

使用道具 举报

发表于 2021-9-10 21:43:00 | 显示全部楼层   山东省日照市
单片机?
stm32f107vct6,控制指令没有了,8n1格式,串口uart,我用标准modbus指令没灌出来,有招吗?我想再次利用这个板子
回复 支持 反对

使用道具 举报

签到天数: 4 天

发表于 2021-9-10 21:26:56 | 显示全部楼层   广西壮族自治区玉林市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

发表于 2021-9-9 11:36:58 | 显示全部楼层   河南省焦作市
收藏了  老兄发的汇编代码都扣到自己模块里了  /开心
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 19 天

发表于 2021-9-9 08:23:38 | 显示全部楼层   美国
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2021-9-8 20:56:03 | 显示全部楼层   广东省汕头市
建议保护EBX、ESI、EDI寄存器,不要改变这些寄存器的值,如果需要临时用到则先push 寄存器 用完后pop 寄存器 恢复.
不然程序可能运行出错,虽然易语言很少用到这些寄存器,不过其它语言调用易语言编写的dll,然后再运行到你的汇编,就会破坏它们的寄存器.
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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