识 基本算法处理 * 具有完成下列过程的能力: 现实世界(指知识范畴的问题) —>信息世界(表达解法) —>计算机世界(将解法用计算机能实现的数据结构和算法描述出来) * 简单搜索 * 字串处理 * 排序 * 查找 * 统计 * 分类 * 合并 * 简单的回溯算法 * 简单的递归算法
二、复赛内容与要求:
计算机 软 件 数 据 结 构 程 序 设 计 *操作系统的使用知识 *编程语言的使用 *结构类型中的记录类型 *指针类型 *文件(提高组必须会使用文本文件输入) *链表 *树 *图# *程序设计能力 *设计测试数据的能力 *运行时间和占用空间的估算能力# *排列组合的应用 算 *进一步加深回溯算法、递归算法 法 *分治法 处 *搜索算法:宽度、深度优先算法 理 *表达式处理:计算、展开、化简等# *动态规划# 在初赛的内容上增加以下内容(2008年修改稿):
三、初赛试题类型:注:试题语言两者选一
(程序设计语言: FREE PASCAL、C、C++)
*判断 *填空 *完善程序 *读程序写运行结果 *问答 四、推荐读物:
*分区联赛辅导丛书 *学生计算机世界报及少年电世界杂志
-6-
第一章 计算机基础知识
1.1 计算机的基本常识
1.1.1 计算机的产生与发展
计算机的产生是20世纪最重要的科学技术大事件之一。世界上的第一台计算机(ENIAC)于1946年诞生在美国宾夕法尼亚大学,到目前为止,计算机的发展大致经历了四代:
① 第一代电子管计算机,始于1946年,结构上以CPU为中心,使用计算机语言,速度慢,存储量小,主要用于数值计算;
② 第二代晶体管计算机,始于1958年,结构上以存储器为中心,使用高级语言,应用范围扩大到数据处理和工业控制;
③ 第三代中小规模集成电路计算机,始于1964年,结构上仍以存储器为中心,增加了多种外部设备,软件得到了一定的发展,文字图象处理功能加强;
④ 第四代大规模和超大规模集成电路计算机,始于1971年,应用更广泛,很多核心部件可集成在一个或多个芯片上,从而出现了微型计算机。
我国从1956年开始电子计算机的科研和教学工作,1983年研制成功1亿/秒运算速度的“银河”巨型计算机,1992年11月研制成功10亿/秒运算速度的“银河II”巨型计算机,1997年研制了每秒130亿运算速度的“银河III”巨型计算机。 目前计算机的发展向微型化和巨型化、多媒体化和网络化方向发展。计算机的通信产业已经成为新型的高科技产业。计算机网络的出现,改变了人们的工作方式、学习方式、思维方式和生活方式。
1.1.2 计算机系统及工作原理
1.计算机的系统组成
计算机系统由软件和硬件两部分组成。硬件即构成计算机的电子元器件;软件即程序和有关文档资料。
(1) 计算机的主要硬件
输入设备:键盘、鼠标、扫描仪等。 输出设备:显示器、打印机、绘图仪等。 中央处理器(CPU):包括控制器和运算器运算器,可以进行算术运算和逻辑运算;控制器是计算机的指挥系统,它的操作过程是取指令——分析指令——执行指令。 存储器:具有记忆功能的物理器件,用于存储信息。存储器分为内存和外存
①内存是半导体存储器(主存):
它分为只读存储器(ROM)和随机存储器(RAM)和高速缓冲存储器(Cache);
ROM:只能读,不能用普通方法写入,通常由厂家生产时写入,写入后数据不容易丢失,也可以用特殊方法(如紫外线擦除(EPROM)或电擦除(EEPROM_)存储器); RAM:可读可写,断电后内容全部丢失;
Cache:因为CPU读写RAM的时间需要等待,为了减少等待时间,在RAM和CPU间需要设置
-7-
高速缓存Cache,断电后其内容丢失。
②外存:磁性存储器——软盘和硬盘;光电存储器——光盘,它们可以作为永久存器;
③存储器的两个重要技术指标:存取速度和存储容量。内存的存取速度最快(与CPU速 度相匹配),软盘存取速度最慢。存储容量是指存储的信息量,它用字节(Byte)作为基本单位, 1字节用8位二进制数表示,1KB=1024B,1MB=1024KB,lGB=1024MB (2)计算机的软件
计算机的软件主要分为系统软件和应用软件两类:
①系统软件:为了使用和管理计算机的软件,主要有操作系统软件如,WINDOWS 95/98/ 2000/NT4.0、DOS 6.0、UNIX等;WINDOWS 95/98/2000/NT4.0是多任务可视化图形 界面,而DOS是字符命令形式的单任务的操作系统。
②应用软件:为了某个应用目的而编写的软件,主要有辅助教学软件(CAI)、辅助设计软件(CAD)、文 字处理软件、工具软件以及其他的应用软件。 2.计算机的工作原理
到目前为止,电子计算机的工作原理均采用冯.若依曼的存储程序方式,即把程序存储在计算机内,由计算机自动存取指令(计算机可执行的命令=操作码+操作数)并执行它。工作原理图如下:
1.1.3 计算机中有关数及编码的知识
1.计算机是智能化的电器设备
计算机就其本身来说是一个电器设备,为了能够快速存储、处理、传递信息,其内部采用了大量的电子元件,在这些电子元件中,电路的通和断、电压高低,这两种状态最容易实现,也最稳定、也最容易实现对电路本身的控制。我们将计算机所能表示这样的状态,用0,1来表示、即用二进制数表示计算机内部的所有运算和操作。 2.二进制数的运算法则
二进制数运算非常简单,计算机很容易实现,其主要法则是: 0+0=0 0+1=1 1+0=1 1+1=0 0*0=0 0*1=0 1*0=0 1*1=1
由于运算简单,电器元件容易实现,所以计算机内部都用二进制编码进行数据的传送和计算。 3.十进制与二进制、八进制、十六进制数之间的相互转换 (1)数的进制与基数
计数的进制不同,则它们的基数也不相同,如表1-1所示。 进制 二进制 八进制
基数 0 ,1 0,1,2,3,4,5,6,7 -8-
特点 逢二进一 逢八进一 十六进制 0,1,2,...,9,A,B,C,D,E,F 逢十六进一 (2)数的权
不同进制的数,基数不同,每位上代表的值的大小(权)也不相同。 如:(219)10=2*102+1*101+9*100
(11010)2=1*24+1*23+0*22+1*21+1*20 (273)8=2*82+7*81+3*80
(27AF)16=2*163+7*162+10*161+15*160 (3)十进制数转换任意进制
1) 将十进制整数除以所定的进制数,取余逆序。 (39)10=(100111)2 (245)10=(365)8
2)将十进制小数的小数部分乘以进制数取整,作为转换后的小数部分,直到为零或精确到小数点后几位。 如:(0.35)10=(0.01011)2 (0.125)10=(0.001)2 (4)任意进制的数转换十进制 按权值展开:
如:(219)10=2*102+1*101+9*100
(11010)2=1*24+1*23+0*22+1*21+1*20=26 (273)8=2*82+7*81+3*80=187
(7AF)16=7*162+10*161+15*160=1867 4.定点数与浮点数
定点数是指数据中的小数点位置固定不变。由于它受到字长范围的限制,所能表示的数的范围有限,计算结果容易溢出。
浮点数的形式可写成:N=M*2E(其中M代表尾数,E代表阶码)其形式如下: 阶码 尾数(包括符号位) 5.ASCII编码
由于计算机是电器设备,计算机内部用二进制数,这样对于从外部输入给计算机的所有信息必须用二进制数表示,并且对于各种命令、字符等都需要转换二进制数,这样就牵涉到信息符号转换成二进制数所采用的编码的问题,国际上统一用美国标准信息编码(ASCII)它可用7位二进制数表示,存储时用一个字节,它的最高位为0。因此基本的ASCII字符集有128个如: 0-9:48-57:00110000-... A-Z:65-90 :01000001-... a-z:97-122:01100000-... 6.汉字编码与汉字输入法 (1)机内码
ASCII码不能表示汉字,因此要有汉字信息交换码,我国国家标准是gb2312,它也被称作国际码。
-9-
它由两个字节组成,两个字节的最高位都为1。 gb2312共收纳6763个汉字,其中,一级汉字(常用字)3755个按汉字拼音字母顺序排列,二级汉字3008个按部首笔画次序排列。 (2)汉字输入码(外码)
目前,汉字输入法主要有键盘输入、文字识别和语音识别。键盘输入法是当前汉字输入的主要方法。它大体可以分为:
流水码:如区位码、电报码、通信密码,优点重码律少,缺点难于记忆; 音码:以汉语拼音为基准输入汉字,优点是容易掌握,但重码律高; 形码:根据汉字的字型进行编码,优点重码少,但不容易掌握;
音形码:将音码和形码结合起来,能减少重码律同时提高汉字输入速度。 (3)汉字字模
供计算机输出汉字(显示和打印)用的二进制信息叫汉字字形信息也称字模。通用汉字字模点阵规格有16*16,24*24,32*32,48*48,64*64,每个点在存储器中用一个二进制位((bit)存储,如一个16*16点阵汉字需要32个字节的存储空间。
1.1.4 原码、反码与补码
在计算机中,数据是以补码的形式存储的:
在n位的机器数中,最高位为符号位,该位为零表示为正,为1表示为负; 其余n-1位为数值位,各位的值可为0或1。
当真值为正时:原码、反码、补码数值位完全相同; 当真值为负时:
原码的数值位保持原样,
反码的数值位是原码数值位的各位取反, 补码则是反码的最低位加一。 注意符号位不变。 如:若机器数是16位:
十进制数 17 的原码、反码与补码均为: 0000000000010001
十进制数-17 的原码、反码与补码分别为:1000000000010001、1111111111101110、1111111111101111
1.1.5 逻辑运算
1.逻辑运算
逻辑与:同真则真 逻辑或:有真就真 逻辑非:你真我假 逻辑异或:不同则真 2.按位运算
按位与∩:同1则1 如10010101∩10110111=10010101 按位或∪:有1则1 如10010101∪10110111=10110111 3.逻辑化简 化简定律:
(1)交换律: A + B = B + A ,A·B = B·A (2)结合律: (A + B)+ C = A + (B + C ), (A·B)·C = A·(B·C)
-10-