- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于C语言简单图像演示和研究与实践
基于C语言的简单的图像演示和研究与实践
(江苏盐城技师学院 计算机系 224002)
摘要:语言是近年来在国内外得到迅速推广应用的一种计算机语言。 介绍了C语言在在图像演示方面的优势及应用技术与举例
关键字:C语言;图像演示
一、引言
C语言作为程序界广泛采用的语言,诞生于70年代初,在1975年UNIX第6版公布之后,C语言的突出有点得到了广泛关注,并由美国电话电报公司(ATT)贝尔实验室于一九七八年正式发表,后由美国国家标准学会在此基础上制定了一个C 语言标准,于一九八三年发表。通常称之为ANSI C。从此之后,C语言语便以其言功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点(很多的地方都被称为中级语言),被广泛的应用于计算机应用的各个领域。C语言已经从方方面面改变了我们的计算机世界,加快了计算机应用的普及,并诞生了很多经典的程序,其中有著名的UNIX、LINUX等很多代码都是基于C语言编写的,而且它们以其效率高,安全性高而成为网络服务器以及相关安全级别较高的领域的首选。
二、技术概述
作为图像演示,方法其实有很多种,简单的说基本可以分为两大类,一类是使用编程技术来实现(比如使用C语言,BASIC语言等),另一类则是使用图像演示辅助程序所提供的功能(比如PPT,Flash等)。那么在这之中我们为何会选择C语言来作为图像演示的实现方法呢?我们来看一下如下的比较:
首先我们先来比较一下这两大类的区别,作为图像演示,图像演示辅助程序可以帮助我们快速的解决一些简单的图像演示,但是图像演示所涉及的领域极其广泛,而图像演示辅助程序却是给这种应用圈定了一个极其狭隘的范围,而且其只能应用于一些相对比较简单的演示中,如果当一些演示需要大量的变量计算和复杂的图形绘制的时候图像演示辅助软件就毫无用武之地了。而编程语言,则可以不受限制的实现任何演示功能,所有的计算机程序都是有编程语言编写的,所以只要是图像演示辅助软件可以实现的功能,编程都能够实现,并且编程可以实现及其复杂的演示应用,甚至可以将多台电脑甚至是多台超级电脑联机进行联合运算以演示及其复杂的过程需要,这是普通的演示辅助程序所无法做到的。
其次我们再比较一下编程语言之间为什么我们选择C语言,C语言作为经典的编程语言,经历了30多年的时光,已经相当的成熟,其代码可以几乎不用修改的直接在任何平台上编译使用,C语言的这种可移植行也是选它的原因之一。我们上面也提到过C语言是介于汇编和高级语言之间的,所以C语言兼顾了高级语言和汇编语言,使其在应用领域产生了很多1+12的效果。
同时图像演示中的图像绘制也是很耗费资源的,用C语言编写图形和动画的比例非常高。比如在计算机游戏中(也可以算是依据现实及想象相结合后的一种演示)。在图像处理中常使用 C 语言图形函数库来进入图形模式和绘制各类图形 ,为了提高代码的效率 ,直接通过和硬件打交道来实现 ,所有图形绘制必须在图形模式下进行 ,BIOS视频服务中断 10H提供了初始化视频模式的方法 ,其功能号为 00H 即AH输入 ,通过调用中断函数 INT86 ( ) 来触发 BIOS视频中断 ,调用显示模式的函数 ,将屏幕设置为图形模式。
所以综观各种因素之下,我们可以发现在图像演示方面的优势。
三、利用C语言实现图像演示的实现方法
图像演示大体可分为两大块,一为数据计算,这个做为强大功能的C语言,自然是很简单即可实现的,另一块则为演示动画的显示层的制作,接下来我们重点讲一下C语言制作演示动画的技术。
C语言绘制动画的技术主要可分为四种。
第一种为重画技术。所谓重画技术,就是在屏幕上绘制出图像后将其擦除,并重新画下的一个画面。重画技术又可分为直接重画、双缓冲、页替换和多缓冲。直接重画就是不断直接重画屏幕,可分为全屏重画和局部重画,全屏重画即整个屏幕绘制完成后停留到需要下一画面时将其清屏,然后重新绘制整个屏幕,但是作为演示动画,往往里面并不是所有的图像都是一直改变的,所以只对要动的区域进行重画,这就是局部重画。所以在使用中我们很少使用全屏重画,更多的使用的是局部重画。C语言图形函数库为我们提供了用于保存和重画屏幕区域的函数 getimage ( )和putimage ( ) ,提供了内存分配函数 malloc ( )或farmalloc ( )来申请内存空间。双缓冲技术则是在以上的基础上进行的一种发挥,也就是将下一个页面所需的图像提前画好,并保存,当需要调用下一画面时直接有保存的图像替换屏幕中需要替换的内容,并在后台进行下一画面的绘制。页替换和多缓冲也是在之前的基础上进行的扩展。
第二种为异或技术。在逻辑运算中,当A和B进行异或运算时,如果A与B 是相
文档评论(0)