📄 内存.asm
字号:
.386
.model flat, stdcall
GetMemInfo PROTO
option casemap :none
include \masm32\include\windows.inc
include \masm32\include\user32.inc
includelib \masm32\lib\user32.lib
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
.data
MemInfo db "内存信息",0
szInfo db '物理内存总数 %lu 字节',0dh,0ah ;0dh0ah是回车换行
db '空闲物理内存 %lu 字节',0dh,0ah
db '虚拟内存总数 %lu 字节',0dh,0ah
db '空闲虚拟内存 %lu 字节',0dh,0ah
db '已用内存比例 %d%%',0dh,0ah
db '----------------',0dh,0ah
db '用户地址空间总数 %lu 字节',0dh,0ah
db '用户可用地址空间 %lu 字节',0dh,0ah,0
.code
start:
invoke GetMemInfo
invoke ExitProcess,NULL
GetMemInfo proc
local @stMemInfo:MEMORYSTATUS ;物理与虚拟内存信息结构
local @szBuffer[1024]:byte
mov @stMemInfo.dwLength,sizeof @stMemInfo
invoke GlobalMemoryStatus,addr @stMemInfo
invoke wsprintf,addr @szBuffer,addr szInfo,\
@stMemInfo.dwTotalPhys,@stMemInfo.dwAvailPhys,\
@stMemInfo.dwTotalPageFile,@stMemInfo.dwAvailPageFile,\
@stMemInfo.dwMemoryLoad,\
@stMemInfo.dwTotalVirtual,@stMemInfo.dwAvailVirtual
invoke MessageBox,0,addr @szBuffer,addr MemInfo,MB_OK
ret
GetMemInfo endp
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -