第3章计算机软件及其技术 计算机软件是指计算机系统中的程序及其文档。软件是用户与计算机之间的接口, 用户主要通过软件与计算机进行交流。一般,软件被分为系统软件和应用软件两大类。 系统软件包括操作系统和一系列基本工具,如语言处理程序、数据库管理工具和服务程 序等;而应用软件是为某种特定应用开发的软件。 3.系统软件 1 系统软件负责管理计算机系统中各种独立的硬件,使得它们协调工作。系统软件包 括操作系统、语言处理程序、数据库管理工具和各种服务程序等。其中,操作系统是管理 计算机硬件与软件资源的程序,是配置在计算机硬件上的第一层软件,其他的系统软件 以及应用软件都依赖于操作系统的支持,操作系统在计算机系统中占据着重要的地位。 不同计算机中安装的操作系统有所不同,主要由计算机系统的规模和操作系统的应用环 境来决定。安装在大型机、中型机的计算机系统中的操作系统功能强大,对配置的要求 也比较高。 3.1.1 操作系统 操作系统(operatingsystem)是配置在计算机硬件上的第一层软件,是对硬件系统的 首次扩充,在计算机系统中占据着重要的地位。操作系统管理所有计算机系统资源,为 用户提供一个抽象的计算机。在操作系统的帮助下,用户使用计算机时避免了对计算机 系统硬件的直接操作。 1. 操作系统的作用 操作系统在计算机系统中的位置如图3-1所示。从用户角度和资源管理角度来观 察,操作系统都起着重要的作用。 1)用户和计算机硬件系统之间的接口 从用户角度来观察,操作系统是用户和计算机硬件系统之间的接口,操作系统位于用 户和计算机硬件系统之间,用户在操作系统的帮助下,可以方便、快捷、可靠地操纵计算机硬 件或运行相应的程序。操作系统作为计算机硬件接口的作用如图3-2所示,从中可见,用户 可以通过使用系统调用、命令和窗口等方式来操纵计算机或运行自己的程序。 图3-1 操作系统在计算机系统中的位置图3-2 操作系统作为计算机硬件接口的示意图 2)计算机系统资源的管理者 从资源管理的角度看,操作系统起着管理计算机系统资源的作用,它是计算机系统 资源的管理者。在计算机系统中,用户使用的硬件和软件设施总称为资源。操作系统作 为管理者的重要任务之一是对资源进行抽象研究,有序管理计算机中的软硬件资源,跟 踪资源使用情况,监视资源的状态,满足用户对资源的需要,协调各程序对资源的使用, 让用户有效使用资源,从而提高资源利用率。 3)扩充计算机 对于一台计算机而言,裸机是很难使用的。操作系统是紧靠硬件的第一层软件,当 在计算机上覆盖了操作系统以后,就可以在此基础上扩展系统功能,为用户提供功能更 强、使用方便、安全可靠、效率更高的计算机,称之为扩充计算机或系统虚拟机。 2. 操作系统的主要功能 操作系统是计算机系统资源的管理者,它的主要任务是最大限度地提高系统中资源 的利用率并方便用户的使用。计算机系统中的硬件和软件资源可分为4类:处理器、存 储器、外部设备以及文件。计算机操作系统的主要功能是如何对这些资源进行有效的管 理,并向用户提供方便的接口。 1)处理器管理功能 处理器是计算机系统中的重要资源,任何时刻都只能有一个任务得到它的控制权。 在传统的多道程序运行过程中,各程序应合理、有序地获得CPU 的控制权,正常高效地 运作,这就需要对处理器进行合理的调度以协调各个任务的运行。 2)存储器管理功能 存储器管理主要是管理内存。这一功能的主要任务是为多道程序的运行提供良好 的存储环境,保护用户存储的程序和数据不被破坏,并提高内存的利用率,从逻辑上扩充 内存空间。存储器管理具有内存分配、内存保护、地址映射和内存扩充等功能。 3)外部设备管理功能 外部设备管理功能是对计算机系统中的所有外部设备资源进行统一管理。用户使 用外部设备时不是直接调用该设备,而是通过输入命令或程序向操作系统提出申请,由 操作系统中的外部设备管理程序负责给该任务分配设备并控制设备运行,在任务完成后 还要及时回收资源。外部设备管理包括缓冲管理、设备分配和设备处理以及虚拟设备管 理等功能。 4)文件管理功能 在计算机中,信息以文件的形成存储在外存上。文件包括系统文件和用户文件。文 件管理是对系统文件和用户文件进行管理,方便用户使用文件,并保证文件的安全性。 为此,文件管理主要有文件存储空间管理、目录管理、文件读写管理和保护等功能。 5)用户接口 用户接口给用户使用计算机操作系统提供服务,用户通常使用这些服务可以和计算 机系统进行交互。用户接口主要有命令接口、程序接口和图形接口。利用命令接口,用 户可以通过从键盘等终端设备输入命令获得操作系统的服务;程序接口主要是为编程者 提供的,编程人员在程序中借助于系统调用命令向操作系统提出资源请求或服务请求; 图形接口使用户操作更为简单直观,直接使用鼠标进行操作,把用户从记忆大量的命令 的负担中解脱出来。 3. 操作系统的分类 常见的操作系统主要有以下5种类型。 1)批处理操作系统 批处理操作系统是比较早的操作系统。它的工作方式是:用户将作业交给系统操作 员;系统操作员将许多用户的作业组成一批作业,将这批作业输入计算机,在系统中形成 一个自动转接的连续的作业流,然后启动操作系统;操作系统自动依次执行每个作业;最 后由操作员将作业结果交给用户。批处理操作系统的特点是多道和成批处理。 2)分时操作系统 分时操作系统的工作方式是:一台主机连接若干终端,每个终端有一个用户在使用。 用户交互式地向系统提出命令请求,系统接受每个用户的命令,采用时间片轮转方式处 理服务请求,并通过交互方式在终端上向用户显示结果。分时操作系统将CPU 的时间 划分成若干个片段,称为时间片。操作系统以时间片为单位,轮流为每个用户服务。各 用户轮流使用时间片,这样每个用户都不会感觉到别的用户的存在。分时系统具有多路 性、交互性、独占性和及时性的特点。 3)实时操作系统 实时操作系统使计算机能及时响应外部事件的请求,在规定的严格时间内完成对该 事件的处理,并控制所有实时设备和实时任务协调一致地工作。实时操作系统要追求的 目标是对外部请求在严格时间范围内做出反应,具有高可靠性。在实时操作系统中,资 源的分配和调度首先要考虑实时性,然后再考虑效率。而且,实时操作系统具有较强的 容错能力。 4)网络操作系统 网络操作系统是基于计算机网络的操作系统,是在各种计算机操作系统上按网络体 系结构协议标准开发的软件,包括网络管理、通信、安全、资源共享工具和各种网络应用。 网络操作系统的作用是使网络中的各台计算机能互相通信和共享资源。网络操作系统 的特点是与网络的硬件相结合来完成网络的通信任务。 5)分布式操作系统 分布式操作系统使大量的计算机通过网络连接在一起,构成分布式计算机系统,以 获得极高的运算能力及广泛的数据共享。它在系统结构、资源管理及通信控制等方面都 与其他操作系统有较大的区别。由于分布式计算机系统的资源分布于系统中的不同计 算机上,分布式操作系统对用户的资源需求不能采用一般的操作系统那样等待有资源时 直接分配的简单做法,而是要在系统的各台计算机上搜索,找到所需资源后才进行分配。 对于有些资源,如具有多个副本的文件,还必须考虑一致性。分布式操作系统的通信功 能类似于网络操作系统。分布式计算机系统不像网络那样分布得很广,同时分布式操作 系统还要支持并行处理,因此它提供的通信机制和网络操作系统有所不同,它要求通信 速度高。分布式操作系统是网络操作系统的更高形式,它保持了网络操作系统的全部功 能,而且还具有透明、可靠和高性能等特点。 4. 常用的操作系统 计算机的应用离不开软件和硬件,而操作系统是其他各种软件的基础。常用的操作 系统有Windows、UNIX 、Linux和MacOSX 。 1)Windows操作系统 Windows是微软公司推出的操作系统。从Windows1.0开始到人们熟悉的 Windows95 、WindowsNT 、Windows98 、Windows2000 、WindowsMe 、WindowsXP 、 WindowsVista、Windows7 、Windows8 和Windows10 等,各种版本持续更新;从16 位、32 位到64 位,操作系统不断升级。微软公司一直在致力于Windows操作系统的开 发和完善。 早期版本的Windows操作系统仅是一个图形用户界面,因为它在MS-DOS 上运行 并且被用作文件系统服务,但它也具有了典型的操作系统的功能。微软公司开发的 Windows操作系统是目前世界上用户最多、兼容性最强的操作系统,对大多数计算机用 户来说,Windows可以说是操作系统的代名词。Windows默认的平台是由任务栏和桌 面图标组成的。任务栏由“开始”菜单、正在运行的程序、系统时间、快速启动栏、输入法 及托盘组成,桌面图标是进入程序的途径。 案例3- 1 Windows10 简介。 Winownow1的下一代操作系统。Wids8. ds10 是Wids8.now1的发布未能满足用 户对于新一代主流Windows系统的期待,代号为WindowsThreshold的Windows10 于 2014 年10 月2日发布技术预览版,于2015 年7月29 日发布正式版。 Windows10 的发布实现了多平台的统一,从4in屏幕的“迷你”手机到80in的巨屏 计算机,都统一采用Windows10 这个名称。这些设备将会拥有类似的功能,微软公司正 在从小功能到云端整体构建这一统一平台,跨平台共享的通用技术也在开发中。 Windows10 手机版的名称为Windows10Mobile,从此再无WindowsPhone。 Windows10 的主要改变如下: (1)高效的多桌面、多任务、多窗口。增强了分屏多窗口功能,可以在屏幕中同时摆 放4个窗口,还可在单独的窗口内显示正在运行的其他应用程序。同时,Windows10 还 会智能地给出分屏建议。 用户可以根据不同的目的和需要创建多个虚拟桌面,切换也十分方便。单击加号即 可添加一个新的虚拟桌面。 (2)全新的命令提示符功能。Windows10 的命令提示符功能不仅直接支持拖曳选 择,而且可以直接操作剪贴板,并支持更多的功能快捷键。 (3)开始屏幕与开始菜单。同时结合触控与鼠标两种操控模式。传统桌面的“开始” 菜单兼顾Winow还兼顾Winds8/Winds8. ds7 等老版本用户的使用习惯, owow1用户 的使用习惯,依然提供开始屏幕,Wi1系统用户切换到Wis10后不会 ndows7/8/8.ndow 有太多违和感。 (4)MicrosotEdge浏览器取代IE 。Windows10放弃了饱受诟病的IE,推出了代号 为斯巴达(ProjectSpartan)的浏览器作为IE的替代品。新浏览器的正式名称为 MicrosoftEdge。它的新功能除了创建修改并分享页面、集成Contana之外,还增加了对 Firefox浏览器以及Chrome浏览器插件的支持,这对于在浏览器方面非常保守的微软公 司来说可谓一大突破。 (5)Cortana整合至开始菜单。在Windows10中,Cortana已整合至开始菜单,在 Windows8中被取消的AeroGlas 效果也正式回归,同时还有很多细节上的改变。 2)UNIX操作系统 UNIX是一个强大的多用户、多任务操作系统,支持多种处理器架构,属于分时操作 系统。UNIX是由肯·汤普逊、丹尼斯·里奇和道格拉斯·迈克尔罗伊于1969年在 AT&T的贝尔实验室开发出来的。UNIX经过长期的发展和完善,已经成为一种主流的 操作系统。UNIX系统具有技术成熟、可靠性高、网络和数据库功能强大、伸缩性突出和 开放性良好等特点,可以满足各行业的需要,已经成为主要的工作站平台和重要的企业 操作平台。 UNIX操作系统最初是用汇编语言开发的,后来又使用BCPL开发。UNIX的第三 版内核采用C语言开发,使UNIX和C语言完美结合成统一体,很快成为世界的主导。 UNIX有3个派生版本:SystemV(主要有A/UX 、AIX 、HP-UX 、IRIX 、LynxOS 、SCO OpenServer、Tru64 、Xenix)、Berkley(主要有386BSD 、DragonFlyBSD 、FreBSD 、 NetBSD 、NEXTSTEP 、OpenBSD 、Solaris)和Hybrid(主要有GNU/Linux、Minix、 QNXUnix)。 案例3- 2 UNIX名称的由来。 20世纪60年代,美国电话及电报公司(AT&T )、通用电器公司(GE)和麻省理工学 院(MIT)计划合作开发一个多用途、分时及多用户的操作系统,即MULTICS,它设计运 行在GE-645大型主机上。由于项目过于复杂,进展很慢,在1969年2月,AT&T的贝 尔实验室决定退出这个项目。贝尔实验室的肯·汤普逊为MULTICS设计了一个Space Travel的游戏,此游戏在MULTICS上运行速度慢而且资源消耗很大。他为了使此游戏 继续能玩,找来丹尼斯·里奇为此游戏开发一个简单的操作系统。他们在一台被人遗弃 的DigitalPDP-7计算机上使用汇编语言开发了一个操作系统的原型,他们的一位同事非 常不喜欢这个系统,嘲笑他们说:“这系统真差劲,干脆叫Unics算了!”Unics是对 MULTICS的戏称。这个名称后来改成了UNIX 。 3)Linux操作系统 Linux是一套免费的32位和64位多用户、多任务、多线程和多CPU的操作系统。 它是一个类UNIX操作系统,能运行主要的UNIX工具软件、应用程序和网络协议。 Linux继承了UNIX以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 Linux最大的特色在于源代码完全公开,在GNU公共许可权限下可免费获得,是一个符 合POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的操作系统,而且包括 49 文本编辑器、高级语言编译器等应用软件,在符合GNU 公共许可权限的原则下,任何人 均可自由获得、分发甚至修改源代码。 Linux套件不仅提供了操作系统的核心部分(负责控制硬件、管理文件系统、程序进 程等),还提供了强大的应用程序(如编译器、系统管理工具、网络工具、Office套件、多媒 体、绘图软件等)。它包括带有多个窗口管理器的X-Windows图形用户界面,如同使用 Windows操作系统一样,允许用户使用窗口、图标和菜单对系统进行操作。 Linux之所以受到广大计算机爱好者的喜爱,主要原因有两个:一个原因是它属于 自由软件,用户不用支付任何费用就可以获得它及其源代码,并且可以根据自己的需要 对它进行必要的修改,无限制地继续传播;另一个原因是它具有UNIX的全部功能,任何 使用UNIX操作系统或想要学习UNIX操作系统的人都可以从Linux中获益。 4)MacOSX操作系统 MacOSX是全球领先的操作系统,以简单易用和稳定可靠著称。2001年,苹果公 司推出了MacOSXv10.0(内部代号为猎豹)的操作系统。它运行速度慢,功能也不齐 全,第三方应用软件也很少。尽管它不是一款成熟的大众化产品,但是很多人认为它是 一项具有潜力的开发项目。之后不断有新版本的MacOSX操作系统出现,最终给用户 带来了优雅的外观和强大的功能。MacOSX操作系统的最新版本是MacOS11.2,它是 在2021年1月推出的。 3.1.2 语言处理程序 1.计算机语言 计算机语言是人和计算机进行交流的工具,它让计算机理解人的意图并按照人的意 图完成相应的工作。计算机语言和人类语言都有3个基本的要素:语义、语法和语序。 只不过与人类语言相比,计算机语言更单调、更严谨、更有逻辑性。计算机语言按照其发 展过程,可以分为机器语言、汇编语言和高级语言。 1)机器语言 机器语言是计算机能直接识别和执行的用二进制代码表示的机器指令的集合。不 同型号的计算机的机器语言互不相通,按一种计算机的机器指令编制的程序不能在另一 种计算机上执行。因为计算机能够直接识别的数据是由二进制数0和1组成的代码,所 以机器语言具有直接执行和速度快等特点。下面是机器指令的示例,要求机器把两个数 7和10相加: 1011 0000 0000 0111 0000 0100 0000 1010 1111 0100 由以上示例可见,用机器语言编写程序,要求编程人员必须熟记所用计算机的全部 指令代码及其含义。编写机器语言程序时,程序员需要处理每条指令和每一数据的存储 分配和输入输出,记住编程过程中每一步使用的工作单元处在何种状态。采用机器语 50 言,编程的工作量大,而且编写的程序全是由0和1组成的指令代码,直观性差,容易出 错,又不易修改。机器语言影响计算机的普及和应用。现在,除了计算机生产厂家的专 业人员外,绝大多数程序员已经不再学习机器语言了。 2)汇编语言 由于不同计算机的机器指令不同,机器语言又容易出错,难于记忆,使用机器语言的 局限性很大。为了摆脱机器指令编码的困难,人们采用助记符表示机器指令的操作码, 用变量代替操作数的存放地址,这就形成了汇编语言。汇编语言是一种用符号书写的, 基本操作与机器指令相对应的,遵循一定语法规则的计算机语言。汇编语言助记符通常 使用描述指令功能的英文单词的缩写,例如,ADD 表示加法,MOV 表示传送,等等。汇 编语言比机器语言直观、易懂,而且容易记忆。采用汇编语言编写的程序质量高,执行速 度快,占用内存空间少,一般用于编写系统软件、实时控制程序和直接控制计算机外部设 备或接口的数据输入输出程序等。 例如,把两个数7和10相加,采用汇编语言编写,代码如下: MOV AL,7 ADD AL,10 HLT 上面的代码表示:先将立即数7送入累加器AL,再将立即数10和AL中的数相加,结果 保存在AL中,HLT表示停止操作,这样7和10相加的结果就保存在累加器AL中了。 3)高级语言 尽管汇编语言比机器语言更方便,但是编写汇编语言仍然需要人们了解计算机的指 令系统,并且记住汇编语言的助记符。另外,采用一种助记符编写的汇编程序在不同型 号的计算机上不能运行,这就需要针对不同型号的计算机编写不同的汇编程序。为了解 决这些问题,出现了高级语言。 高级语言利用表达各种意义的词和公式按照一定的语法规则编写程序。目前高级 语言有很多种,常见的有C语言、C++语言、Java语言、C#语言等。高级语言独立于计 算机的硬件结构,在一种计算机上运行的高级语言程序可以不经修改移植到另一种计算 机上运行,提高了程序的可移植性。高级语言把机器指令和硬件操作抽象化,编程人员 不需要了解计算机的指令系统,而是将大部分精力放在理解和描述要解决的问题上,这 样使编程效率大大提高。高级语言和人类语言很相似,尤其和英语相似,因此熟悉英语 的人学习编程入门就快。下面是用C语言编写的程序代码片段,它实现两个数7 和10 相加 main() { int a,b,c; a=7; b=10; c=a+b; printf("%d",c); } 从这个例子可以看出,高级语言和自然语言比较接近,即使没有学习过计算机高级 语言的人,只要有一定的英文基础,也很容易理解用高级语言编写的程序。 2.语言处理程序 在计算机内部,只有机器语言才能被计算机识别,所以,使用其他语言编写的程序都 必须先处理成计算机能识别的语言,才能被计算机接受并执行。这些担任处理工作的程 序称为语言处理程序。语言处理程序一般是由编译程序、解释程序和相应的操作程序等 组成。它是为用户设计的编程服务软件,其作用是将高级语言源程序翻译成计算机能识 别的目标程序。 使用高级语言编写的程序称为源程序。源程序不能直接运行,必须配备一种工具, 它的任务就是把高级语言编写的源程序翻译成机器可以执行的机器语言程序。这个工 具就是编译程序或解释程序。高级语言源程序的翻译过程如图3-3所示,高级语言源程 序经过解释程序或编译程序处理,被翻译成目标程序。 图3-3 高级语言源程序的翻译过程 1)编译程序 编译程序将源程序翻译成机器可执行的代码主要经过3个步骤: (1)预处理。调用预处理器对源代码进行词法分析和语法分析。 (2)编译。调用编译器将源代码转换为中间代码。 (3)链接。调用链接器将中间代码与其他代码结合起来,生成可执行文件。 编译的方法使程序便于模块化,分别编译各个模块,然后使用链接器将编译过的模 块结合起来。如果改变一个模块,则不需要重新编译其他的模块。 2)解释程序 解释程序又称为解释器,是一种计算机程序,能够把高级语言源程序一行一行直接 转译运行。解释程序不会一次把整个程序转译出来,每次运行程序时都要先转成另一种 语言再运行,因此解释程序运行速度比较缓慢。它每转译一行程序就立刻运行这一行, 然后再转译下一行,再运行,如此不停地进行下去。这种工作方式非常适于人通过终端 设备与计算机会话,如在终端上输入一条命令或语句,解释程序就立即将此命令或语句 解释成一条或几条指令并提交硬件立即执行,最后将执行结果反映到终端,从终端输入 命令或语句后,就能立即得到计算结果。这的确是很方便的,很适合一些小型机的计算 问题。但解释程序执行速度很慢,例如源程序中出现循环,则解释程序也重复地解释并 提交执行这一组语句,这就造成很大的资源浪费。 解释程序运行高级语言源程序的方法有两种: .直接运行高级语言(如Shel 自带的解释器)。 .转换高级语言码为一些有效率的字节码(bytecode),并运行这些字节码。 .以解释程序包含的编译器对高级语言源程序进行编译,并指示处理器运行编译后 的程序(如JIT )。 图3-4 计算机语言之 父——尼盖德 Perl、Python、MATLAB与Ruby采用第二种方法,而UCSDPascal采用第三种方 法。在转译的过程中,高级语言编写的程序仍然维持源代码的格式,而程序本身所指定 的动作或行为则由解释器来表现。 案例3- 3 计算机语言之父———尼盖德。 克里斯汀·尼盖德(见图3-4)于1926年在奥斯陆出生,1956 年毕业于奥斯陆大学并取得数学硕士学位,此后致力于计算机计 算与编程研究。1961—1967年,尼盖德在挪威计算机中心工作, 参与开发了面向对象的编程语言Simula,为MS-DOS和Internet 打下了基础。 因为表现出色,尼盖德和同事奥尔·约安·达尔获得了2001 年图灵奖及其他多个奖项。美国计算机学会认为他们的工作为 Java、C++等编程语言为个人计算机和家庭娱乐装置的广泛应用 开辟了道路。他们的工作使软件系统的设计和编程发生了基本 改变,可循环使用的、可靠的、可升级的软件也因此得以面世。” 尼盖德帮助Internet奠定了基础,为计算机业做出了巨大贡 献,因而被誉为“计算机语言之父”。 3.1.3 数据库管理工具 数据库是数据管理的最新技术,主要用于解决数据处理的非数值计算问题。一个完 整的数据库系统由数据库、数据库管理系统和用户应用程序3部分组成。其中,数据库 指按一定方式组织在一起的相关数据的集合;数据库管理系统的作用是管理数据库,为 用户提供操作数据库的手段;用户应用程序是用户根据具体需要采用某种计算机语言编 制的用于解决问题的程序。 数据库管理系统(DatabaseManagementSystem,DBMS)是一套计算机程序,是为管 理数据库而设计的大型计算机软件管理系统,以控制数据库的分类及数据的访问。具有 代表性的数据管理系统有Oracle、MicrosoftSQLServer、Aces 、MySQL 及 PostgreSQL等。通常数据库管理员会使用数据库管理系统来创建数据库系统。 3.1.4 服务程序 服务程序是指通用的工具类程序,如完成调试、故障检查、连接装配、测试诊断等工 作的程序。 3.应用软件 2 应用软件是为了某种特定的用途而开发的软件。它可以是一个特定的程序,如一个 图像浏览器;也可以是一组功能联系紧密,可以互相协作的程序的集合,如微软公司的 Ofice套件等。计算机应用已经遍及社会的各个领域,相应的应用软件也是多种多样的。 按软件实现的功能,可分为常用系统工具、文件工具、下载工具、网络工具、防毒杀毒工 具、媒体播放工具等,下面介绍几种常用的应用软件。 3.2.1 办公自动化软件 办公自动化软件的功能是利用计算机完成公文处理、电子表格制作、幻灯片制作、计 算机通信等工作的软件。微软公司的Ofice套件是使用得比较多的办公软件,包括 Word、Excel、PowerPoint等。金山公司的WPS是国产的办公软件,功能和Ofice类似。 Word软件是在Windows环境下使用的文字处理软件,它克服了传统文字处理软件 的缺点,使文字的处理完全计算机化,具有所见即所得、图文混排、拼写和语法检查、自动 更正等特点。 Excel是Windows环境下的电子表格系统,具有图表图形处理以及丰富的宏命令和 函数,并支持通过VBA进行二次开发。它不仅适合从事统计、财务、会计、金融和贸易工 作的人员,而且可供广大非专业人员使用。Excel提供了丰富的格式化命令,使用户可以 轻松制作具有专业水平的各类表格,在Excel中,用户可以自己编制公式,也可以使用系 统提供的几百个函数进行复杂的运算,并且使用几个简单的操作就可以制作出精致的图 表。Excel提供了上百种不同格式的图表供用户采用。 PowerPoint也是办公自动化软件中一个重要的组成部分,它是在Windows平台下 开发的,专门用于制作和演示幻灯片,能够制作出集文字、图形、图像、声音以及视频剪辑 等多媒体元素于一体的演示文稿,可以用于介绍公司的产品、展示学术成果、多媒体教学 等活动。 3.2.2 下载工具软件 目前互联网提供了大量的资源供用户共享。网上下载资源最大的问题是传输效率 问题和下载后的管理问题。下载工具软件可以解决这两方面的问题,支持断点续传,还 具有强大的管理功能。常见的下载工具软件有FlashGet、网络蚂蚁、迅雷(Thunder)等。 下面以迅雷为例说明下载工具的使用方法。 1.下载迅雷的安装程序 打开迅雷产品中心站点:htp://dxne.om/, 将下载的软件 lulic选择下载迅雷软件, Thudr2.3312.xe保存到本地硬盘。(.) ne7.4.e 2.安装迅雷软件 双击Thdr3312.e文件,按照向导提示的信息一步一步安装。首先接受软 une7.2.4.ex 件许可协议中的条款,如图3-5所示。 然后,弹出设置安装路径对话框,单击“浏览”按钮,选择安装路径,如图3-6所示。安 装过程如图3-7所示。安装完成时的界面后如图3-8所示。 3.使用迅雷下载资源 使用迅雷下载资源的方法比较灵活,常用的有以下两种: 图3-5 接受软件许可协议 图3-6 选择安装路径 图3-7 安装过程 54 图3-8 安装完成 (1)检索到需要下载的网址,在页面上右击下载对象名,在弹出的快捷菜单中选择 “使用迅雷下载”命令。 (2)打开迅雷,单击“新建下载任务”按钮,在“输入下载URL”下的文本框中输入要 下载的资源的地址。 3.2.3 即时通信软件 即时通信软件是上网用户使用率最高的软件,它能方便用户迅速在网上和朋友即时 交谈和互传信息,很多软件集成了数据交换、语音聊天、视频交谈等强大的功能。常见的 即时通信软件有QQ 、MSNMesenger、ICQ 、UC等。 QQ是腾讯计算机系统有限公司开发的一款基于Internet的即时通信软件。QQ支 持在线聊天、视频电话、点对点断点续传文件、共享文件、网络硬盘、自定义面板、QQ邮箱 等多种功能,并可与移动通信终端等多种通信方式相连。1999年2月,腾讯公司正式推 出第一个即时通信软件———“腾讯QQ”。QQ在线用户由1999年的2人(马化腾和张志 东,均为腾讯公司创始人)已经发展到数亿用户,在线人数超过一亿,是目前使用最广泛 的聊天软件之一。 MSN全称MicrosoftServiceNetwork(微软网络服务),是微软公司推出的即时通信 软件,可以与亲人、朋友、工作伙伴进行文字聊天、语音对话、视频会议等即时交流。全球 有5亿用户选择使用MSN即时通信工具。自1995年在美国推出MSN之后,微软公司 又收购了Hotmail,推出MSNMesenger。2014年10月,MSNMesenger正式退出 市场。 ICQ是最早出现的即时通信软件之一,出自以色列特拉维夫的Mirabilis公司,是由 几位以色列青年在1996年开发的。ICQ是英语Isekyou的谐音,中文意思是“我找 你”。使用这款网络即时通信传呼软件,可以通过互联网进行聊天,发送消息、网址、文件 等。1998年,美国在线(AOL)公司收购了ICQ以后推出更多功能的版本。后来由于 ICQ内嵌过多的广告而使用户下降,Mirabilis公司推出了简化版ICQLite,只含有ICQ 的最基本功能。2011年11月,ICQ官方免费版iPhone及AndroidApp发布,加入了类 似WhatsApp及MSN的用法及功能,迅速引起大量用户回归,ICQ热潮重新出现。 UC是UniversalCommunication是简写,是新浪UC信息技术有限公司开发的融合 P2P思想的下一代开放式即时通信网络聊天工具。UC即时通信服务是在2002年正式 推出的,用户可以通过该服务在互联网和移动通信网络上实时发送文本信息、图像和声 音,UC还提供聊天室、在线游戏、校友录等社区功能。2004年,新浪公司收购了UC业 务,并不断增加新的业务和功能。UC是集传统即时通信软件功能于一体,融合P2P思 想的新一代开放式网络即时通信娱乐软件。新浪UC的最新版本是新浪UCforAndroid 12.41 。 0. 3.2.4 防毒杀毒软件 对于大多数用户来说,要保护计算机和数据不受恶意破坏,最简单的方法是在系统 上安装反病毒软件。目前国内外反病毒软件种类很多,大多数都能提供保护功能。常见 的反病毒软件有瑞星杀毒软件、江民杀毒软件、卡巴斯基、McAfe 、ESETNOD32防病毒 软件、诺顿、360等。防病毒软件在使用期间要不定期地更新病毒库,可以选择自动更新, 也可以手动更新。下面以诺顿为例演示如何安装和使用防病毒软件。 1.安装软件 此处以安装Symane.trsCrprt.10.0.Fia.运行 tcAniViu.ooaev0.359.nlCHS版本为例, seuee,则进入图3-9所示的SymatcAniVirus安装向导,按安装向导的提示,直接 tp.xnet 单击“下一步”按钮,直到最后成功完成安装,如图3-10所示。 图3-9 Symantec AntiVirus 安装向导 2.更新病毒库 双击任务栏右下角的SymantecAntiVirus图标,打开图3-11所示的主界面,单击 “病毒定义文件”中的LiveUpdate按钮,即可在线更新病毒库。在更新病毒库期间,需要 保持网络连接。 图3-10 Symantec AntiVirus 安装完成 图3-11 Symantec AntiVirus 主界面 3.2.5 图形图像处理软件 图形图像处理软件可以辅助用户进行艺术创作,目前使用得较多的图像处理软件有 Photoshop、Painter、CorelDRAW 等软件。 Photoshop是Adobe公司推出的图像处理软件,它具有功能强大、操作界面友好、得 到了广泛的第三方支持的特点。Php从最初的1.1版 0版本到目前最新的22. 本,即Photoshop2021,每一次的版本升级都会给用户带来惊喜的功能更新,因此它的支 持者越来越多,使得它在诸多图形图像处理软件中立于不败之地。 CorelDRAW 是加拿大Corel公司开发的矢量图形编辑软件。CorelDRAW 开发初 期运行于Windows操作系统之上,后来也发布了Machintosh版本。CorelDRAW 的功 能主要分为绘图和排版两大部分,广泛应用于商标设计、标志制作、插图描画、模型绘制、 otosho1. 排版等诸多领域。 Painter是由Corel公司出品的专业绘图软件,是一款优秀的仿真实风格绘画软件, 拥有全面和逼真的画笔。它可以给使用者全新的数字化绘画体验。对于想追求自由创 意并需要使用数码工具绘画的人员来说,这款软件是上佳之选。Painter广泛应用于动漫 设计、艺术插画、建筑效果图设计等领域。 3.2.6 媒体播放软件 媒体播放软件可以播放各种流行格式的音频、视频,例如MP3 、MPEG 等格式的多 媒体文件。常见的媒体播放软件有WindowsMediaPlayer、RealPlayer、Winamp、 KMPlayer等。 WindowsMediaPlayer(WMP)是Windows系统自带的播放器,支持通过插件增强 功能。早在1992 年,微软公司就在Wids3.0, now1成 now1中捆绑了WMP1.使Wids3. 为第一代支持多媒体的Windows系统。Window4, s98 中内置了WMP6.这个版本存在 于后续的操作系统中,并被一直保留至今。WMP 可以播放MP3 、WMA 、WAV 等格式的 文件。由于竞争关系,微软公司不支持RM 格式的文件,不过在WindowsMediaPlayer 8以后的版本中,如果安装了RealPlayer相关的解码器,就可以播放RM 格式的文件。 此外,WMP 还可以播放AVI 、MPEG-1、MPEG-2、DVD 等格式的文件。WMP 还支持用 户通过安装外部插件来增强功能,还可以收听VOA 、BBC 等国外电台。现在WMP 的最 新版本为12. 0。 RealPlayer是由RealNetworks公司开发的跨平台播放器,利用它可以欣赏各种联 机音频和视频,包括MP3 、MPEG-4、MOV 、WMA 、WMV 等格式及RealPlayer专用的 RealAudio与RealVideo格式。RealPlayer为用户提供两个版本:免费的基本版本和需 付费的Plus高级版,付费版本可以提供额外的功能。 3.2.7 多媒体及动画制作软件 多媒体及动画制作软件主要用于制作多媒体音频、视频文件,能够实现此类功能的 软件有很多,主要有3dsMax和Premiere等。 3dsMax原名3DStudioMAX,是Autodesk公司传媒娱乐部开发的全功能的三维 计算机动画软件,最新版本是2021,拥有先进的渲染和仿真功能,具有更丰富的绘图、纹 理和建模工具集及更流畅的多应用工作流,可以让使用者充分实现其创意。3dsMax广 泛应用于广告、影视、工业设计、建筑设计、多媒体制作、游戏、虚拟现实等领域。 Premiere是由Adobe公司推出的视频编辑软件。该软件具有较好的兼容性,可以在 各种平台上和硬件配合使用,广泛应用于电视节目制作、广告制作、电影剪辑等领域,成 为PC 和Mac平台上应用最广泛的视频编辑软件。Premiere的最新版本是PremierePro 8。 14. 3.2.8 文件压缩/解压缩软件 计算机存储的信息种类越来越多,文件占用的空间越来越大,为了减少保存、交换数 据或在网上传输数据的耗时,对文件进行压缩就显得非常重要。压缩与解压缩是一个相 反的过程,压缩是将原来的文件通过一定的算法减少冗余信息量,解压缩通过相反的过 程将压缩文件还原成原来的文件。常用的压缩/解压缩软件有WinZip、WinRAR 等。 除了以上介绍的工具外,还有其他一些常用工具,例如,系统工具PartionMagic是常 用的自由分区软件,Ghost软件可用于硬盘备份,Windows优化大师、超级兔子等软件可 用于系统优化,daemon_tools可用于光盘镜像,等等,用户可以根据具体要求选用。 3.数据库系统 3 3.3.1 数据库系统简介 当前各应用领域存储和处理信息资源时多采用数据库系统。在了解数据库系统之 前,先了解几个基本概念,即数据、数据库、数据库管理系统和数据库系统。 1. 数据 现实生活中,人们对数据的直观认识就是数字。其实数字只是最简单的数据。从总 体上来说,数据是对事实或概念的一种表达形式,如数字、文字、图像、图形、声音、视频 等,数据的表现形式是多种多样的。 2. 数据库 数据库是长期存放在计算机内、有组织的、可共享的数据集合。人们一般将应用所 需的大量数据收集并保存起来,供进一步加工处理,提取有用的数据(对人们有用的数据 也称为信息), 这些有用的数据按一定的数据模型组织、描述和存储,可以长期存储在计 算机内,为各种用户共享使用。 3. 数据库管理系统 管理数据库的软件称为数据库管理系统,它是系统软件。它的主要任务是科学地组 织和存储数据库中的数据,并高效地获取数据和维护数据。它的主要功能包括数据定 义、数据操纵、数据库运行管理以及数据库建立和维护。 4. 数据库系统 数据库系统(DataBaseSystem,DBS)可以用图3-12 表示,它由数据库、操作系统、数 据库管理系统、应用开发工具、应用系统、用户和数据库管理员构成。 3.3.2 数据库系统的特点 数据库系统的特点体现在数据管理技术上。数据管理是对数据的组织、编码、分类、 存储、检索和维护。数据管理技术主要经历了3个阶段:人工管理、文件系统管理和数据 图3-12 数据库系统 库系统。相对于人工管理和文件系统管理,数据库系统的特点如下: (1)数据结构化。描述数据时不仅描述数据本身,还需要描述数据之间的联系。 (2)数据的共享性高。数据可以被多个用户或多个应用共享使用,数据共享从很大 程度上减少了数据冗余,节约了存储空间。 (3)数据独立性高。用户的应用程序和数据库中的数据相互独立,应用程序只处理 数据的逻辑结构,物理存储由数据库管理系统管理;而且,即使数据的逻辑结构发生变 化,用户程序也可以不改变。数据的独立性使得应用程序的维护和修改工作大为减少。 (4)数据由数据库管理系统统一管理和控制。数据库管理系统可以使得多个用户同 时存取数据库中的数据,同时提供数据的安全性保护、完整性检查、并发控制和数据库恢 复等功能。 3.3.3 数据模型 模型是对现实世界中的事物特征的抽象。数据模型是对现实世界数据特征的抽象, 是表示实体类型及实体间联系的模型。数据模型应该满足3方面的要求: (1)比较真实地模拟现实世界。 (2)容易为人理解。 (3)便于在计算机上实现。 一般一种数据模型很难满足以上3方面要求。数据库系统针对不同使用对象或应 用目的采用不同的数据模型。根据模型应用目的不同,将数据模型分为两类,即概念模 型和数据模型。 1. 数据模型的要素 数据模型的3个要素是数据结构、数据操作和数据的约束条件。 1)数据结构 数据结构是对系统静态特性的描述。它是要研究的数据对象类型的集合,这些对象 是数据库的组成成分,主要包括与数据类型、内容等有关的对象以及与数据之间的联系 有关的对象。 2)数据操作 数据操作是对系统动态特性的描述,主要包括对数据库中各种对象的值执行的操作 和操作规则,例如数据库的检索和数据插入、删除、修改等操作。 3)数据的约束条件 数据的约束条件是指完整性规则的集合。完整性规则是给定的数据模型中数据及 其联系所具有的制约和依存规则,用来限定符合数据模型的数据库状态以及状态的变 化,以保证数据的正确、有效、相容。 2.概念模型 概念模型用于对信息世界进行建模,以方便、准确地表示信息世界中的常用概念。 概念模型具有较强的语义表达能力,并且简单、清晰、易于为用户理解。概念模型的表示 方法中比较有名的是实体-联系(Entity-Relationship,E-R)模型,也称为E-R模型,该模 型使用E-R图来描述现实世界的概念模型。 下面介绍E-R模型中的基本概念的含义: (1)实体(entity)。指客观存在并可相互区别的事物。实体可以是具体的人、事、物, 也可以是抽象的概念或联系。例如,一个职工、一个学生、一个部门、一门课程、一次订货 等都可称之为实体。 (2)属性(atribute)。指实体所具有的某一特性。若干属性可以刻画一个实体。例 如,学生实体可以由学号、姓名、性别、出生日期、所在院系、入学时间等属性刻画。 (3)码(key)。指能够唯一标识实体的属性集。例如,学号是学生实体的码。 (4)域(domain)。指属性的取值范围。例如,学生性别的域是{男,女}集合。 (5)实体集(entitySet)。指同类实体的集合。例如,全体学生就是一个实体集。 (6)实体型(entityType)。相同属性的实体具有共同的特征和性质,用实体名及其 属性名集合来抽象和刻画同类实体,称为实体型。例如,“学生(学号,姓名,性别,出生日 期,所在院系,入学时间)”就是一个实体型。 3.数据模型的结构 数据模型的结构主要包括层次模型、网状模型、关系模型和面向对象模型4种,这是 按计算机系统的观点对数据模型的划分,主要用于数据库管理系统的实现。层次模型和 网状模型属于非关系模型。 1)层次模型 层次模型是数据库系统中出现得最早的数据模型,它用树状结构来表示各类实体以 及实体之间的联系。这种层次关系在现实生活中有许多实例,如家族关系、行政机构组 织关系等。 层次模型中有且只有一个根结点,这个根结点没有双亲结点,除了根结点以外的其 他结点有且只有一个双亲结点。每个结点表示一个记录类型,记录类型之间的联系用有 向边表示,父结点和子结点之间是一对多的关系。在层次模型中只能处理一对多的实体 联系。 层次模型比较简单,适用于实体间有固定联系且预先定义好的应用系统。但是,现 实世界中的很多联系是非层次性的,如果全部采用层次模型表示,容易产生不一致性,而 且层次模型对插入和删除操作的限制比较多。 2)网状模型 网状模型是用有向图结构表示实体类型以及实体间联系的数据模型。网状模型允 许一个以上的结点无双亲,一个结点可以有一个以上双亲,即这类模型去掉了层次模型 中的限制。现实世界中的很多描述类似于网状模型。 在网状模型中,每个结点表示一个记录类型,每个记录类型可包含若干个字段,结点 之间的连线表示记录类型之间一对多的父子联系。 网络模型的优点在于能直接描述现实世界,具有良好的性能。但是其结构相对于层 次模型更复杂,不利于用户掌握,编程人员需要在深入了解系统结构的基础上编写代码, 增加了编程的难度。 3)关系模型 关系模型是目前最重要的数据模型,关系数据库系统采用关系模型作为数据的组织 方式。关系模型是在严格的数据概念的基础上建立的。对于用户而言,在关系模型中, 数据的逻辑结构是一张二维表,由行和列组成。一个关系对应一张表,表中一行称为元 组,表中一列称为属性,能够唯一确定一个元组的属性称为主码,属性的取值范围称 为域。 在关系模型中,实体以及实体间的联系用关系来表示。关系必须规范化,最基本的 要求是:关系的每一个分量必须是一个不可分的数据项,不允许表中还有表。 关系模型的操作主要包括查询、插入、删除和修改数据。这些操作必须满足关系的 完整性约束条件。 关系模型相对于网状模型和层次模型的优点在于,它建立在数据概念的基础上,概 念单一,数据结构简单、清晰、易于为用户理解和使用;对编程人员来说,关系模型简化了 编程工作和数据库建立的工作。但是关系模型查询效率不是很高,需要用户进行优化 处理 4 。 )面向对象模型 面向对象模型的基本概念是类和对象。类是对现实世界的抽象描述,把抽象出来的 状态、特征和行为封装在一起;而对象是类的实例。 3.3.4 SQL 的使用 结构化查询语言(StructuredQueryLanguage,SQL)自从提出后,经过各公司的不断 修改、扩充和完善,最终成为关系数据库的标准语言。1986 年,美国国家标准学会 (AmericanNationalStandardInstitute,ANSI)的数据库委员会批准了SQL 作为关系数 据库语言的标准,并公布了SQL 标准文本,即SQL-86 。1987 年,国际标准化组织 (n,也批准了这一标准。此后ANSI 不 InternationalOrganizationforStandardizatioISO) 断修改和完善SQL 标准,在1989 年公布了SQL-89 标准,在1992 年公布了SQL-92 标 准,目前最新的SQL 标准是ISO/IEC9075—2016 。 SQL 已经成为数据库领域中的主流语言,是介于关系代数和关系演算之间的结构化 查询语言,它的功能并不仅仅是查询。SQL 包括数据定义语言(DDL )、数据操纵语言 (DML)和数据控制语言(DCL), 可以独立完成数据库生命周期中的全部活动。 63 SQL功能强大,设计巧妙,语言简洁。SQL的命令通常分为4类,如表3-1所示。 表3-1 SQL的命令类型 命令类型举 例命令类型举 例 数据查询select 数据操纵insert、update、delete 数据定义create、drop、alter 数据控制grant、revoke 下面以简单的例子说明这几种命令的基本使用方法,更多的信息请参考相应的 资料。 1.数据定义命令 数据定义命令最重要的功能是定义数据表。SQL 使用createtable语句定义数据 表,一般格式如下: create table<表名>(<列><数据类型>[列级完整性约束条件] [,<列><数据类型>[列级完整性约束条件],…] [,<表级完整性约束条件>]); 1)创建数据库 例如,创建数据库StudentDB,SQL语句如下: create database StudentDB; 2)创建学生Student表 建立学生表Student,主要包括学号、姓名、性别、年龄、所在院系5个字段,其中学号 字段不能为空,并且能唯一确定学生信息。各字段名称分别是stuID、stuName、stuSex、 stuAge、stuDept。SQL语句如下: use StudentDB; create table Student( stuID char(8) not null unique, stuName char(20), stuSex char(1), stuAge int, stuDept char(20)); 3)删除数据表 当不需要某个数据表时,可以使用droptabel语句删除它,一般的格式如下: drop tabel <表名>; 数据表一旦被删除,其中的数据、在其上建立的索引和视图都自动被删除,因此对删 除表操作要小心。 2.数据操纵命令 SQL中的数据操纵包括插入数据、修改数据和删除数据。 插入数据使用insert语句进行,可以插入元组,也可以插入子查询结果。插入单个 元组的insert语句格式如下: