• 2024-09-28从汇编视角解析函数调用中的堆栈运作
    引言汇编语言是计算机硬件操作的最直接表达方式,通过汇编代码可以深入理解计算机底层的工作机制。本文将以一个简单的C语言代码为例,深入分析其对应的汇编代码中的堆栈变化,探讨计算机在执行过程中如何通过堆栈来进行函数调用、参数传递和结果返回。C语言代码与汇编代码概述我们
  • 2023-05-03玩一玩 Ubuntu 下的 VSCode 编程
    一:背景1.讲故事今天是五一的最后一天,想着长期都在Windows平台上做开发,准备今天换到Ubuntu系统上体验下,主要是想学习下AT&T风格的汇编,这里VisualStudio肯定是装不了了,还得上VSCode,刚好前几天买了一个小工控机,这里简单记录下零到一的过程吧。二:搭建一览1.VSCode
  • 2023-04-25pt_regs结构
    structpt_regs{longebx;//可执行文件路径的指针(regs.ebx中longecx;//命令行参数的指针(regs.ecx中)longedx;//环境变量的指针(regs.edx中)。longesi;longedi;longebp;longeax;intxds;int
  • 2023-02-11x86 常见调用约定(cdecl,fastcall,stdcall) & x86和ARM调用约定的栈帧分析 & ARM ATPCS(ARM-THUMB procedure call standard)
    PS:要转载请注明出处,本人版权所有。PS:这个只是基于《我自己》的理解,如果和你的原则及想法相冲突,请谅解,勿喷。前置说明  本文作为本人csdnblog的主站的备份。(BlogID
  • 2022-09-01Linux0.11 move_to_user_mode分析
    /**IRET*当使用IRET指令返回到相同保护级别的任务时,也就是当前的CS中的DPL和堆栈中的DPL相同时*IRET会从堆栈弹出代码段选择子及指令指针分别到CS与IP寄存器,*