基于JAVA的手机RPG游戏图形引擎的实现
用Java和LibGDX开发角色扮演小游戏

用Java和LibGDX开发角色扮演小游戏角色扮演(RPG)游戏一直以来都备受游戏爱好者的喜爱。
随着科技的不断进步,现在我们可以利用Java编程语言以及LibGDX引擎来开发属于自己的角色扮演小游戏。
本文将介绍使用Java和LibGDX开发角色扮演小游戏的过程和相关技术。
一、介绍角色扮演游戏是一种虚构的互动体验,玩家可以在游戏中扮演虚拟角色,探索世界,完成任务,提升技能和属性。
使用Java和LibGDX 开发角色扮演小游戏可以为玩家带来更加沉浸式的游戏体验。
二、开发环境搭建1. 安装Java开发工具包(JDK):在官方网站上下载并安装适合您操作系统的JDK版本。
2. 安装集成开发环境(IDE):推荐使用Eclipse或IntelliJ IDEA等流行的Java开发工具。
3. 下载并配置LibGDX引擎:访问LibGDX官方网站,下载最新版本的LibGDX库,并将其添加到您的项目中。
三、游戏设计在开始编码之前,需要先进行游戏的设计。
这涉及到角色、地图、任务、怪物等各个方面的设计。
您可以采用UML类图和状态图等工具来绘制游戏的结构和流程。
四、游戏开发1. 创建LibGDX项目:使用LibGDX提供的项目生成器创建一个新的LibGDX项目。
2. 游戏场景开发:使用LibGDX提供的场景管理器创建游戏的各个场景,包括游戏主菜单、游戏关卡等。
3. 角色创建与控制:根据游戏设计创建游戏角色,并实现相应的控制逻辑。
使用LibGDX提供的输入处理来实现角色的移动、攻击等动作。
4. 地图创建与编辑:使用LibGDX提供的地图编辑器,设计和创建游戏地图。
将地图分为不同的区域和关卡,并设置相应的障碍物、NPC等。
5. 任务与对话:实现游戏中的任务系统和对话系统。
设计各种任务,编写对话脚本,实现任务的触发和完成逻辑。
6. 怪物与战斗:设计各种不同类型的怪物,并编写怪物的AI逻辑。
实现战斗系统,包括角色的属性计算、技能释放等。
基于Java的简单2DRPG游戏系统设计

基于Java的简单2DRPG游戏系统设计1. 引言1.1 背景介绍2,000字的背景介绍内容请查看下文:在当今社会,随着计算机科学和技术的迅速发展,电子游戏产业也在蓬勃发展。
而其中的角色扮演游戏(RPG)更是受到广大玩家的喜爱。
基于Java的2D RPG游戏是一种热门游戏类型,其简单易学的特点吸引了很多游戏爱好者。
在这样一个背景下,研究和设计基于Java 的简单2D RPG游戏系统就显得尤为重要。
这个项目的开发具有很大的研究意义。
通过设计一个完整的游戏系统,我们可以更好地了解游戏开发的流程和技术要求,为日后的游戏开发工作奠定基础。
这个项目可以为游戏爱好者提供一个学习和交流的平台,促进游戏玩家之间的互动和合作。
本项目也可以为有志于从事游戏开发的人员提供一个实践和锻炼的机会,有助于提升个人技能和能力。
本研究旨在通过设计一个基于Java的简单2D RPG游戏系统,探索游戏系统设计的原则和方法,提高游戏开发者的设计能力和技术水平,促进游戏产业的发展和繁荣。
通过本研究,我们可以更好地理解和应用游戏设计原则,为未来的游戏开发工作打下坚实的基础。
1.2 研究意义2DRPG游戏是一种受到广大玩家喜爱的游戏类型,它结合了角色扮演与动作游戏的元素,让玩家可以在游戏中体验到丰富的故事情节、角色成长、战斗策略等内容。
通过设计并实现基于Java的简单2DRPG 游戏系统,可以带来以下几方面的研究意义:1. 探索Java在游戏开发中的应用基于Java开发2DRPG游戏系统,可以深入研究Java在游戏开发中的各种应用场景和优势。
通过设计和实现游戏系统,可以更好地了解Java在图形界面、事件处理、数据存储等方面的表现,为今后的游戏开发提供宝贵经验。
2. 推动2DRPG游戏领域的发展基于Java的简单2DRPG游戏系统设计的研究成果,有助于推动2DRPG游戏领域的发展。
通过分享设计原则、角色设计、地图设计、战斗系统设计等内容,可以为其他开发者提供参考和借鉴,促进2DRPG游戏的创新与发展。
基于Java的简单2DRPG游戏系统设计

基于Java的简单2DRPG游戏系统设计**引言**2D RPG(角色扮演游戏)是一种古老而经典的游戏类型,它将玩家带入一个充满奇幻世界的历险之旅。
在这种类型的游戏中,玩家可以控制一个虚拟角色,通过战斗、探索和任务完成来提升角色能力和经验。
本文将基于Java语言,设计一个简单的2D RPG游戏系统,并介绍其基本架构和功能实现。
**系统架构**我们将游戏系统分为以下几个模块:1. 游戏引擎模块:负责处理游戏的基本逻辑、渲染和用户交互等功能。
2. 角色模块:定义游戏中的角色及其属性、技能等。
3. 地图模块:描述游戏中的地图环境,包括地图数据、碰撞检测等。
4. 物品模块:定义游戏中的物品、装备等,并实现其交互逻辑。
5. 战斗模块:处理游戏中的战斗逻辑,包括伤害计算、状态效果等。
游戏引擎模块是整个游戏系统的核心,它负责游戏的初始化、运行和渲染等功能。
该模块包含以下关键组件:1. 游戏循环:负责游戏的运行逻辑,包括更新游戏状态、处理用户输入和渲染画面等。
2. 事件管理器:用于处理游戏中各种事件,例如碰撞事件、技能释放事件等。
3. 界面管理器:负责游戏界面的显示和交互,包括菜单、对话框等。
4. 地图加载器:用于加载游戏地图数据,并将其渲染到游戏画面上。
5. 用户输入处理:处理玩家的键盘、鼠标输入,例如移动角色、使用技能等操作。
**角色模块**角色模块定义了游戏中的角色类,包括主角、怪物等,在这个模块中我们可以定义角色的属性、技能和状态等。
主要包括以下内容:1. 角色类:定义了角色的基本属性,例如血量、魔法值、攻击力、防御力等。
2. 技能类:描述了角色的技能,包括伤害计算、特效显示等。
3. 状态类:描述了角色的状态,例如中毒、昏迷等,以及状态效果的实现逻辑。
在角色模块中,我们还需要实现角色的行为逻辑,例如角色移动、使用技能、战斗等。
地图模块描述了游戏中的地图环境,包括地图数据的加载、渲染以及碰撞检测等。
该模块包含以下组件:1. 地图类:描述了游戏地图数据的结构和内容,例如地图元素、地形等。
基于Java的简单2DRPG游戏系统设计

基于Java的简单2DRPG游戏系统设计RPG(Role Playing Game),即角色扮演游戏,在游戏中扮演着一个虚拟的角色,与其他角色互动,完成任务,提升角色等级和能力值等。
本文基于Java语言,设计一个简单的2D RPG游戏系统,包括游戏场景、角色、任务、装备、技能和怪物等要素。
游戏场景设计游戏场景是游戏中最基本的元素之一,它是玩家主要活动的地方。
本游戏系统包括3个场景:城镇、野外和副本。
城镇是玩家交易、修复装备和升级技能的主要场所。
野外是玩家打怪升级的主要场所,分为不同等级的区域。
在副本中玩家可以挑战各种强大的BOSS,获得高价值的掉落和任务奖励。
角色设计角色是游戏中最核心的元素之一,本游戏系统中设计了3个角色类型:战士、法师和刺客。
每个角色有自己的属性和技能。
属性包括:生命值(HP)、魔法值(MP)、攻击力(ATK)、防御力(DEF)、敏捷度(AGI)和幸运值(LUCK)等。
技能分为普通攻击和技能攻击,每个角色都有自己特定的技能和技能等级。
例如:- 战士:普通攻击为近战攻击,技能攻击有重击、猛击和斩击等。
- 法师:普通攻击为魔法攻击,技能攻击有火球、闪电和冰冻等。
- 刺客:普通攻击为近战攻击,技能攻击有致命一击、偷袭和毒刺等。
每个角色还可以装备武器、防具和饰品等装备,提升自己的属性和技能等级。
任务设计任务是游戏中主要的活动之一,玩家需要完成任务来获得奖励,包括经验值、金币、装备和技能点等。
本游戏系统设计了两种任务类型:主线任务和支线任务。
主线任务是游戏的主要剧情线,必须完成才能进入下一个场景,并且有高额的奖励。
支线任务是可选的任务,完成后可以获得额外的奖励。
装备设计武器有近战武器和远程武器两种,防具有头部、身体、手臂、腿部和鞋子几种,饰品有戒指、项链和耳环等。
每件装备都有自己的等级和属性加成,玩家可以通过购买、任务奖励或挑战BOSS掉落等方式获得。
技能设计技能是角色进行攻击和防御的重要手段之一,也是角色自身属性的体现。
Java游戏引擎开发从零开始创建游戏引擎

Java游戏引擎开发从零开始创建游戏引擎迄今为止,游戏开发一直是技术的前沿领域之一。
而Java作为一种无处不在的编程语言,其在游戏开发领域也占据着重要的地位。
本文将介绍如何从零开始创建一个基于Java的游戏引擎,包括引擎架构、图形渲染、物理模拟等相关技术。
引擎架构一个游戏引擎通常由多个模块组成,包括图形渲染、物理模拟、碰撞检测等。
在Java中,可以使用面向对象的设计思想来实现这些模块。
我们可以创建一个Engine类作为游戏引擎的入口,然后将不同的模块作为Engine类的成员进行管理。
图形渲染图形渲染是游戏引擎中最关键的模块之一。
在Java中,可以使用JavaFX或者OpenGL来实现图形渲染。
JavaFX提供了丰富的图形库和UI组件,适用于2D游戏开发;而OpenGL则可以实现更高级的图形渲染效果,适用于3D游戏开发。
根据实际需求,我们可以选择适合的图形渲染技术。
物理模拟在许多游戏中,物理模拟是必不可少的。
物理模拟可以处理各种物体之间的相互作用,例如重力、碰撞等。
Java中有许多物理引擎库可供选择,如JBox2D和Bullet Physics。
这些库提供了各种物理模拟算法和函数,可以方便地在游戏引擎中使用。
输入处理游戏引擎还需要处理用户的输入,例如键盘、鼠标和触摸屏等。
Java中可以使用AWT或者JavaFX提供的事件处理机制来实现输入处理。
通过监听用户的输入事件,游戏引擎可以根据用户的操作来控制游戏逻辑。
游戏逻辑游戏逻辑是游戏引擎中另一个重要的模块。
在Java中,可以使用面向对象的方法来实现游戏逻辑。
我们可以创建不同的游戏对象,例如玩家、敌人、场景等,然后通过编写相应的类和方法来处理游戏逻辑。
这样可以提高代码的可维护性和重用性。
资源管理游戏中的资源管理也是一个关键问题。
在Java中,可以使用JavaFX提供的资源管理机制来管理游戏中的音频、图像等资源。
同时,我们还可以考虑使用纹理压缩和资源合并等技术来减小资源文件的大小,提高游戏性能。
基于JAVA的手机RPG游戏图形引擎的实现

是读取速度,读取速度慢将导致游戏加载时间过 长.基于这方面的考虑.数据文件的读取利用JA、,A 对流文件的处理来加快速度.简略的代码如下:
StringBuffer stringBuffer; |nputStream inputStream=this.getClass(). getResourceAsStream(resource)l stringBuffer=new StringBuffer(); String strFile; int input; while((input=inputStream.read())!一--1)
1 MIDP中重要的API简介
MIDP(Mobile Information Device Profile, MIDP)提供了对手机设备的屏幕和硬件键的细 粒度控制。其中主要的API类如下:1)Screen类是 高级小构件如Alert、List、Form的基础,MIDP2.0 允许同一个Form上混合文本和图像;2)Canvas类 是低级MIDP UI的基础,提供对整个屏幕的像素 级绘画的访问,以及游戏动作、按键事件的处理方 法;3)Game Canvas类继承于Canvas类,可以直 接从get—Graphics()方法中得到Graphics对象并 且在该对象上绘图,并可以调用flushGraphics() 方法更新屏幕的一部分.MIDP2.0的game包为 游戏应用程序定义了一套完整的API.MIDP2.0 除了Game Canvas类之外,还提供了支持平铺或
+Draw(in g:Graphic):void +Load():void +getList():MList
!
Tile
}Draw(1: void +Save():void
基于Java的简单2DRPG游戏系统设计

基于Java的简单2DRPG游戏系统设计概述本文将介绍一种基于Java语言的简单2DRPG游戏系统设计。
本游戏系统采用面向对象思想、MVC设计模式和线程技术实现。
游戏系统包括游戏主界面、角色选择界面、游戏地图界面、战斗界面和背包界面。
玩家可以通过游戏主界面进入对应界面进行游戏。
角色可以通过角色选择界面选择不同的角色进行游戏。
在游戏地图界面中,玩家可以控制角色在地图上行走,并与怪物进行战斗。
在战斗界面中,角色和怪物通过回合制进行战斗。
在背包界面中,玩家可以查看自己的装备和物品,并进行相应的操作。
设计模式本游戏系统采用MVC设计模式,其中模型层包含角色、怪物和地图类,视图层包括主界面、角色选择界面、游戏地图界面、战斗界面和背包界面,控制器层由GameController 类和多个事件监听类组成。
该设计模式使得游戏系统的各个模块相互独立,易于维护和扩展。
游戏主界面游戏主界面是游戏系统的入口,包括开始游戏、角色选择、退出游戏三个按钮。
游戏主界面使用GridBagLayout布局管理器实现。
角色选择界面角色选择界面是玩家在开始游戏后的第一步,可以选择四种不同的角色:战士、法师、猎人和盗贼。
角色选择界面使用GridLayout布局管理器实现。
战斗界面战斗界面是在角色遇到怪物后进入的战斗界面,采用回合制进行战斗。
其中包括角色属性、怪物属性、攻击按钮、防御按钮等功能。
战斗界面使用GridBagLayout布局管理器实现。
背包界面背包界面用于查看角色的装备和物品,包括装备栏、物品栏等功能。
玩家可以通过背包界面查看自己的装备和物品,并进行相应的操作,如装备更换和道具使用。
背包界面使用JFrame类实现,包括JTable和JList组件。
角色类角色类是游戏系统中的核心类之一,包括角色的基本属性和方法。
角色类继承自物品类,拥有物品类的属性和方法,同时具有生命值、攻击力、防御力等角色特有的属性和方法。
角色类还包括攻击方法和防御方法,用于进行战斗。
基于J2ME的手机网络RPG游戏引擎

基于J2ME的手机网络RPG游戏引擎
张卫山;刘伟
【期刊名称】《计算机工程与应用》
【年(卷),期】2005(41)33
【摘要】手机网络RPG游戏在日益增长,为了尽快将游戏推向市场,可以利用游戏
引擎进行快捷的游戏开发.论文基于J2ME的MIDP2.0,探讨了一个实用的手机网络RPG游戏引擎的设计与实现.按照模块化思想,该引擎分为公用模块、媒体处理模块、地图及场景模块、人物及NPC模块、消息处理模块、场景绘制模块和网络传送模块.经过在Motorola A6288实际使用与模拟运行,游戏运行流畅,完全满足实际使
用的要求.
【总页数】4页(P115-117,165)
【作者】张卫山;刘伟
【作者单位】同济大学软件学院,上海,200331;同济大学软件学院,上海,200331【正文语种】中文
【中图分类】TP311
【相关文献】
1.基于J2ME的手机网络游戏的设计与实现 [J], 刘超;任利峰
2.基于2D RPG游戏引擎的简单动画制作 [J], 张杨;田兴彦
3.基于J2ME技术的手机网络游戏研究与开发 [J], 朱全银;章慧;孙文杰
4.基于J2ME的手机网络游戏的开发 [J], 胡必波
5.基于j2me/socket的手机网络游戏设计与实现 [J], 张新猛;蒋盛益;姜灵敏
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第34卷第4期2008年12月延边大学学报(自然科学版)Journal of Yanbian University (Natural Science )Vol.34No.4Dec.2008收稿日期:2008203214作者简介:臧晓强(1977—),男,讲师,研究方向为智能信息处理.文章编号:100424353(2008)0420287203基于JAVA 的手机RPG 游戏图形引擎的实现臧晓强, 崔荣一, 金小峰, 蔡京哲, 张振国(延边大学工学院计算机科学与技术系,吉林延吉133002)摘要:手机游戏引擎中的图形引擎非常重要,它的好坏关系到手机游戏界面流畅情况以及对手机的硬件要求程度.本文基于J 2M E 的MIDP2.0,讨论了手机RP G 游戏引擎中图形引擎的设计与实现,包括地图数据文件设计到读取、分析、加载和渲染.关键词:游戏引擎;手机游戏;RP G 游戏;图形引擎中图分类号:TP391 文献标识码:AImplementation on Java RPG Mobile G ame G raphic E ngineZAN G Xiao 2qiang ,CU I Rong 2yi ,J IN Xiao 2feng ,CA I Jing 2zhe ,ZHAN G Zhen 2guo(De partment of Com puter Science and Technology ,College of Engineering ,Yanbian Universit y ,Yanj i 133002,China )Abstract :The graphic engine is very important in mobile game engine which effects the game ’s scene and the mobile ’s hardware.A MIDP 2.0based on RP G engine is presented in this paper ,including how to design ,read ,analysis ,load and render the map 2data 2file.K ey w ords :game engine ;mobile game ;RP G game ;graphic engine0 引言随着移动技术的快速发展和一些应用开发平台如J 2M E 、BREW 的成熟,手机游戏变得越来越成熟[1].游戏引擎是控制某一类游戏运行的程序,在后台指挥游戏中的所有元素,包括图像、声音、动画、事件等协调有序地工作.游戏引擎能给开发带来方便,并对今后的修改升级、游戏的开发提供基础[2].目前,市面上的手机游戏绝大部分由游戏开发商提供,普通大众由于缺乏专业的程序开发技能而难以参与手机游戏的开发,只能被动地接受开发商、运营商所提供的应用[325],因此建立一个能够让一般的游戏设计人员使用、便于操作的游戏引擎变得更为迫切.限于篇幅,本文重点探讨地图的读取及渲染的实现.1 MIDP 中重要的API 简介M IDP (Mo bile Information Device Profile ,M IDP )提供了对手机设备的屏幕和硬件键的细粒度控制.其中主要的API 类如下:1)Screen 类是高级小构件如Alert 、List 、Form 的基础,MIDP 2.0允许同一个Form 上混合文本和图像;2)Canvas 类是低级M IDP U I 的基础,提供对整个屏幕的像素级绘画的访问,以及游戏动作、按键事件的处理方法;3)Game Canvas 类继承于Canvas 类,可以直接从get 2Grap hics ()方法中得到Grap hics 对象并且在该对象上绘图,并可以调用flush Grap hics ()方法更新屏幕的一部分.M IDP 2.0的game 包为游戏应用程序定义了一套完整的A PI.MIDP 2.0除了Game Canvas 类之外,还提供了支持平铺或延边大学学报(自然科学版)第34卷 动画游戏背景图片的Layer 类,并提供了处理动画图片的Sp rite 类.2 手机RPG 游戏引擎的设计通用性是游戏引擎的首要任务,并且为了适应大多数RP G 游戏,游戏引擎还要具有很强的扩充性.根据这一原则,本文将手机RP G 游戏引擎分为以下几种:1)网络引擎:负责网络通讯消息处理,服务器和手机客户端通过TCP/IP 协议链接,服务器接收消息,按照游戏世界更新逻辑处理消息,并把消息发送到手机客户端,手机客户端处理消息显示游戏元素状态.2)声音引擎:为游戏开发者提供接口,使得不同的游戏状态可以播放不同的声音.3)图形引擎:把通过资源管理器和地图编辑器处理的图形按照地图文件格式读取出来,使得地图处理对于游戏开发人员来说透明化.4)地图编辑器和资源管理器:将原始图像根据地图文件格式和精灵动作文件格式编辑,使得编辑后的图像能够被图形引擎正确读取.5)A I 引擎:处理非玩家控制角色(N PC )的运动,包括巡逻、躲闪、进攻、死亡等.文中图形引擎中类图如图1所示.地图、精灵图像渲染由load (),draw ()方法实现,用load ()方法读取场景信息,用draw ()完成渲染.图1 地图、精灵类图3 手机RPG 游戏引擎渲染技术的实现数据文件是用来让手机读取并用来渲染场景的文件,它是由地图编辑器生成的.3.1 地图数据文件的设计设计思想 地图的读取关键在于地图文件格式的设定.地图数据文件对于游戏开发人员来说是透明的,考虑到文件的可读性和安全性,文件采用类XML 文件形式.地图数据文件的设计目的是为了把图片形式的地图利用字符和数字表示出来.游戏开始前通过读取地图文件格式,游戏自动加载相应的图片资源,并且一次性加载,直到游戏场景再次切换时为止.具体实现步骤如下:1)〈map 2filename 〉maptest.txt 〈/map 2filename 〉map 2filename 为图文件的名称,本例中名称为maptest.t xt ;2)〈map 2size 〉〈widt h 〉480〈/widt h 〉〈height 〉256〈/height 〉〈/map 2size 〉map 2size 表示地图文件的大小,widt h 表示宽度,height 表示高度,本例中宽度为480象素,高度为256象素;3)〈map 2layerNum 〉4〈/map 2layerNum 〉map 2layerNum 表示地图文件的层数,本例中地图文件为4层;4)〈layer1〉……882 第4期臧晓强,等:基于J AVA的手机RP G游戏图形引擎的实现3.2 精灵动作数据文件的设计设计思想 精灵动作数据文件的设计目的是为了读取精灵的动作,包括精灵动作的类型、帧数、各种便捷边界、原始体力、魔法值等等.具体实现步骤如下:1)〈po seNum〉5〈/poseNum〉表示精灵动作共分为5种类型;2)〈11〉第一种类型开始标记;3)〈1〉0〈/1〉…3.3 数据文件的读取、分析与加载1)数据文件的读取 数据文件的读取关键点是读取速度,读取速度慢将导致游戏加载时间过长.基于这方面的考虑,数据文件的读取利用J AV A 对流文件的处理来加快速度.简略的代码如下: StringBuffer st ringBuffer;Inp ut St ream inputStream=this.getClass(). get ResourceAsStream(resource);st ringBuffer=new St ringBuffer();String str File;int inp ut;while((input=inputStream.read())!=-1) { if(inp ut!=′\n′){ stringBuffer.append((char)inp ut); } }st r File=st ringBuffer.to St ring();inp ut St ream.close();ret urn st r File;2)数据文件的分析和加载 数据文件的分析通过自定义类XMLparse实现,主要是找到数据前缀、后缀,然后去掉前后缀,并把有效数据通过sp rite的load方法加载到sprite类中,其具体代码略.3)图像的渲染 手机处理速度一般较慢,而手机游戏引擎为了画面的流畅,至少每66ms需要更新一下场景.为了加快运行速度和节省手机运行时需要的内存空间,图片渲染过程中采用只渲染略大于手机屏幕大小的地图空间给用户,这样做明显加快了手机加载地图的处理速度.3.4 实验结果通过测试发现通过以上的读取和渲染方法可以在手机模拟器上流畅地显示画面.图像层与层之间紧密耦合,成像清晰.4 结束语本文讨论了手机RP G游戏图形引擎的实现,测试结果表明,该引擎能够很好地渲染手机图像场景,并且速度较快、画面流畅.同时该引擎也有不足的地方,例如还需要解决与地图编辑器紧密耦合等问题.参考文献:[1] 陈林锋,张海祥,陈纯.手机游戏的渲染引擎研究[J].计算机工程与设计,2006,27(14):260622607.[2] 张卫山,刘伟.基于J2M E的手机网络RP G游戏引擎[J].计算机工程与应用,2005(33):1152117. [3] 丁月华,刘佳,杨沛.J2M E手机游戏开发平台的设计与实现[J].计算机工程,2007,33(5):2612263. [4] Overmars M.Learning Object2oriented Design byCreating G ames[J].Potentials,2005,23(5):11. [5] 王森.Java手机/PDA程式设计入门[M].北京:电子工业出版社,2004.982。