Win知识 - 程序是怎样跑起来的——文字及图片的显示机制

简介: Win知识 - 程序是怎样跑起来的——文字及图片的显示机制

让我们一起来看一下显示器显示文字及图形的机制。如果用一句话来简单地概括该机制,那就是显示器中显示的信息一直存储在某内存中。该内存称为VRAM(Video RAM)。在程序中,只要往VRAM中写入数据,该数据就会在显示器中显示出来。实现该功能的程序,是由操作系统或BIOS提供,并借助中断来进行处理的。


在MS-DOS时代,对大部分计算机来说,VRAM都是主内存的一部分。例如PC-9801这种机型的计算机,主内存地址A0000地址以后是VRAM区域。如果用程序往VRAM内存地址中写入数据,文字及图形就可以显示出来。不过,文字和图形的颜色最多只能有16种。这是因为VRAM的内存空间太小了(图11-11(a))。


image.png

image.png


图11-11 VRAM中写入的数据被显示在显示器上


在现在的计算机中,显卡等专用硬件中一般都配置有与主内存相独立的VRAM和GPU(Graphics Processing Unit,图形处理器,也称为图形芯片)。这是因为,对经常需要描绘图形的Windows来说,数百兆的VRAM是必需的。而为了提升图形的描绘速度,有时还需要专用的图形处理器(图11-11(b))。但不管怎样,内存VRAM中存储的数据就是显示器上显示的信息,这一机制是不变的。


用软件来控制硬件听起来好像很难,但实际上只是利用输入输出指令同外围设备进行输入输出的处理而已。中断处理是根据需要来使用的选项功能,DMA则直接交给对应的外围设备即可。由此可见,对程序员来说,其实并不困难。


虽然计算机领域的新技术在不断涌现,但计算机能处理的事情,始终只是对输入的数据进行运算,并把结果输出,这一点是不会发生任何变化的。不管程序内容是什么,最终都是数据的输入输出和运算。本章介绍的开启和停止蜂鸣器的程序,就是一个很好的例子。而无论是计算机还是程序,其实都很简单。


目录
相关文章
|
4月前
动态黑窗口打印文字404页面源码
动态黑窗口打印文字404页面源码
28 2
|
6月前
|
Linux 索引
Linux中使用selenium截图的文字变为方框的解决方案
Linux中使用selenium截图的文字变为方框的解决方案
126 1
|
6月前
微信小游戏制作工具中文字设置的粗体不显示,怎么解决?
微信小游戏制作工具中文字设置的粗体不显示,怎么解决?
189 1
|
Python
pygame包打开的图片要默认放在什么地方?
pygame包打开的图片要默认放在什么地方?
462 0
pygame包打开的图片要默认放在什么地方?
关于 qml开发中使用Image元素切换图片闪黑屏 的解决方法
关于 qml开发中使用Image元素切换图片闪黑屏 的解决方法
关于 qml开发中使用Image元素切换图片闪黑屏 的解决方法
关于QtForMac开发 ui界面设置最小宽度和高度无效 的解决方法
关于QtForMac开发 ui界面设置最小宽度和高度无效 的解决方法
|
前端开发 小程序
小程序canvas使用网络图片真机不显示解决方案----可直接使用案例测试
小程序canvas使用网络图片真机不显示解决方案----可直接使用案例测试
738 0
|
小程序 前端开发 PHP
小程序怎么做查看更多的显示和隐藏
小程序怎么做查看更多的显示和隐藏
255 0
Word文档中插入的图片显示不全、嵌入式图片显示不全解决方法,仅设置图片为单倍行距方法
Word文档中插入的图片显示不全、嵌入式图片显示不全解决方法,仅设置图片为单倍行距方法
874 0
Word文档中插入的图片显示不全、嵌入式图片显示不全解决方法,仅设置图片为单倍行距方法
还在使用Window原始的CMD界面?教你一招进行界面完美优化(下)
还在使用Window原始的CMD界面?教你一招进行界面完美优化
133 0
还在使用Window原始的CMD界面?教你一招进行界面完美优化(下)