Assembly OllyDbg中的左下窗格显示什么?

Assembly OllyDbg中的左下窗格显示什么?,assembly,x86,nasm,Assembly,X86,Nasm,我使用NASM汇编了以下代码: global _start section .data var1 DD 0xA1A2A3A4 ; 4 bytes var2 DD 0xB1B2B3B4 ; 4 bytes section .bss var3: RESD 1 ; 4 bytes section .text _start: mov DWORD [var3], 0xC1C2C3C4 我在OllyDbg中打开了文件

我使用NASM汇编了以下代码:

global _start

section .data
    var1 DD 0xA1A2A3A4        ; 4 bytes
    var2 DD 0xB1B2B3B4        ; 4 bytes
section .bss
    var3: RESD 1              ; 4 bytes

section .text
_start:
    mov DWORD [var3], 0xC1C2C3C4
我在OllyDbg中打开了文件,并让它执行指令:
mov DWORD[var3],0xC1C2C3C4

这是执行此指令后OllyDbg中左下窗格的状态:

我想知道的是左下窗格显示了什么?它是否显示流程的数据部分和bss部分


如果是这样,那么进程的数据部分的大小是否取决于在数据部分中分配了多少字节(在本例中为8字节)?

下部分显示
内存
,因此您可以要求它显示您想要的任何部分。默认情况下,它关注数据部分。您可以通过在Olly中打开
内存映射
窗口并检查地址来检查这一点


但是,正如我所说的,您可以使用“Go to”命令并要求它显示任何映射的零件。至于最小大小,我想说,默认的最小值可能是
1000h
,即使您的最小值较少。

NASM中
部分声明的变量是否加载在进程的数据部分,而不是进程的bss部分?我的行为与您的稍有不同,因为我的情况是var3位于.bss节中,不在.data中。您的内存映射是什么样子的?数据部分从地址0x01182000开始,大小为0x1000字节(因此
var3
是数据部分的一部分)。好的,如果我编译您的代码,我将按照您的指定在.bss部分获得var3。只有我把它评论出来,我才能得到和你在《奥利》中展示的一样的结果。我不确定这是不是最好的方法。你不能再提供更多了。至少包括您如何构建应用程序(任何非默认开关)?您使用什么工具获取exe?明哥的身份证?