计算机的显存地址是那个地址?
根据王爽的汇编语言第九章,上说向B8000H~BFFFF中写入数据即会显示出来,但我的是window7系统怎么就是显示出来呢,是不是现在intel改了啊,还是其他的什么原因,求大神解答。。。。
[解决办法]
那个B8000是文本显示方式的地址.将程序编译成COM文件,如果程序正确,应该能看到的.
或者你可以复制下面我写的代码,用记事本存成asm文件,再用nasm编译成COM再双击运行:
org 0100h;定位到COM文件起始位置.别问我为什么要这样,我也不知道.
mov ah,00h
mov al,03h
int 10h;调用显示模式设置中断
mov ax,0b800h
mov es,ax;定位到文本显存段.一定要有这句,否则下面的字符会看不到的,因为计算机在不
写段地址的情况下默认的是ds段,而我们的显存是在es段.
mov ah,61h;61h是'a'的16进制数.这句可以写成:mov ah,'a'
mov [es:08h],ah;将'a'送入显存的第8个节(对应的是屏幕第0行第4列处).注意,括号里应该是偶
数,如果是奇数,则表示字符的属性.列如,在mov [es:08h],ah后面加上:
;mov al,03h
;mov [es:09h],al
;则显示的字符是绿色的.
jmp $;此处是一个无限循环,防止程序打开后马上关掉,使得我们看不到结果.
如果你不会用nasm,说一下,我把我这编译的程序放到我的资源上,你去下载.