当前位置: 首页 > news >正文

松岗做网站小程序开发软件

松岗做网站,小程序开发软件,手机网站按那个尺寸做,金融网站建设报价方案上面的函数search没有返回值,因为a不等于1,但是输出的时候会输出6.这恰巧是x的值,如果我们希望a不等于1时返回x,那么这种结果反而是正确的.有时候这种错误的代码可能产生正确的结果反而会加大debug难度 int search(int n) { 00007FF66DB723E0 mov dword ptr [rsp8],e…

在这里插入图片描述

上面的函数search没有返回值,因为a不等于1,但是输出的时候会输出6.这恰巧是x的值,如果我们希望a不等于1时返回x,那么这种结果反而是正确的.有时候这种错误的代码可能产生正确的结果反而会加大debug难度

int search(int n)
{
00007FF66DB723E0  mov         dword ptr [rsp+8],ecx  
00007FF66DB723E4  sub         rsp,18h  int x = 6;
00007FF66DB723E8  mov         dword ptr [x],6  int a = 0;
00007FF66DB723F0  mov         dword ptr [rsp],0  a = x;
00007FF66DB723F7  mov         eax,dword ptr [x]  
00007FF66DB723FB  mov         dword ptr [rsp],eax  if (a == 1)
00007FF66DB723FE  cmp         dword ptr [rsp],1  
00007FF66DB72402  jne         search+26h (07FF66DB72406h)  return 0;	
00007FF66DB72404  xor         eax,eax  
}
00007FF66DB72406  add         rsp,18h  
00007FF66DB7240A  ret  
--- 无源文件 -----------------------------------------------------------------------
00007FF66DB7240B  int         3  
00007FF66DB7240C  int         3  
00007FF66DB7240D  int         3  
00007FF66DB7240E  int         3  
00007FF66DB7240F  int         3  
--- D:\code\test\源.cpp ---------------------------------------------------------int main()
{	
00007FF66DB72410  sub         rsp,38h  int ret = search(0);
00007FF66DB72414  xor         ecx,ecx  
00007FF66DB72416  call        search (07FF66DB723E0h)  
00007FF66DB7241B  mov         dword ptr [ret],eax  

上面是它的反汇编代码,我们可以看到

	a = x;
00007FF66DB723F7  mov         eax,dword ptr [x]  
00007FF66DB723FB  mov         dword ptr [rsp],eax    

在a=x;这句话,它把x放到寄出去eax,然后再把寄出去eax放到a.
这本没有问题,
但是

	int ret = search(0);
00007FF66DB72414  xor         ecx,ecx  
00007FF66DB72416  call        search (07FF66DB723E0h)  
00007FF66DB7241B  mov         dword ptr [ret],eax  

上面代码的意思是先调用search函数,然后把eax寄存器的值赋予ret.在汇编中,它会约定好返回值存在eax寄存器
但是如果你没有返回值对eax寄存器的值进行更新,那么他就会得到之前存在eax寄存器的值

总结:汇编总是认为你有返回值存在某个寄存器上,这些寄存器并不是返回值独享的,可能被之前操作使用,有可能没被用过,但是无论如此,寄存器从二进制的角度来看总是有值的

http://www.hkea.cn/news/450362/

相关文章:

  • 怎么用dw做网站app开发网站
  • 昆山做网站的公司有哪些seo整站优化推广
  • 网站建设谈单情景对话青岛seo百科
  • 网站做自适应好不好网页分析报告案例
  • 大连手机自适应网站建设公司seo诊断站长
  • 有哪些好的网站十大电商代运营公司
  • 个人网页设计欣赏网站整站优化快速排名
  • 多少钱立案seo 公司
  • 医学类的网站做Google百度怎么优化排名
  • 手机网站怎样做枸橼酸西地那非片的功效与作用
  • 邯郸做wap网站的公司六六seo基础运营第三讲
  • 六安市建设银行网站seo编辑的工作内容
  • seo外包平台福州百度快照优化
  • 橙子建站广告怎么投放竞价网络推广
  • 中国公司查询网站网络公司起名
  • wordpress邮箱内容更改一键关键词优化
  • 楼市最新消息2022年房价走势seo网络推广经理
  • wordpress免费中文企业主题seo权重优化软件
  • 周口网站建设哪家好济南专业seo推广公司
  • 济南网站忧化怎么把抖音关键词做上去
  • 网站建设与维护的题目网站点击软件排名
  • 网站收录服务企业网络的组网方案
  • nba排名灰色词seo排名
  • 如何建自己的个人网站深圳市seo上词多少钱
  • 迎访问中国建设银行网站_永久免费的电销外呼系统
  • 类似AG网站建设网络营销的十大特点
  • 河北盘古做的网站用的什么服务器品牌策划与推广
  • 做网站开发的是不是程序员品牌营销与推广
  • 安卓android软件seo搜索引擎优化方式
  • 网站设计培训课程引流推广平台