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

织梦做网站要多长时间金华企业网站建设公司

织梦做网站要多长时间,金华企业网站建设公司,环球设计官网网站,西安好的皮肤管理做团购网站前言 今天&#xff0c;通过一个有趣的案例&#xff0c;从反编译的角度看一下C语言中函数参数是如何传递的。 创建main.c文件&#xff0c;将下面实验代码拷贝到main.c文件中。 # main.c #include <stdio.h>int test(int a, int b, int c, int d, int e, int f, int g, …

前言

今天,通过一个有趣的案例,从反编译的角度看一下C语言中函数参数是如何传递的。

创建main.c文件,将下面实验代码拷贝到main.c文件中。

# main.c
#include <stdio.h>int test(int a, int b, int c, int d, int e, int f, int g, int h, int i)
{return 0;
}int main(int argc, char *argv[])
{test(0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9);return 0;
}

简单解释一些上述代码:

  • 声明一个名为test且需要七个参数的函数,函数体内并未做任何事情。
  • main函数中调用test函数,并将十六进制的1-9作为参数传递到test函数中。

32位程序

使用gcc -m32 main.c -o mainmain.c编译为32位程序,使用file命令查看结果。
在这里插入图片描述

使用gdb看一下反编译结果,使用gdb main命令加载程序。程序加载完毕后,使用命令disassemble main对程序进行反编译
在这里插入图片描述

着重看一下上图红框中的内容,注意以下两点即可:

  • 函数参数的传递顺序是从右向左依次传递,即先传递0x9,再传递0x8,依次类推。
  • 全部使用的push指令,将参数值压到栈中,最后调用test函数

64位程序

使用gcc main.c -o mainmain.c编译为32位程序,使用file命令查看结果。
在这里插入图片描述

使用gdb看一下反编译结果,使用gdb main命令加载程序。程序加载完毕后,使用命令disassemble main对程序进行反编译
在这里插入图片描述

着重看一下上图红框中的内容,注意以下两点即可:

  • 函数参数的顺序与32位程序相同,依旧是从右向左依次传递,即先传递0x9,再传递0x8,依次类推。
  • 不同的是传递给test函数的前六个参数(从左向右的顺序,即0x10x2、……、0x6)分别放入到寄存器(rdirsirdxrcxr8r9)中,超过6个参数之后的参数放入到栈中。

本例中:0x1放入edi寄存器、0x2放入esi寄存器、0x3放入edx寄存器、0x4放入ecx寄存器、0x5放入r8d寄存器、0x6放入r9d寄存器。

注:edi为32位寄存器,rdi为64位寄存器,因为传递的参数不需要占据64bit,因此编译程序时自动进行了优化。

无情的广告时间

哈哈哈哈,又到了大家喜欢的广告时间了,喜欢的话给个关注呗,公众号:编码魔坊,谢谢您的关注!!!

http://www.yayakq.cn/news/985101/

相关文章:

  • 长春建站模板厂家面包店网站建设论文
  • 网站预订功能怎么做抖音代运营话术模板
  • html php网站开发报告怎么网上接网站开发单自己做
  • 网站从设计到制作个人做的好的淘宝客网站
  • 标准化建设考评网站网站建设设计企业
  • 做微网站需要域名吗中国商机网官网
  • 企业服务公司经营范围wordpress优化打开速度插件
  • 电子商务网站建设试题云南最大的网络科技公司
  • 购物网站商城策划太原全网推广
  • 做推广效果哪个网站好什么是平台内部营销
  • 湖北工程公司建设公司网站找片子有什么好的关键词推荐
  • 不干净的软件下载网站wordpress默认首页是什么
  • 松滋住房和城乡建设局网站外卖app开发需要多少钱
  • 张家港网站关键词优化化妆品网页设计图片
  • 程序代码优化网站wordpress如何关闭网站
  • 网站文章页301重定向怎么做母版页和窗体做网站例子
  • 湖南网站建设网图片制作的标准是什么
  • 开发技术网站开发技术设计网页的一般步骤
  • 华强北 网站建设wordpress指定侧边栏
  • 温州网站建设小程序网站建设页面生成
  • 深圳企业网站建设专业网站维护是什么意思
  • 怎么更改网站栏目id如何自己建设淘宝网站
  • 做公司网站用哪个公司比较好wordpress做活动报名
  • wordpress怎么设置标签分类系统优化助手
  • 深圳网站建设培训班网站建设题库
  • 本溪做网站的公司门户网页版登录入口
  • 什么网站做h5化妆品网站建设案例
  • 温州百度搜索网站排名企业管理培训课程网课免费
  • 网站栏目建设评活动静安集团网站建设
  • 邢台网站优化定制中国机械网招聘信息