Como ver a memória ocupada pela matriz inicializada vs matriz não inicializada
Atualmente, estou aprendendo a programação de montagem seguindo a "Assembly Language for x86 Processor" de Kip Irvine. Na seção 3.4.12, o autor declara:
o.DATA?
diretiva declara dados não inicializados. Ao definir um grande bloco de dados não inicializados, o.DATA?
A diretiva reduz o tamanho de um programa compilado. Por exemplo, o seguinte código é declarado com eficiência:
.data
smallArray DWORD 10 DUP(0) ; 40 bytes
.data?
bigArray DWORD 5000 DUP(?) ; 20,000 bytes, not initialized
O código a seguir, por outro lado, produz um programa compilado 20.000 bytes maior:
.data
smallArray DWORD 10 DUP(0) ; 40 bytes
bigArray DWORD 5000 DUP(?) ; 20,000 bytes
Desejo ver o espaço de memória de cada versão do código após a compilação do programa, para que eu possa ver o efeito de.data?
para mim, mas não tenho certeza de como isso pode ser feito.