关于在屏幕上显示字符不稳定的有关问题
关于在屏幕上显示字符不稳定的问题
这是我写的代码,想实现的功能是:在窗口起始位置显示 'welcome to masm!',红底绿字
但是编译完运行的效果不理想,有时候会出现 'welcome to masm!'(如图)但是几率太小:
大多数时候是这样的:
请大家帮忙分析下为什么会出现这种情况
------解决思路----------------------
你这什么 os,win8 吗?直写视频缓冲区的,尽量到纯 dos 下吧,比如虚拟机的 dos 什么的;windows 的可能存在兼容性问题。
assume cs:codesg
datasg segment
db 'welcome to masm!'
datasg ends
codesg segment
start:
mov ax,0b800h
mov es,ax
mov ax,datasg
mov ds,ax
mov bx,0
mov si,0
mov cx,16
s:
mov al,[bx]
mov es:[si],al
mov word ptr es:[si+1],42h
inc bx
add si,2
loop s
s0:
loop s0
mov ax,4c00h
int 21h
codesg ends
end start
这是我写的代码,想实现的功能是:在窗口起始位置显示 'welcome to masm!',红底绿字
但是编译完运行的效果不理想,有时候会出现 'welcome to masm!'(如图)但是几率太小:
大多数时候是这样的:
请大家帮忙分析下为什么会出现这种情况
------解决思路----------------------
你这什么 os,win8 吗?直写视频缓冲区的,尽量到纯 dos 下吧,比如虚拟机的 dos 什么的;windows 的可能存在兼容性问题。