• Windbg学习地址和地址范围语法


    1.在MASM表达式中,你可以用poi来取任意指针指向的值

    0:000> .expr
    Current expression evaluator: MASM - Microsoft Assembler expressions
    0:000> dd eip L1
    77ce054e  fc7589cc
    0:000> dd poi(77ce054e) L1
    fc7589cc  ????????

    2.在c++表达式中,数值首先都被认为是10进制,所以你得加上0x来表示16进程,如果你需要取某个数值指向的值,你需要把数值强制转换成指针

    0:000> .expr
    Current expression evaluator: C++ - C++ source expressions
    0:000> dd *((int*)0x77ce054e) L1
    fc7589cc  ????????
    0:000> dd *((int*)77ce054e) L1
    Unexpected token 'ce054e) '

    地址范围

    1.一对地址

    0:000> dd eip eip+6
    77ce054e  fc7589cc c0330eeb
    
    dd,4字节的单位,所以被扩展为8个字节

    2.地址 + 字母L

       2.1.纯L,限制在256Mb以内,以地址为开始地址

       2.2.L?,不限大小,以地址为开始地址

       2.3.L-,以地址为结束地址

    0:000> r eip
    eip=77ce054e
    0:000> dd eip L?2
    77ce054e  fc7589cc c0330eeb
    0:000> dd eip L-2
    77ce0546  75e75d38 fc5d8917
    0:000> ? eip-8
    Evaluate expression: 2009990470 = 77ce0546




  • 相关阅读:
    dbcp2连接池获取数据库连接Connection
    ItelliJ基于Gradle创建及发布Web项目(三)
    freeswitch编译java esl
    Java程序(非web)slf4j整合Log4j2
    日期常用操作类DateUtil
    关于静态库
    Activity的setContentView的流程
    ProGuard详解
    remoteViews简介
    WMS—启动过程
  • 原文地址:https://www.cnblogs.com/hgy413/p/3693410.html
Copyright © 2020-2023  润新知