科普-中华学生百科全书-第611章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
·人工智能和机器人
·数据库与信息检索
·人—机通信
·数值和符号计算
·操作系统
·程序设计语言
·软件方法学和工程
围绕这九个主科目,可以开设若干门课程。
在以上每一个领域中,都采用理论、抽象和设计三个教学过程。并归纳
出 12 个基本概念:关联、大问题的复杂性、概念和形式模型、一致性和完备
性、效率、演变、抽象层次、按空间排序、按时间排序、重用、安全性、折
衷和结论。
《93 教学计划》还要求学生了解计算机学科所固有的文化、社会、法律
和道德方面的基本问题,知道该学科的历史和现状,明白它的历史意义和作
用以及对社会的冲击,重视在该学科发展中起重要作用的哲学问题、技术问
题和美学问题,培养职业道德和法制观念。
中小学生需要学什么
对于中小学的同学来说,现在没必要限制自已将来的方向,是学应用还
是专业也不急于区分。但上面的两种要求可以参考。容易看出:计算机的基
本知识、DOS 使用、中英文输入和文书处理肯定是要学的。这里要提醒大家,
编程和数据管理也都是很重要的。数据管理在将来会与文书处理一样是基本
要求;而编程学习最有助于熟悉“计算机的思维方式”,在应用中可以很熟
悉“计算机的脾气”,学习其他有关的内容也很容易理解了。
另外,网络和多媒体正在成为电脑应用中最重要的内容,对此的学习是
越早越好。WINDOWS 很快会成为操作系统的主流,有条件的话也可应该早日
学习。
电脑的基础原理
电脑使用二进制
电脑与数据
要用计算机做任何工作,首先要将有关信息以计算机能够识别的方式存
储。现在使用计算机时,不会感觉到这是一个问题。但事实上,计算机内部
的信息不是以我们熟悉的十进制,面是以二进制编码的形式表示和存储的。
计算机处理的信息通常称为数据。它不仅指数字,还包括文字、符号、
声音、图像等。
数据是信息的具体表示形式,是信息的载体;信息是数据有意义的表现,
是数据的内涵。数据是物理性的,信息是观念性的。它们是一个密不可分的
有机的整体,在有些场合难以严格区分它们。在计算机领域,信息和数据这
两个名词常常可以通用。比如,信息存储,也可以称为数据存储。本章将向
大家介绍计算机中为何要使用二进制以及怎样用二制编码表示和存储信息。
什么是数制
数制就是记数法、进位制。目前人们通用的数制是十进制,但使用十进
制并非是天经地义的,它只不过是来源于远古时代用十指记数的一种约定俗
成的习惯。事实上,在我们的生活中也有使用非十进制的实例,比如日期、
时间的表示和进位以及英制度量衡等。
不同数制之间的区别主要是基数不同,它们的书写规则和运算规律是一
致的。为区别非十进位制数与十进制数,非十进制数应使用进位制注脚。下
面我们通过二进制(BinarySystem)与十进制(DecimalSystem)的对比来初
步了解二进制的概念。
1.数字的个数等于基数
十进制有 0~9 共十个数字。以此类推,二进制应当只有两个数字,记为
0、1。基数不是一个独立的数字。
2.逢基数进一
凡某位运算结果为基数就要进位,本数位的值记为 0,进位值为 1。在十
进制中,逢十进一。在二进制中,逢二进一。
3.每一位的权(数位值)是基数的方幂,指数自右至左递增 1
十进制:…104 103 102 101 100 10…1 10…2 10…3……
二进制:…24 23 22 21 20 2…1 2…2 2…3……
需要特别指出的是,为说明方便,此处二进制数是用十进制数的数字表
达的。
4.每一位的数值等于该位上的权与数字的乘积
例如:
1995=1000×1+100×9+100×9+1×5
1001.101B=23×1+20×1+2…1×1+2…3×1
同样,为说明方便,此处等号右边的二进制数是用十进制数字表达的。
电脑为何采用二进制
1.二进制只需用两种状态表示数字,容易实现
计算机是由电子元、器件构成的,二进制在电气、电子元器件中最易实
现。它只有两个数字,用两种稳定的物理状态即可表达,而且稳定可靠。比
如磁化与未磁化,晶体管的载止与导通(表现为电平的高与低)等。而若采
用十进制,则需用十种稳定的物理状态分别表示十个数字,不易找到具有这
种性能的元器件。即使有,其运算与控制的实现也极复杂。
2.二进制的运算规则简单
加法是最基本的运算。乘法是连加,减法是加法的逆运算(利用补码原
理,还可以转化为加法运算,类似钟表拨针时的计算),除法是乘法的逆运
算。其余任何复杂的数值计算也都可以分解为基本算术运算复合进行。为提
高运算效率,在计算机中除采用加法器外,也直接使用乘法器。
众所周知,十进制的加法和乘法运算规则的口诀各有 100 条,根据交换
率去掉重复项,也各有 55 条。用计算机的电路实现这么多运算规则是很复杂
的。
相比之下,二进制的算术运算规则非常简单,加法、乘法各仅四条:
0+0=0 0×0=0
0+1=1 0×1=0
1+0=1 1×0=0
1+1=10 1×1=1
根据交换率去掉重复项,实际各仅 3 条。用计算机的脉冲数字电路是很
容易实现的。
3.用二进制容易实现逻辑运算
计算机不仅需要算术运算功能,还应具备逻辑运算功能,二进制的 0,1
分别可用来表示假(false)和真(true),用布尔代数的运算法则很容易实
现逻辑运算。
4.二进制的弱点可以克服
二进制主要的弱点是表示同样大小的数值时,其位数比十进制或其它数
制多得多,难写难记,因而在日常生活和工作中是不便使用的。但这个弱点
对计算机而言,并不构成困难。在计算机中每个存储记忆元件(比如由晶体
管组成的触发器)可以代表一位数字,“记忆”是它们本身的属性,不存在
“记不住”或“忘记”的问题。至于位数多,只要多排列一些记忆元件就解
决了,鉴于集成电路芯片上元件的集成度极高,在体积上不存在问题。对于
电子元、器件,0 和 1 两种状态的转换速度极快,因而运算速度是很高的。
二进制运算
1.算术运算
前面已经讲过,二进制算术运算规则非常简单,现举二例加以说明。
1110
+1011
11001
即 1110B+1011B=11001B
1110
× 1011
1110
1110
0000
1110
10011010
即 1110B×1011B=10011010B
2.逻辑运算
在计算机中还经常用二进制数进行逻辑运算。逻辑运算在二进制数位之
间进行,不存在进位或借位。在逻辑运算中,二进制数中的“1”表示“真”,
“0”表示“假”。
(1)或(OR)运算
或运算又称逻辑加,运算符为“∨”或者“+”。运算规则是:
0∨0=0
0∨1=1
1∨0=1
1∨1=1
也就是说,参加运算的逻辑值只要有一个为 1,运算结果即为 1,否则为
0。
(2)与(AND)运算
与运算又称逻辑乘,运算符为“∧”或者“×”。运算规则是:
0∧0=0
0∧1=0
1∧0=0
1∧1=1
也就是说,当参加运算的逻辑值均为 1 时,运算结果才为 1,否则为 0。
(3)非(NOT)运算
非运算即对每个二进制位的逻辑值取反,运算符为在二进制数字上方加
一横线。运算规则是
0 =1
1= 0
(4)异或(XOR)运算
可以看出,如果参加运算的两个逻辑值相同,运算结果为 0,否则为 1。
下面举例说明二进制数的逻辑运算。
设 X=10110101B Y=11010110B
则 X∨Y=11110111B
X∧Y=10010100B
X=01001010B Y=00101001B
十进制数与二进制数的转换
我们在日常生活和工作中使用十进制数,在计算机中使用二进制数,因
此在计算机输入时要将十进制数转换为二进制数,在计算机输出时要将二进
制数转换为十进制数。这种转换过程,是由计算机自动完成的。为简便起见,
这里我们只介绍整数间的转换。
十进制数与二、八、十六进制数的转换参见表 1.1。
表 1.1
十进制 二进制 八进制 十六进制
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
十进制 二进制 八进制 十六进制
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 16 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11
1.十进制数转换为二进制数
整数的转换,通常采用除 2 取余法。即将十进制数依次除以 2,再把每
次得到的余数从后向前依次排列就得到相应的二进制数。例如:
即 75=1001011B
实际上,直接将十进制数用 2 的 n 次幂展开更为方便。例如:
75=64+8+2+1
=26×1+25×0×24×0+23×1+22×0+21×1+20×1
=1001011B
2.二进制数转换为十进制数
将二进制数每一位的数值用十进制表达并相加即得到相应的十进制数。
例如:
11010010B=27×1+26×1+25×0+24×1+23×0+22
×0+21×1+20×1
=128+64+16+2
=210
八进制与十六进制
二进制位数多,人们记忆和读写不方便,因此又引进与二进制密切相关
的八进制(Octal System)和十六进制(Hex…adecimal System),在书写
和输入计算机时可以使用。
1.八进制
八进制共有 O~7 共八个数字,逢八进一。鉴于 8=23,二进制数的每 3
位(从小数点位置分别向左、右数,小数点后最后一组不足 3 位时要补 0)
对应与其等值的八进制数相应的位,因此八进制数与二进制数的相互转换十
分方便。例如:
10 110 101. 110 3 7.4
↓ ↓ ↓ ↓ ↓ ↓
2 6 5. 6 011 111.100
即 10110101.11B=265.60 37.40=11111.1B
2.十六进制
十六进制共有十六个数字,除 0~9 外,又引入 A~F,分别相当于十进
制的 10~15,逢十六进一。鉴于 16=24,二进制数的每 4 位(从小数点位置
分别向左、右数,小数点后最后一组不足 4 位时要补 0)对应与其值相等的
十六进制数相应的 1 位,因此十六进制数与二进制数的相互转换也是十分方
便的。例如:
1011 0101. 1100 4 A E
↓ ↓ ↓ ↓ ↓ ↓
B 5. C 0100 1010 1110
即 10110101.11B=B5.CH 4AEH=
10010101110B
3.八、十六、十进制数的转换
八进制数、十六进制数转换为十进制数,可以分别采用除八取余,除十
六取余的方法。十进制数转换为八进制数,十六进制数,则可分别将其每一
位的数值用十进制表达并相加即可。这同二进制数与十进制数转换的方法是
类似的。也可以通过二进制数作为中间媒介进行转换,即
电脑中的信息编码
我们已经知道,计算机中的数值是以二进制的形式存储的。事实上,计
算机中其它各类数据也都以二进制的形式存储,或者说,是以“0”和“1”
编成二进制数码实现的。
存储单位
计算机存储信息的最小单位是一个二进制数位(Binarydigit),简称 bit
(比特,位)。最基本的存储单元由 8 个二进制位组成,称为 Byte(拜特,
字节)。一个字节可存放一个字符。在计算机中,字节是一个不可分割的基
本存储单元。
在实际应用中,还经常使用 KB(KiloBytes,千字节),MB(MegaBytes
兆字节),GB(GigaBytes,吉字节)作为存储信息容量的单位。其中 KB 表
示 210,即 1024 字节,MB 表示 220字节,即约 1 百万字节,GB 表示 230字节,
即约 10 亿字节。
ASCII 码
计算机中的字符,比如英文字母,阿拉伯数字和许多符号,国际上广泛
使用 ASCII 码(American Standard Code forInformation Interchange,即
美国标准信息交换码)表示,参见《第十五册附录》。它已被国际标准化组
织接收为国际标准,称为 ISO—646。目前常用的是 7 位 ASCII 码版本。它用
一个字节表示一个字符,每个字节的最高位为标识位,恒定为 0,其余 7 位
编成 27=128 个代码,表示 128 个字符。其中包括大、小写英文字母、阿拉伯
数字和一些运算符号、标点符号和控制字符。
附录一中字符的排列顺序用十进制和十六进制两种形式的序号给出,其
中用十六进制数所表示的二进制数码是 ASCII 码的实际存储方式。
表中序号为 32 的字符为 SP(SpaceCharacter),表示一个空格。
序号