本帖最后由 jackz007 于 2022-3-18 13:02 编辑
王爽误人子弟,不要随便往内存低地址写东西进去,因为那里属于操作系统的地盘,搞不好,会导致死机。要养成好习惯,如果需要内存,就在自己的代码中开辟,不管使用什么操作系统,无论使用什么编程语言,永远都不能侵占属于别人的存储空间,哪怕是一个字节!这是不可逾越的原则和底线。assume cs:code , ds:data
data segment para public 'DATA'
msga db 'welcome to masm!'
msgb equ $
msgc db 200h dup(00)
data ends
stack segment para stack
db 800h dup(00)
stack ends
code segment para public 'CODE'
main proc far
mov ax,DATA
mov ds,ax
mov es,ax
mov si,offset msga
mov di,offset msgc
mov cx, msgb - offset msga
push cx
cld
rep movsb
mov ax,0b800h
mov es,ax
mov di,12*160+2*36
mov si,offset msgc
pop cx
do_0: lodsb
stosb
mov al,03
stosb
loop do_0
xor ax,ax
int 16h
mov ax,04c00h
int 21h
main endp
code ends
end main
|