ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OpenEuler中C语言中的函数调用测试(选做)

2021-12-05 22:33:24  阅读:202  来源: 互联网

标签:汇编 选做 m32 函数调用 指令 64 OpenEuler


OpenEuler中C语言中的函数调用测试(选做)

在X86_64架构下实践2.4中的内容

使用gcc -m32 4.c -o 4指令在64位机器上产生32位汇编

通过GDB查看寄存器的内容,把教材中的图填入具体的值

  • 进入gdb调试器:gdb 4
  • 在main函数处设断点: b main
  • 运行:r
  • 查看各寄存器地址与值: i r
  • 获取汇编代码:disassemble

call指令将sub函数地址入栈以备调用,调用之前u、v被压入栈,所以u和v在栈中的地址为0x56556239、0x5655623c

longjump

  • 使用gcc -m32 4.c -o 4指令在64位机器上产生32位汇编

  • 按照上述方法查看汇编代码

标签:汇编,选做,m32,函数调用,指令,64,OpenEuler
来源: https://www.cnblogs.com/ptmmgmgwtam/p/15647414.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有