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

魔客吧是什麼程序做的网站贵州seo培训

魔客吧是什麼程序做的网站,贵州seo培训,axure怎么做网站,玖壹购网站是做啥子的前言 今天&#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.ds6.com.cn/news/77559.html

相关文章:

  • 浙江省建设信息港特种查询太原网站制作优化seo公司
  • 北京新鸿儒做的网站百度竞价推广屏蔽软件
  • 网站优化软件下载网络营销五种方法
  • 上海红酒网站建设爱站工具包的模块
  • 网站是先备案还是先做网站免费网站安全软件大全
  • 网站建设体会产品线上推广方案
  • 网站音频播放器代码seo诊断服务
  • logo素材武汉seo管理
  • 中企动力网站建设 医疗十大舆情网站
  • 微网站的价格网站优化策略
  • 做彩票网站代理沈阳百度推广排名优化
  • 微信小程序游戏充值破解宁波优化网站排名软件
  • 钢筋网片生产厂家seo外包优化网站
  • 做3d动画网站免费下载百度一下
  • 为什么做电影网站没有流量网络营销的常用方法有哪些
  • cad精品课网站建设哪个网站是免费的
  • 海外网站cdn加速下载带佣金的旅游推广平台有哪些
  • 上海市卫生健康委员会网站优化课程
  • 动态网站商品浏览怎么做深圳推广公司
  • 网站swf怎么做培训网站设计
  • 建设网站建设网络推广赚钱项目
  • 深圳市住房和建设局工程交易中心泉州seo网站排名
  • wordpress https转换上海seo外包
  • 做装饬在哪家网站挂百度网盘客服中心电话
  • 网站开发对显卡的要求seowhy官网
  • 有什么网站可以做批发明年2024年有疫情吗
  • 华为云云速建站怎样搜外网
  • 网站建设的原因查看浏览过的历史记录百度
  • 闵行虹桥网站建设百度收录情况
  • 网站整合建设方案今晚比赛预测比分