标题一个实用的内存测试程序
栏目软件操作与技巧
作者西南师大 沈仲军
发布1993-07-09
设计思想:BIOS中断为我们提供了充分利用IBM-PC系统各种资源的手段,利用BIOS的12号中断(INT12T)取得基本内存,再减去现占用的内存,即得到剩余内存。调用INT12H,无入口参数,出口参数为AX,AX的内容为全部存贮容量(以KB为单位)。
程序用宏汇编语言编写,取名为TESTMEMO.ASM,程序编译链接运行步骤如下:
C>MASM TESTMEMO;
C>LINK TESTMEMO;
C>EXE2BIN TESTMEMO.EXETE STMEMO.COM
C>TESTMEMO
源程序清单如下:
code segment
assume cs:code,ds:code
org 100h
memory proc far begin:
int12h
mov dx,40h
mul dx
mov dx,cs
sub ax,dx
push ax
mov dx,10h
mul dx
mov bx,offset mess+22
mov cx,6
mov si,0Ah
loopl:divsi
or dl,30h
mov [bx],dl
dec bx
xor dx,dx
loop loopl
xor ax,ax
mov es,ax
mov dx,offset mess
mov ah,9
int 21h
pop ax
cmp ax,es:[300h]
je stepl
mov es:[300h],ax
mov al,1
jmp short step2
stepl:
mov al,0
step2:
mov ah,4ch
int 21h
mess db'available memory
000000 bytes free',0Dh,
0Ah
db'$'
memory endp
code ends
end begin