首页 教育论文中心 论文分类 论文搜索 论文发表 汇款确认 会员专区 在线购卡 服务帮助 联系我们 网站地图
当前位置:教育论文中心首页--计算机小学计算机课教学论文--图形窗口的滚动
推荐论文
·如何撰写调查报告
·暑假社会实践报告--走进
·暑假社会实践报告--走进
·暑期社会实践--企业管理
·大学生寒假实习报告范文-
·民工子女生活现状的大学生
·浙江大学生暑期社会实践报

·师范大学大学生暑期教学社
·大学生暑期农村教育实践报
·大学生暑期“三下乡”社会
科目列表
市场营销 管理理论 人力资源
电子商务 社会实践 先进教育
伦理道德 艺术理论 环境保护
农村研究 交通相关 烟草论文
电子电气 财务分析 融资决策
电影艺术 国学论文 材料工程
语文论文 数学论文 英语论文
政治论文 物理论文 化学论文
生物论文 美术论文 历史论文
地理论文 信息技术 班主任
音乐论文 体育论文 劳技论文
自然论文 德育管理 农村教育
素质教育 三个代表 旅游管理
国际贸易 哲学论文 工商管理
证券金融 社会学 审计论文
会计论文 建筑论文 电力论文
水利论文 园林景观 农林学
中医学 西医学 心理学
公安论文 法学法律 思想汇报
法律文书 总结报告 演讲稿
物业管理 经济学 论文指导
计算机 护理论文 社会调查
军事论文 化工论文 财政税收
保险论文 物流论文 语言教育
教育教学 给水排水 暖通论文
结构论文 综合类别  

 
图形窗口的滚动

在设计应用程序,常会遇到图形屏幕滚动问题。文本方式下,可直接调用bios中断功能6和7,但在图形方式下,使用该方法,图形有跳动现象,还不容易控制随意某个区域的小学计算机课教学论文移动。这里介绍一种直接操作屏幕缓冲区以实现图形方式下任一窗口滚动的小学计算机课教学论文方法。
以常用的图形显示卡ega/vga为例说明该方法,屏幕显示内容是屏幕缓冲区(vram)的直接映射,要使屏幕某一区域滚动只要对其对应的vram进行操作,搬动vram的值就可达到目的。
ega/vga在非cga兼容方式下(方式dh以上),屏幕对应内存vram是线性的,即vram从(a000h:0000h)开始对应屏幕以点(0,0)开始的从左到右的每一行,要使屏幕上移一行,只须把第i+1行对应的内存数据搬到第i行对应的内存里(i重新0到屏幕最大行数)即可实现。如要实现下滚,方法与上类似,只须改变搬移方向即可。这一方法的好处在于能实现任一窗口(x1, y1,x2, y2)内的图形滚动,而窗口外的部分则不动。在实现窗口滚动时,我们应完成三步,(1) 计算该窗口第一个点对应的内存地址。(2) 计算窗口每一行有多少个字节,决定每次移动的字节数。(3) 计算窗口一共有多少行,决定移动的次数。
下面以工作在方式eh(640*200)下来说明,方式dh下,屏幕共有200行,每行共占80个字节,每个字节表示8个像素。窗口(x1,x2,y1,y2)对应的内存段首地址为a000h,偏移量为ofs=y1*80+(x1 div 8)。共有(y2-y1+1)行。每行占字节数为[(x2-x1+1) div 8]。在选取窗口时应注意列座标的选取,因为内存是以字节为单位安排数据的,所以窗口内一行的像素应为8的倍数,窗口首位点的列座标x1也应为8的倍数。
应当说明的是ega的视屏缓冲区的结构。它的vram被分为并行的4页,每页64kb,称为4个页面,分别表示红,蓝,绿,加亮。共用一个地址(a000h:0000h),所以屏幕上一个点其实是由vram的四个页面的相同地址处四个字节的某一位共同决定的。屏幕上8个点对应内存有4个字节。我们在进行内存数据搬家时,应对四个页面同时操作。可以提供ega口地址的选取来指定访问所需的位平面。由ega图形控制寄存器组(地址为3ceh)的4号寄存器确定哪个页面允许读,由顺序寄存器组(地址为3c4h)的2号寄存器确定适配器中哪个页面被开放(细节见ega/vea资料)。
 
<<<<<全文未完>>>>> 全文字数约810字
是否要阅读全文?点卡会员将扣除1点!点击阅读全文
 
 
 
版权所有 教育论文中心 Copyright(C) All Rights Reserved
联系方式: QQ:277865656
或写信给我