计算机组成原理知识体系结构学习系统.pdfVIP

计算机组成原理知识体系结构学习系统.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机组成原理知识体系结构学习系统 作者:杨泽波 学号 指导老师:李国桢 摘要:本文主要介绍基于VB.NET 语言的计算机组成原理知识体系结构学习系统的实现过程。 关键词:VB.NET 计算机组成原理 知识体系结构 实现 一、选题背景 如何学好《计算机组成原理》课程?相信这是很多计算机专业的同学都会问的一个 问题。这门课程的概念性东西比较多,相对比较抽象,理解起来有一点难度。不少同 学在学习或复习的过程,感到吃力,或者面对课本无从下手。即使把书和课件看了一 遍又一遍,最终考试的成绩也不甚理想。为什么会出现这种事倍功半的情况?原因就 是很多同学没有意识到知识体系结构的重要性。因此,我萌生了以知识导图为基础, 设计一个知识体系结构学习系统的想法,力图立体化、网络化地呈现整个知识体系, 以帮助同学们更好的掌握这门课程。 二、技术路线 软件采用VB.NET 语言编写,开发平台为Visual Studio 2008。考虑到本人对VB.NET 语言较为熟悉,且.NET 平台正逐渐普及,故选择基于.NET 平台开发。当然,VB.NET 编 写的程序运行效率肯定没有 C++之类的语言效率高,但由于软件架构比较简单,采 用.NET 平台影响也不大。 三、实现过程 整体思路:以李国桢老师的知识导图为基础,构建软件主界面的框架,包含所有 的知识点,设计好弹出信息窗口的界面。接着搜集知识点的相关资料,将资料作为程 序资源嵌入到程序里面,当鼠标移动到任何知识点上时,在弹出信息窗口的时候,通 过赋予相应参数,从资源里调用相关的资料并显示。 具体实现过程: 主界面: 以知识导图为背景,在相应的知识点上覆盖Label 控件,当鼠标移动到 Label 控件 时,变化颜色,产生选中效果。由于知识点较多(一百多个),若逐个知识点编写鼠标 移动事件的代码,必然会造成代码冗余,程序体积臃肿,运行效率低下。故考虑控件 的继承,编写一个继承自Label 控件的类InfoLabel,在类中定义相关事件和属性。接着 在主窗口中调用该控件即可产生相应的效果,程序体积大大减小,运行效率也有一定 的提高。 最终设计的界面如下: 信息窗口: 包含复制信息和链接到维基百科相关条目的功能,采用自定义窗体的方法,在无边 框的非标准窗体上绘制相应的功能控件和界面。编写响应事件,考虑到要显示信息, 链接到外部网站,且显示的信息和链接地址因知识点而异,故编写一个Public 过程,接 受外部参数:显示的信息和链接地址,并显示信息窗口。当鼠标移动到主界面的任何 知识点上的时候,赋给相应参数,调用该过程即可弹出信息窗口。 最终设计的界面如下: 此外,程序还具有其他功能,如:全屏显示,信息窗口可拖动,主窗口响应鼠标滚 轮事件等等,由于实现比较简单,不再赘述。 程序清单如下: 主要问题及解决方案:  为了方便使用,更加人性化,非标准窗体的信息窗口设计为可相对主窗口拖动。 尝试了很久,发现单纯判断鼠标动作,修改窗体屏幕坐标的方法无法实现该功 能,即使实现了,效率也很低,占用较多CPU 资源。通过查阅相关资料,MSDN 帮助文档等,发现可以通过Win32 API 来实现,直接发送窗体消息,这和标准 窗体的移动方法是一样的,最终该问题得到解决。  在主窗口拖动时必须保持信息窗口和主窗口的相对位置不变。开始时,采用记 录屏幕坐标的办法,虽然基本可以实现,但在快速移动的时候,总有偏差。后 来经过分析,采用动态记录信息窗口和主窗口的相对坐标的方法,即定义一个 Public 变量,当移动信息窗口的时候,计算并保存信息窗口和主窗口的相对坐 标,然后在主窗口的移动事件中,令信息窗口的屏幕坐标为主窗口的屏幕坐标 加上相对坐标即可。问题完美解决。  在程序测试的过程中,发现当主窗体靠近屏幕边缘的时候,弹出的信息窗口可

文档评论(0)

158****6415 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档