文档详情

基于ARM7的嵌入式游戏系统设计与实现毕业设计.doc

发布:2017-09-04约1.74万字共36页下载文档
文本预览下载声明
基于ARM7的嵌入式游戏系统设计与实现 摘 要 嵌入式系统的应用开发给计算机技术的应用带来一个广阔的发展空间。在当前数字信息技术和网络技术高速发展的后PC(Post-PC)时代,嵌入式系统已经广泛地渗透到科学研究、工程设计、军事技术、各类产业和商业文化艺术以及人们的日常生活等方方面面中。随着国内外各种嵌入式产品的进一步开发和推广,嵌入式技术越来越和人们的生活紧密结合。基于嵌入式处理器的软硬件设计成为了当今IT业一个极为热门的话题。嵌入式系统的核心是嵌入式处理器。采用RISC架构的ARM微处理器具有体积小、低功耗、低成本、高性能等优良的特点为其赢得了众多的用户和占据了大量的市场份额。而ARM微处理器家族中的ARM7系列微处理器最适合用于对价位和功耗要求较高的消费类应用。本人希望通过在嵌入式平台上用C语言实现俄罗斯方块这一经典游戏来了解嵌入式开发平台和掌握其软件开发流程。同时让自己对计算机硬件有更深的了解和提高自己的工具的使用及编程能力。 本文首先对嵌入式系统及相关技术做了一个大体介绍,接着是需求分析说明,最后是系统实现的阐述。 关键词: 嵌入式系统 ARM C语言 俄罗斯方块 微处理器 目 录 1 绪论 1 1. 1课题背景及目的 1 1.1.1为什么要设计虚拟机 1 1.1.2虚拟机反对派观点 3 1.2国内外研究状况 3 1.3课题研究方法 3 1.4论文构成及研究内容 4 2 SVM 虚拟机设计 4 2.1运形时系统与虚拟机 4 2.2 SVM 虚拟机 5 2.3 SVM虚拟机处理器设计 6 2.3.1 机器处理器设计 6 2.3.2 SVM虚拟机处理器设计 8 2.4 SVM内存分配 9 2.5 SVM内存寻址 9 2.6 SVM 多字节存储方式 10 2.7 SVM输入输出 11 2.8 SVM 中断 11 2.9 SVM 汇编器 18 2.10 SVM 反汇编器 20 2.11 SVM 调试器 20 2.11.1概述 20 2.11.2调试技术 21 2.11.3 SVM 调试器的实现 21 2.12 建造运行时系统 22 2.13 SVM 虚拟机的扩展 22 3 SVM 虚拟机运行时环境 24 3.1SVM执行方式 24 3.2 SVM调试方式 25 4 程序设计处理 29 4.1程序设计中的宏处理 29 4.2程序设计中的异常处理 30 总 结 33 致 谢 35 参考文献 36 1 绪论 1. 1课题背景及目的 1.1.1为什么要设计虚拟机 就软件工业的发展趋势而言,一方面是需要运行在多种计算机平台之上的实用系统越来越多,另一方面是以网络为中心的计算情况越来越多,虚拟机也重新成为软件工业的一个潮流。 基于单一操作系统的软件开发工具已经不能满足软件工程师的需要。 面对杂乱的信息系统和日新月异的技术发明,软件工程师们开始重新审视开发虚拟机的优点。 编写虚拟机是软件开发项目的一种,它体现了一种使投资价值最大化的思路。为了从资源方面的投资得到最大的回报,企业都希望自己花钱开发出来的软件的使用期限能够尽可能地长。把软件包从一种平台移植到另一种平台的工作需要花费不小的成本,而且并不是所有的软件包都能够移植到所有的平台上去,软件包所能支持的平台种数是有限度的。大量事实表明,软件移植工作往往会变成一场噩梦。 使用虚拟机就可以在一定程度上避免这类事情的发生。当遇到一种新硬件平台或者新操作系统的时候,唯一需要移植的应用级软件就是虚拟机本身[1]。 1.1.2虚拟机反对派观点 有不少人反对使用虚拟机,他们的观点有许多种,其中最主要的就是虚拟机会降低程序的执行性能。他们认为,编译型语言——如C语言——是以计算机自身的机器码的形式执行的,因此会执行得更快些。但这种说法并不一定正确。 纯粹的C++代码并不一定比由虚拟机执行的字节码(byte code)更快。程序的执行时间主要消耗在运行时库以及内核模式中断处理例程方面,只有当处理的代码是完全孤立且没有调用任何用户库或系统调用时(因为程序要等待系统的响应)才能百分之百肯定其机器码会执行得更快。 对于企业应用级系统,虚拟级在可移植方面的优势足以弥补这些其实并慢不了多少的性能损失[1]。 1.2国内外研究状况 一个商业级的虚拟机实现是极其复杂的,一个开源虚拟机bochs 做得很好,其2.0.2版在Win32平台下的有13万行源代码(C/C++)。能在其上运行minux(linux 前身),FreeDSB, Windows95,Windows NT 4.0等操作系统。 另一种虚拟机有自己的指令集,它是针对一种语言来设计和实现的。比如JVM(JAVA virtual machine JAVA 虚拟机)。.NET平台。而由JVM所支持的JAVA语言,目前正得到广泛的应用。
显示全部
相似文档