首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    x86汇编指令详解_x86汇编指令详解

    )中的RC两个位决定 RC 舍入控制 00 四舍五入 01 向负无限大舍入 10 向正无限大舍入 11 向零舍去 ---- Reference: x86

    1.9K20编辑于 2022-09-30
  • 来自专栏Android相关

    X86 Assemble指令--ptr

    在Assemble中通常会看到WORD ptr或者DWORD ptr或者BYTE ptr等关键字,这些关键字主要用来标识指令操作数的大小(或者说长度) WORD ptr:标识该操作数为1个字 DWORD ptr:标识该操作数为2个字 BYTE ptr:标识该操作数为1个字节

    95820发布于 2018-10-24
  • 来自专栏韩曙亮的移动开发专栏

    【Android 逆向】x86 汇编 ( 使用 IDA 解析 x86 架构的动态库文件 | x86 汇编语言分析 )

    文章目录 一、x86 汇编语言分析 一、x86 汇编语言分析 ---- 在上一篇博客 【Android 逆向】x86 汇编 ( 使用 IDA 解析 x86 架构的动态库文件 | 使用 IDA 打开动态库文件 IDA 反编译 Android SDK 中的 D:\001_Develop\001_SDK\Sdk\build-tools\26.0.3\renderscript\lib\intermediates\x86 \libc.so 文件 , 并查找其中的 fork 方法 ; 本篇博客中分析该 libc.so 动态库中的 fork 方法的汇编代码 ; 分析 fork 方法的 x86 汇编代码 : 汇编代码内容 :

    1.9K30编辑于 2023-03-29
  • 来自专栏Android相关

    X86 Assemble指令--offset

    而使用dw、dd来定义的话,由于X86是Little Endian排序,所以在内存中的字符的排序会错乱 dup伪指令定义了在编译时,会将dup定义的数据对连续长度的内存空间进行填充。

    1.3K10发布于 2018-10-24
  • 来自专栏Android相关

    X86 Assemble指令--LEA

    LEA指令用来计算第二个操作数(源操作数)的有效地址,并且将该地址保存到第一个操作数(目的操作数)中。源操作数是CPU寻址模式中的内存寻址模式(支持偏移量)。而目标操作数是一个通用寄存器(GPR,general-purpose register)。这条指令被地址大小和操作数大小属性所影响,如上表所示。指令的操作数大小决定于使用的寄存器,而地址大小决定于代码段。

    2.4K30发布于 2018-10-24
  • Windows (x86, 32-bit)

    如果你是想在 Windows 32位系统 (x86) 下使用 MPU6050 进行角度读取和计算,通常有以下几种选择:1. Windows 下连接 MPU6050 硬件的方案A. Windows (x86) 下的软件方案示例Python 方案Python 不能直接通过 I2C 与 MPU6050 通信(Windows 通常无 I2C 总线),但可以:通过串口读取 Arduino

    21810编辑于 2025-07-23
  • 来自专栏毛利学Python

    VMware搭建Android x86

    原文:https://maoli.blog.csdn.net/article/details/102604277

    1.2K20发布于 2020-02-27
  • 来自专栏Postgresql源码分析

    X86如何实现函数调用?

    相关: 《Postgresql中的pg_memory_barrier_impl和C的volatile》 《X86函数调用模型分析》 函数A调用函数B,B执行完毕后继续执行函数A,如何实现这样的调用 ---- 下面分析x86的具体实现。 (资料汇编) 速查: 对于栈帧来说:栈帧顶部用bp指针(高地址),栈帧底部(低地址)用sp指针。 | <----- esp |----------------------| low address 三、x86函数调用 当需要调用另一个函数时 x86将参数压入堆栈来传递参数。请注意,当我们将参数压入堆栈时,esp 会递减。参数以相反的顺序压入堆栈。(上面是高地址) step2:旧的eip入栈 旧的eip(rip)压入堆栈。

    3.5K20编辑于 2022-11-30
  • 来自专栏Android相关

    X86与Arm的差异

    100条指令 ARM指令只能处理寄存器内的数据,内存数据只能通过load/store访问存储器,将内存的数据读取到寄存器,经过指令处理后,再将数据存储到内存中 例如将内存0x70009中的数值加1,X86 X86 基于CISC指令集 指令多:约几百条指令,指令集庞大,功能丰富,一条指令可能可以替代多条RISC指令 允许进行复杂的内存访问操作 立即寻址 直接寻址 基址变址寻址 寄存器间接寻址 寄存器寻址 寄存器相对寻址 拥有的寄存器数量比RISC少很多 CISC是变长指令集,指令执行周期不固定 X86运行模式 实模式(80286之前) 保护模式(80386之后,包括奔腾等CPU) Intel的x86/x64系列CPU

    2K10发布于 2018-10-24
  • 来自专栏逆向技术

    X86 下的SSDT HOOK

    x64下可以设置回调来进行过滤我们想要的功能.当然如果你简单的过一下PatchGuard也可以设置SSDT HOOK.

    1.4K20发布于 2019-07-23
  • 来自专栏python

    x86与arm架构区别

    简而言之:X86主要追求性能,但会导致功耗大,不节能,而ARM则是追求节能,低功耗,但和X86相比性能较差。 三、架构特点  x86处理器采用复杂的指令集,具有多级缓存和分支预测等高级功能,但是这些功能会导致功耗高和发热量大。ARM处理器采用精简指令集,具有更小的尺寸和更低的功耗,但不像x86处理器那样强大。 x86处理器则适用于高性能计算机、服务器、台式机和游戏等场景。六、功耗 X86电脑因考虑要适应各种应用的需求,其发展思路是:性能+速度。 20多年来x86电脑的速度从原来8088的几M发展到现在随便就是几G,而且还是几核,其速度和性能已经提升了千、万倍,技术进步使x86电脑成为大众生活中不可缺少的一部分。 根据Ampere给出的数据,其CPU的性能超越传统x86处理器3倍,性能功耗比领先近4倍。与 x86 服务器CPU相比,Ampere Altra 系列可用50%的能耗,提供200%的性能。

    5.5K20编辑于 2024-06-18
  • 来自专栏大数据那些事

    记录x86调试命令总结

    首先,liunx系统下得有nasm命令,没有可以安装,接下来把写好的.asm汇编代码编译成二进制文件。

    52120发布于 2021-09-22
  • 来自专栏Postgresql源码分析

    X86函数调用模型分析

    相关: 《Postgresql中的pg_memory_barrier_impl和C的volatile》 《X86函数调用模型分析》 函数A调用函数B,B执行完毕后继续执行函数A,如何实现这样的调用 ---- 下面分析x86的具体实现。 (资料汇编) 速查: 对于栈帧来说:栈帧顶部用bp指针(高地址),栈帧底部(低地址)用sp指针。 | <----- esp |----------------------| low address 三、x86函数调用 当需要调用另一个函数时 x86将参数压入堆栈来传递参数。请注意,当我们将参数压入堆栈时,esp 会递减。参数以相反的顺序压入堆栈。

    1.4K20编辑于 2022-08-03
  • 来自专栏Android相关

    X86 Assemble指令--MOVS指令簇

    该指令簇包括: MOVS mem16,mem16:显式指定源操作数与目的操作数 MOVSB:每次移动一个字节 MOVSW:每次移动一个字 MOVSD:每次移动两个字

    2K20发布于 2018-10-24
  • x86与ARM架构的区别

    一、追求目标与应用领域x86架构x86架构主要追求高性能。它通过复杂的指令集和多核处理能力,实现高性能计算和数据处理。然而,这也导致了较高的功耗。 因此,x86架构主要应用于PC机、服务器、游戏机等高性能计算领域。ARM架构与x86架构不同,ARM架构主要追求节能和低功耗。 二、指令集x86架构x86架构采用复杂指令集计算机(CISC)。这种指令集包含大量的指令,每条指令可以执行多个操作,包括内存访问、算术运算、逻辑运算等。 相反,x86架构由于追求高性能,功耗相对较高,不利于节能和延长设备续航时间。四、生态系统与兼容性x86架构x86架构拥有广泛的软件支持和生态系统。 几乎所有的主流操作系统和应用程序都可以在x86架构上运行,包括Windows、Linux和MacOS等。这使得x86架构在个人电脑和服务器领域占据主导地位。

    2.5K00编辑于 2024-10-06
  • 来自专栏JavaEdge

    x86系统cache locking的原理

    注意:以下猜测后来被证实是不对的,我又写了一篇纠错文 x86 cache locking 的猜想(续) 二、要加锁的内存同时被两个核 cache 住 这种情况,cache line 的状态为 Shared

    4.7K52发布于 2020-05-27
  • 来自专栏逆向技术

    X86保护模式入门简介

    虚拟8086模式 如果我们想在x86保护模式下.还想运行16位汇编.以及运行DOS程序.此时怎么办. 保护模式为我们提供了虚拟的功能. 虚拟一个8086模式来运行. 以上概念简单了解.

    96210发布于 2020-06-19
  • vs2019编译MNN x86

    cmake -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release ..

    15010编辑于 2025-07-17
  • 来自专栏yanlongli_艳龙

    x86 架构运行 其他架构镜像

    可以看到qemu支持的架构有 arm、mips ,qemu-mips64el的状态是 enabled

    2.7K11编辑于 2022-03-08
  • X86逆向12:内存补丁的制作

    本章我们将学习各种打补丁的方式,补丁在软件的破解过程中非常的重要,比如软件无法脱壳我们就只能通过打补丁的方式来破解程序,补丁原理就是当程序运行起来会被释放到内存并解码,然后补丁就通过地址或特征码定位到关键的位置,并替换关键的跳转。

    1.1K30编辑于 2022-12-28
领券