学破解论坛

 ★找回密码★
 ★免费注册★

QQ登录

绑定QQ,免密登录

查看: 300|回复: 1

求解,关于负数补码、原码之间的转换问题

[复制链接] |关注本帖

  离线 

签到天数: 34

该用户今日未签到




30HB
00EE3E50 55                   push        ebp  
00EE3E51 8B EC                mov         ebp,esp  
00EE3E53 81 EC D0 00 00 00    sub         esp,0D0h  
00EE3E59 53                   push        ebx  
00EE3E5A 56                   push        esi  
00EE3E5B 57                   push        edi  
00EE3E5C 8D BD 30 FF FF FF    lea         edi,[ebp+FFFFFF30h]  
00EE3E62 B9 34 00 00 00       mov         ecx,34h  
00EE3E67 B8 CC CC CC CC       mov         eax,0CCCCCCCCh  
00EE3E6C F3 AB                rep stos    dword ptr es:[edi]  



各位大神,是这样的,我main函数通过 sub         esp,0D0h 指令开辟了0D0h (208)个字节,然后当我看到lea         edi,[ebp+FFFFFF30h]指令中
的 FFFFFF30h 这样的负数时,想自己动手转换为0D0h。
但是我用 原码 = 补码取反 +1 算,得到的结果和 编译器算的不一样啊,明显我错了,但是我不清楚错在哪里,求助们救救孩子吧!!

学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!

  离线 

签到天数: 34

该用户今日未签到

回复

使用道具 举报




负数在计算机中使用补码的形式存储的,正数的原码、反码、补码都是一样的这是规定。
F         F           F           F        F        F       3       0   
二进制表示形式
1111  1111    1111      1111  1111  1111  0011   0000       补码除符号位,其余取反
1000   0000    0000     0000   0000  0000 1100   1111        加一
1000   0000    0000     0000   0000  0000 1101   0000   
  1101   0000   对应的十六进制就是     D0(十进制就是208),注意符号位,所以就是 -208
学破解论坛关注PC软件安全与移动软件安全领域。学习破解方法,使软件开发者能够更好的弥补软件缺陷,修复软件漏洞,提升软件安全,将损失降为最低。大量的软件加密解密教程,使软件开发者与代码逆向分析爱好者受益颇多,因此被连连称赞。保护开发者的利益与版权是我们持之以恒的动力!学破解论坛将竭尽全力为软件安全领域献出微薄之力!
您需要登录后才可以回帖 登录 | 立即注册

获得更多积分,阅读本版加分规则

免责声明

本站中所有被研究的素材与信息全部来源于互联网,版权争议与本站无关。本站所发布的任何软件的逆向分析文章、逆向分析视频、补丁、注册机和注册信息,仅限用于学习和研究软件安全的目的。全体用户必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。学习逆向分析技术是为了更好的完善软件可能存在的不安全因素,提升软件安全意识。所以您如果喜欢某程序,请购买注册正版软件,获得正版优质服务!不得将上述内容私自传播、销售或者其他任何非法用途!否则,一切后果请用户自负!

站长邮箱:SharkHeng#iCloud.com


站长微信号:SharkHeng|联系Email|鲨鱼逆向|无图版|手机版|小黑屋|FAQ|VIP破解教程|学破解论坛 ( 京公网安备 11011502002737号 | 京ICP备14042738号 )

GMT+8, 2021-1-28 04:19

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