最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

信息学奥赛辅导--基础知识

来源:动视网 责编:小OO 时间:2025-09-29 18:14:01
文档

信息学奥赛辅导--基础知识

基础知识部分计算机的诞生和发展1946年第一台计算机(ENIAC)在美国诞生,主要器件是电子管,能进行5000次/秒的加法。电子计算机从诞生到现在,大致经历了四代:1、电子管计算机(1946年),以处理器为中心,使用机器语言,主要用于数值计算;2、晶体管计算机(1958年),以存储器为中心,使用高级程序设计语言,应用到数据处理和工业控制;3、中小规模集成电路计算机(19),以存储器为中心,除用于数值计算和数据处理,还可以处理图象、文字和资料;4、(超)大规模集成电路计算机(1971),
推荐度:
导读基础知识部分计算机的诞生和发展1946年第一台计算机(ENIAC)在美国诞生,主要器件是电子管,能进行5000次/秒的加法。电子计算机从诞生到现在,大致经历了四代:1、电子管计算机(1946年),以处理器为中心,使用机器语言,主要用于数值计算;2、晶体管计算机(1958年),以存储器为中心,使用高级程序设计语言,应用到数据处理和工业控制;3、中小规模集成电路计算机(19),以存储器为中心,除用于数值计算和数据处理,还可以处理图象、文字和资料;4、(超)大规模集成电路计算机(1971),
基础知识部分

计算机的诞生和发展          

1946年第一台计算机(ENIAC)在美国诞生,主要器件是电子管,能进行5000次/秒的加法。

电子计算机从诞生到现在,大致经历了四代:

1、电子管计算机(1946年),以处理器为中心,使用机器语言,主要用于数值计算;

2、晶体管计算机(1958年),以存储器为中心,使用高级程序设计语言,应用到数据处理和工业控制;

3、中小规模集成电路计算机(19),以存储器为中心,除用于数值计算和数据处理,还可以处理图象、文字和资料;

4、(超)大规模集成电路计算机(1971),开始出现了微型计算机;

5、光(速)计算机、超导计算机、人工智能计算机将可能成为第五代计算机;

电子计算机发展趋势:体积更小、重量更轻、功能更强、价格更贱、使用更广。

现代计算机的特点

1、运算速度快

2、计算精度高(算法技巧的改变,可使得计算机的技术精度越来越高)

3、有记忆和逻辑判断能力(存储器可以存储大量的数据和程序)

4、自动处理能力(只要有事先编制好的程序,计算机就能按程序要求自动运行)

计算机的应用(对照计算机的特点记忆)

1、数值计算   2、自动控制   3、事物处理   

4、辅助教学(计算机辅助教学简称)5、辅助设计(计算机辅助设计简称) 6、辅助测试(计算机辅助测试简称)7、信息检索   8、出版印刷   

9、网络通信  10、多媒体技术

计算机的基本组成 (由硬件和软件两部分组成)

A、硬件

1、输入设备,接受用户的程序和数据,并转换成二进制代码送入内存储器存储起来

   常见的输入设备有:键盘、扫描仪、鼠标

2、输出设备,将输入的信息和计算机处理的结果转换成人们能接受的形式,显示或打印出来

   常见的输出设备有:打印机、绘图仪、显示器

输入与输出设备(I/O设备)又统称为外部设备,而软盘驱动器、可读写光盘驱动器是既能输入又能输出的I/O设备

3、运算器,程序描述的算法是在运算器中完成的,运算器对代码进行各种计算,它不仅能进行加、减、乘、除等基本运算,还可以进行基本逻辑运算,实现逻辑判断、比较和移位等操作。

4、控制器,计算机的指挥系统,它的运算过程就是取指令->分析指令->执行指令,周而复始。

通过电路集成后,我们将运算器和控制器结合在一起,并称为处理器,简称为CPU。CPU的性能是衡量计算机性能的主要标志之一。CPU的主要技术指标有字长、主频、型号:

a、字长,是CPU一次能处理的二进制位数,常用的有8位、16位、32位和位等,所以字长与芯片的型号有关;

b、主频和MIPS:主频是描述CPU运算速度的基本参数,单位Hz。一般说奔二400中的400指的就是该CPU主频为400MHz , 但CPU的各种指令执行的时间是不同的,一些复杂的指令所用的时间是最基本指令的8倍甚至更多,因此更能反映CPU工作能力的指标是MIPS(每秒百万条指令),是CPU在一秒种平均执行指令的条数;

c、型号,由厂家决定

5、存储器,存储器存储容量的基本单位是“字节”(byte),用“B”表示,一个字节由8个二进制位(bit)组成。其中1B=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB

  a、主存储器,也称内存储器,简称内存,是CPU能直接访问的存储器。内存按工作方式的不同分为随机存储器(RAM)<可读、写,一旦断电其中存储的信息就会丢失>和只读存储器(ROM)<只读,常用来存放一些固定的程序、数据等,断电数据不丢失>

  内存中的每一个单位,都被赋予一个唯一的序号,成为地址。CPU凭借地址,准确的操纵每个单位的执行顺序。

  b、辅助存储器,又称外存储器,简称外存(运算速度低于内存)

    包括:硬盘存储器、软盘存储器、光盘存储器

补充:一般情况下,计算机的主存的速度要比CPU的速度低一个数量级,为弥补这一差距,在CPU和主存之间设置了了高速缓冲存储器(cache,简称高速缓存)

B、软件

1、系统软件是计算机中最靠近硬件层次的软件,对计算机系统资源进行管理和控制。典型的系统软件是操作系统和计算机语言翻译系统

2、支撑软件是支撑其他软件的开发和维护的软件,数据库管理系统、网络软件开发环境、环境数据库、各种接口软件和工具组(大家常见的有各种驱动程序)

3、应用软件

计算机的工作原理(提高组掌握)

冯·诺依曼计算机结构设计思想是现代计算机制造的基础理论依据。该结构设计的主要知道思想是3点:

1、计算机内部用二进制表示数据和指令,并进行运算。

2、计算机由存储器、运算器、控制器、I/O设备构成。

3、程序和数据一样,用二进制数据存储在存储器中。

微型计算机由处理器、存储器、输入和输出设备构成,它们之间由总线(包括数据总线、控制总线、地址总线)连接。计算机的基本工作过程是:从输入设备输入数据和程序,存储在存储器中,然后由处理器中控制器逐一从存储器中取出指令,指挥计算机进行计算,运算结果存入存储器,最后从输出设备输出结果。

其中,地址总线决定了CPU寻指的范围,数据总线决定了CPU能访问的存储空间的大小

有关病毒的知识

病毒是一种特殊的人为编写的非法应用程序,一般是附在正常程序(将该程序成为宿主程序)当中。病毒的特点有:隐藏性、传染性、潜伏性、可触发性

病毒的传染是以计算机系统的运行和读写磁盘为基础的,没有这个两个条件,病毒是不会被传染的,因为:

1、不运行,病毒程序就不可能对磁盘读写

2、没有磁盘的读写,病毒就不能传入磁性存储介质中,而只能驻留在内存或更本无法驻留内存

计算机网络

计算机网络是指不同地理位置上具有功能的多台计算机系统,通过通信设备和传输介质按一定几何结构连接起来,并在网络软件系统(包括网络通信协议、操作系统及应用软件等)的控制下,实现网络中各台计算机之间的通信联系、数据传输与资源共享。

计算机网络从地域上分为:局域网、城域网、广域网

计算机网络拓扑结构是指网络中计算机系统(包括通信线路和节点)的几何排列形状,它将直接影响网络中通信介质的访问控制与数据传输方式。

计算机网络有哪些作用:1、通信协作 2、获取信息 3、资源共享 4、分布式控制与处理

因特网是目前世界上影响最大的国际性计算机网络,是一个网络的网络。它以TCP/IP网络协议将不同类型、不同规模、位于不同位置的计算机网络联成一个整体。因特网的前身是ARPA网。

根据TCP/IP协议,因特网上每个主机都有一个地址,而且,因特网上各个主机的地址是唯一的,人们将它们称为“IP地址”,由一组被小数点分隔的4个0~255之间的数值组成,也就是4个八位的二进制组成。

各进制之间的转换

(1)"十进制"与"二进制"的转换:是十进制向二进制的转换和二进制向十进制的转换。对于一个十进制数X,设定其等值的二进制数为:b n b n-1 …2 b 1 b 0 ,其中b i 是二进制数的数位数字。则有

X(10) = b n b n-1 …2 b 1 b 0 = b n×2 n + b n-1×2 n-1 +……+ b 1×2 1 + b 0×20 

可见,要将这个十进制数转换为二进制数的关键是求出二进制数的每一位 b i 。分析这个式子,发现

     X(10)=(b n×2 n-1 + b n-1×2 n-2 +……+ b 1×20 )×2 + b 0

将等式两端同除以2 得

     X(10)/ 2 = b n×2 n-1 + b n-1×2 n-2 +……+ b 1×20 余数为 b0 

因为除数是2 ,所以X(10)/ 2 的余数b0必为0或1 ,即为二进制的数字。第一次除法运算就求得了等值二进制的最低位上的数字。对X(10)/ 2 的商再除以2 ,其余数即为b1 。如此不断对前一个商除以2,取余数,直到商为0时停止,就求得了等值二进制数的所有数位,也即完成了十进制数到二进制数的转换。

  例,将十进制数1234转换为二进制数。 

1234/2 = 617 余 0

617/2 = 308 余 1

308/2 = 154 余 0

154/2 = 77 余 0

77/2 = 38 余 1

38/2 = 19 余 0

19/2 = 9 余 1

9/2 = 4 余 1

4/2 = 2 余 0

2/2 = 1 余 0

1/2 = 0 余 1

即,1234(10)= 10011010010(2) 。实际上这里给出的是对整数的转换方法,具体实施转换时可如下所示过程进行。并称之为"除2取余法"。

  上面给出的是纯整数的转换方法。对于纯小数有不同的转换方法。还是先分析一下。例如有纯小数X ,

  X(10) =0. b -1 b-2 … b-(m-1)b -m = b-1×2-1 + b -2×2-2 +……+ b -(m-1)×2 -(m-1) + b -m×2-m

将两端乘以2得:

X(10)×2 = b-1×20 +( b -2×2-1+……+ b -(m-1)×2 -(m-2) + b -m×2-(m-1) )

  可见,X(10)×2 的整数位与b-1相等。因为b-1×2 0 = b-1×100 ,而且X(10)×2 向整数位的进位只能是0或1 。即第一次乘2求得了第一位二进制数位。将积的小数部分再乘以2就求得第二位二进制数位。如此继续进行,求出所有的二进制数位。例如十进制数0.71865 转换为二进制的过程是:

0.71875×2 = 1.4375 整数部分为 1

0.4375×2 = 0.875 整数部分为 0

0.875×2 = 1.75 整数部分为 1

0.75×2 = 1.5 整数部分为 1

0.5×2 = 1.0 整数部分为 1

  故有0.71875(10) = 0.10111(2) 。具体实施转换时可如下所示过程进行。并称之为"乘2取整法"。

  在纯小数的转换过程中,当积的小数部分为0时转换终止。但有些小数转换时为无限循环小数,不出现小数部分为0。这时根据转换的精确度决定终止的位数。如,0.7转换时有0.7(10) =0.101100110011…(2) ,它以0110循环。这时,若精确度取4位,则结果为0.1011;若精确度取6位,则结果为0.101101,第7位的1向高位进1,即0舍1入。

  对任意一个实数进行转换时,先将整数部分和小数部分分别进行转换,然后将两者并在一起。如实数1234.71975 的整数部分的二进制数为 10011010010,小数部分的二进制数为 0.10111,则转换的结果是二进制数 10011010010.10111。

  二进制数到十进制数的转换比较简单。方法是将一个二进制数表示为以2为数基的方幂的多项式,根据这个多项式采用十进制方式进行进算,其结果即为该二进制数转换成十进制数的结果。例如,二进制数 1001101的等值十进制数转换是:

  1001101(2)= 1×26 + 0×25+ 0×24+1×23+ 1×22+ 0×21+ 1×2 0 = 77(10)又如带小数的二进制数1001101.1011的等值十进制数转换是:

1001101.1011=1×26 +0×25+0×24+1×23+ 1×22+ 0×21+ 1×20+1×2-1+0×2-2+ 1×2-3+1×2-4=77.6875(10)

  (2)"二进制"与"八进制"和"十六进制"的转换:是二进制向八进制和十六进制的转换及八进制和十六进制向二进制的转换。由于二进制数表示的数位比较长,不便于书写和阅读;因此考虑用既有较少的数位,又不失二进制的特点的进位制来表示。八进制和十六进制是常用于这一目的的进位制。二进制数向八进制数转换的方法是:先以小数点为基准分别向左向右每三为一组,将数分成若干组。再把每一组看成一个的(整)二进制数用二进制向十进制转换的方法转换成一位数字,并按原分组的次序排列即的等值的八进制数。例如有二进制数10011010010,其转换原理是:

  如, 10011010010(2)=(010)(011)(010)(010)(2)= (0 ×211+1×210+0×29)+( 0×28+ 1×27+1×26 )+( 0× 25 +1×24+0×23 )+( 0× 22 + 1× 21+ 0×20)

   = (0 ×22+ 1×21 +0×20)×29 +( 0×22+ 1×21 +1×20 )×26+( 0× 25+1 × 24 + 0×23 )×23 +( 0×22+ 1×21+ 0×20)×20

   = 2×83+ 3×82 +2×81 + 2×80 

   = 2322(8)

  因为3位二进制数计算的结果只能得到0、1、2、…、7的数,正好是八进制的数码。又从上式最后看到,每一位的位权正好是八进制数的位权。

  又如二进制数1001101.1011是带小数的,其转换也类似。 

   1001101.1011=(001)(001)(101).(101)(100)

    =(0×28 + 0×27 + 1×26)+( 0 ×25 +0×24 +1×23 )+ (1×22 + 0×21+ 1×20)+(1×2-1 + 0× 2-2 + 1×2-3 )+(1×2-4+ 0×2-5 + 0×2-6 )= 1×82 +1×81 +5×80 + 5×8-1 +4×8-2 = 115.54(8)

  要把八进制数转换为二进制数采用相反的方法即可。即将每一个八进制数字用三位二进制表示出来,在按八进制数原来的次序排列这些二进制位组即的等值的二进制数。

  为简化二进制和八进制之间的相互转换,把八进制数码与二进制分组的关系列表如下:

八进制数码01234567
二进制数000001010011100101110111
  利用该表很容易实现二进制和八进制之间的相互转换。如,

  依向下箭头看是八进制向二进制的转换;依向上箭头看是二进制向八进制的转换。

  二进制与十六进制之间的相互转换方法和二进制与十六进制之间的相互转换方法基本一致。不同的是,以小数点为基准分别向左向右每四为一组分组。另一个不同是,每组二进制数计算的结果有16个数字:0,1,…,9,10,11,12,13,14,15等。也即十六进制有16个数字字符。从这个意义出发,用A,B,C,D,E,F表示数字字符10,11,12,13,14,15。

  如, 10011010010(2)= (0100)(1101)(0010)(2)

   = (0×211 + 1×210 + 0×29+ 0×28)+(1×27 + 1×26 + 0× 25 +1×24)+(0×23 +0×22 +1×21 +0×20)

   = (0×23 +1×22 +0×21+ 0×20)×162+(1×23 + 1×22 + 0×21 + 1×20)×161+(0×23 + 0×22 +1×21 +0×20)×16 0

   = 4×162 +13×161 +2×160 = 4×162 +D×161 +2×160 = 4D2(16)

  同样可以提供一张十六进制数字字符与四位二进制数位组的对应关系表,以简化转换。根据该表就可以很容易地在十六进制数和二进制数之间进行转换。

十六进制数码01234567
二进制数00000001001000110100010101100111
十六进制数码89ABCDEF
二进制数10001001101010111100110111101111
如:

  八进制和十六进制表示的实质还是二进制。使用八进制和十六进制可缩短二进制表示的数位长度,也可简化十进制到二进制的转换。即先将十进制数转换为八进制或十六进制数,在将其转换为二进制数。如,

原码、补码的概念

数值在计算机中表示形式为机器数,计算机只能识别0和1,使用的是二进制,而在日常生活中人们使用的是十进制,"正如亚里士多德早就指出的那样,今天十进制的广泛采用,只不过我们绝大多数人生来具有10个手指头这个解剖学事实的结果.尽管在历史上手指计数(5,10进制)的实践要比二或三进制计数出现的晚."(摘自<<数学发展史>>有空大家可以看看哦~,很有意思的).为了能方便的与二进制转换,就使用了十六进制(2)和八进制(2).下面进入正题.

数值有正负之分,计算机就用一个数的最高位存放符号(0为正,1为负).这就是机器数的原码了.假设机器能处理的位数为8.即字长为1byte,原码能表示数值的范围为

(-127~-0 +0~127)共256个.

  有了数值的表示方法就可以对数进行算术运算.但是很快就发现用带符号位的原码进行乘除运算时结果正确,而在加减运算的时候就出现了问题,如下: 假设字长为8bits

( 1 ) 10-  ( 1 )10 =  ( 1 )10 + ( -1 )10 =  ( 0 )10

(00000001)原 + (10000001)原 = (10000010)原 = ( -2 ) 显然不正确.

  因为在两个整数的加法运算中是没有问题的,于是就发现问题出现在带符号位的负数身上,对除符号位外的其余各位逐位取反就产生了反码.反码的取值空间和原码相同且一一对应. 下面是反码的减法运算:

 ( 1 )10 -  ( 1 ) 10=  ( 1 ) 10+ ( -1 ) 10=  ( 0 )10

 (00000001) 反+ (11111110)反 =  (11111111)反 =  ( -0 )  有问题.

( 1 )10 -  ( 2)10 =  ( 1 )10 + ( -2 )10 =  ( -1 )10

(00000001) 反+ (11111101)反 =  (11111110)反 =  ( -1 ) 正确

问题出现在(+0)和(-0)上,在人们的计算概念中零是没有正负之分的.(印度人首先将零作为标记并放入运算之中,包含有零号的印度数学和十进制计数对人类文明的贡献极大).

于是就引入了补码概念. 负数的补码就是对反码加一,而正数不变,正数的原码反码补码是一样的.在补码中用(-128)代替了(-0),所以补码的表示范围为:

(-128~0~127)共256个.

注意:(-128)没有相对应的原码和反码, (-128) = (10000000)  补码的加减运算如下:

( 1 ) 10-  ( 1 ) 10=  ( 1 )10 + ( -1 )10 =  ( 0 )10

(00000001)补 + (11111111)补 =  (00000000)补 = ( 0 ) 正确

( 1 ) 10-  ( 2) 10=  ( 1 )10 + ( -2 )10 =  ( -1 )10

(00000001) 补+ (11111110) 补=  (11111111)补 = ( -1 )  正确

   所以补码的设计目的是:

     ⑴使符号位能与有效值部分一起参加运算,从而简化运算规则.

⑵使减法运算转换为加法运算,进一步简化计算机中运算器的线路设计

  所有这些转换都是在计算机的最底层进行的,而在我们使用的汇编、C等其他高级语言中使用的都是原码。

作业:1、联系实际努力记忆、理解现代计算机的特点、现代计算机的特点、计算机的应用、计算机的基本组成、计算机的工作原理(提高组掌握)、有关病毒的知识、计算机网络7个方面的内容,有条件的话,可以自己去网上查找一下这7个方面的内容。

2、联系习题

(11011001)2=( )10

把下列换算成二进制

(75)10 =

(37)8=

(2A)16=

运算式(2047) 10-(3FF)16+(2000)8的结果是(  )

算式(2047)10一(3FF)16+(2000)8的结果是(。

十进制11/128可用二进制码序列表示为:()

A)1)1)0)0.0001011

与二进制数 1101.01101 等值的十六进制数为()

A)5)5)D)D.68

(34)10  =( )2 (10110)2  =( )10

(FE)16  =( )2 (456)10  =( )16

(1100110)2  =( )16 (F154)16  =( )10

(10110.011)2  =( )10 (345.96)10  =( )2

(347)8  =( )2 (10110)2  =( )10

-5的原码:10000101. -5的补码

[-1.0011]原,求其  反码、补码

[X]补=11100,求[-X]补,[X/2]补及[2X]补

文档

信息学奥赛辅导--基础知识

基础知识部分计算机的诞生和发展1946年第一台计算机(ENIAC)在美国诞生,主要器件是电子管,能进行5000次/秒的加法。电子计算机从诞生到现在,大致经历了四代:1、电子管计算机(1946年),以处理器为中心,使用机器语言,主要用于数值计算;2、晶体管计算机(1958年),以存储器为中心,使用高级程序设计语言,应用到数据处理和工业控制;3、中小规模集成电路计算机(19),以存储器为中心,除用于数值计算和数据处理,还可以处理图象、文字和资料;4、(超)大规模集成电路计算机(1971),
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top