1、第 1章 计算机基础1.1 数据 、 信息 、媒体和多媒体1.2 计算机中数值数据信息的表示1.3 计算机中非数值数据信息表示1.4 微型计算机基本工作原理1.5 评估计算机主要技术指标2.信息对人们有用的数据称为信息。计算机信息处理(或数据处理)过程:数据采集、输入 组织、存贮、建库 加工、转换、分类等 向人们输出有用信息信息处理的目的是获取有用信息。1.数据对事实、概念或指令的一种特殊表达方式,并可由人工或自动进行加工处理、传输或转换。常见数据:数字、文字、图像、声音等。当这些数据在计算机中表现时,常以二进制编码形式表示。 a) 数值型数据: 数值类数据b) 非数值型数据:图像、声音、字符
2、等。计算机中的数据第 1章 计算机基础1.1 数据、信息、媒体和多媒体与计算机信息处理有关的媒体有 5种: 感觉媒体: 感知器官直接感觉的媒体,如声音、文字、图画、气味等。 表示媒体: 计算机内部表示感觉媒体的特殊形式,如二进制编码。 存贮媒体: 存放表示媒体的物理实体,如磁盘、光盘、半导体存贮器等。 表现媒体: 将感觉媒体 表示媒体(磁盘、扫描仪、话筒等)将表示媒体 感觉媒体(显示器、打印机、音箱等)的物理设备。 传输媒体: 将表示媒体从一台计算机传输到另一台计算机的通信载体,如同轴电缆、光纤、电话线等。4.多媒体 多媒体 多种感觉媒体多媒体技术 能够交互式地综合处理多种不同感觉媒体的信息处
3、理技术。多媒体计算机 具有多媒体技术的计算机3.媒体 承载信息的载体(媒介、媒质)第 1章 计算机基础1.2.1 机器数和真值按进位的方法计数称为 进位计数制 ,凡进位计数制都可按权展开:anrn+an-1rn-1+ + a1r1 + a0r0 +b1r-1+ b2r-2 + + bmr-mr = 2, 10, 8, 16 基数rk 位权一个数,值的大小 =各位权乘以各位上的值。2#:计算机中数的表示方法( Binary B)8# 16#: 将 2#表示的更简洁( Octal Q 、 Hexadecimal H)10#: 人机交互的需要( Decimal D)一、机器数 数在机器中的表示形式例
4、: 10 00001010 10 10001010一个数连同它的符号位均用( 0, 1)两种数码来表示第 1章 计算机基础1.2 计算机中数值数据信息的表示第 1章 计算机基础二、真值 原来实际数本身值三、机器数的特点1. 符号数值化2. 机器数范围受字长限制有关字长的概念 位( bit): 计算机所能表示数的最小单位,如: “0”、 “1”。 字节( Byte): 一个 8位 2#数。 字( Word): CPU通过数据总线一次运算或处理的一组 2#数,是计算机中信息的基本单位。 字长( Word Length): 字的 2#位数( 8、 16、 32等),是衡量计算机性能的重要标志。3.
5、小数点不能直接标出,应按一定的方式约定1.2.2 符号数的表示方法机器数可用不同的码制(编码形式)来表示。常用的码制有: 原码、反码、补码原码的优点: 简单易懂、与真值转换方便。缺点: 不便于计算(首先判符号,再决定用加或减)例: x1=67=+1000011B x1原 =01000011P7 x2= 67= 1000011B x2原 =11000011第 1章 计算机基础一、原码设有 X = X1 X2 Xn-1 Xi 为一位 2#数则: 0 X1X2 Xn-1 X01 X1X2 Xn-1 X0X原 =特例: 0=00000000 n=8时 0=10000000二、反码 0 X1X2 Xn-
6、1 X01 X1X2 Xn-1 X0X反 = 0反 =00000000 0反 =11111111特例特例:第 1章 计算机基础三、补码 ( 引入补码概念,目的在于将加、减运算转化为单纯的加法运算)1. 同余的概念与补码同余(余相等)例: 钟表 3 = 15 ( mod 12)用 12去除 3和 15,余数皆为 3,称 3、 15在以 12为模时同余,记作: 3 = 15 ( mod 12)或说: 3和 15在以 12为模时相等模 为一个计量系统的最大量程 推至一般: a+M = a ( mod M)a+2M = a( mod M)因而有: 4+10= 6 = 4 ( mod 10) 6= 4
7、( mod 10)称:以 10为模时, 6与 4相等; 6为 4的补码。或说: 6与 4对模 10来说互为补数。这时,我们可以将减法转化为加法: 7 4 = 7+6 ( mod 10)减去一个数等于加上这个数的补数注意: 对于字长为 n的计算机来说,模为 2n, 2n在计算机中仅能以 n个 0表示,因此可以说, 2n与 0在计算机中的表现形式是一样的。第 1章 计算机基础 0补 =00000000 0补 =2n 0 00000000 ( mod 28) 这时:这时:当已知 X补 时,可由 X补 补 X原 求得 X原 。 当 -128 X 127 时,其原码、反码、补码见 P10 表 1-1。在
8、表中: 0 的原、反码皆有两个,而补码只有一个;-128的原、反码无法表示,但其补码即为 -0的原码。2. 补码的求法定义 X补 = 0X1X2.X n-1 X01X1X2.X n-1+1 X0或 X补 = X 0X 2n-12n X -2n-1X 0( mod 2n)n为机器字长为机器字长2n X第 1章 计算机基础小结1. 三种编码的最高位都是表示符号位。S=0, 真值为正数,其余位为真值;S=1, 真值为负数,须按一定规律求出真值。4. 当计算机采用不同的码制时,运算器和控制器的结构将不同。采用原码、反码、补码形式的计算机分别称为原码计算机、反码计算机和补码计算机。2. 对正数,三种编码
9、都是一样的,即 x原 =x反 =x补 。对于负数,三种编码不同。原、反和补码的实质是解决负数在机器中表示的三种不同编码方法。3. 当 n=8时,机器所能表示的:原码范围: -127 +127, -2n-1+1 2n-1 1 反码范围: -127 +127, -2n-1+1 2n-1 1 补码范围: -128 +127, -2n-1 2n-1 1 其中,定义10000000为 128的补码。一、补码的加法x+y补 =2n+( x+y) =( 2n+x) +( 2n+y) =x补 +y补结论:两个数和的补码等于两个数补码的和。即两个数的补码相加,一定得到它们和的补码。欲求真值,可通过 x补 补 =
10、 x原 。二、补码的减法x-y补 =2n +( x-y) =( 2n+x) +( 2n-y)=( 2n+x) +2n +( -y) = x补 + -y补 依定义可以证明:x-y补 =2n+( x-y) =2n+2n-2n+(x-y)=2n+x-(2n+y)=x补 -y补 所以x-y补 =x补 y补 = x补 + -y补结论: a. 两个数差的补码等于两个数补码的差。b. 两个数差的运算,可以转换为单纯的加法运算,关键是求出 - y补 。第 1章 计算机基础1.2.3 补码的运算-y补 对 y补 连同符号位在内一起求反 +1 (称此过程为 对 y补 求补 记作 y补 求补 ) 所以: x-y补
11、x补 -y补 x补 +-y补 x补 +y补 求补由于补码的引入,使正负数的加减运算简化为单纯的加法运算。第 1章 计算机基础-y补 的求法: (依补码定义, -y补 =2n-y, 而2n-y的结果是将 y补 连同符号位在内一起求反 +1)例 1: 18+( -15) =?-15:( 10001111)B00010010 18补+ 11110001 -15补1 00000011 +3补进位 1舍掉,真值 =3三、举例带符号数的加减运算结论:进位舍掉已体现在模上。 S=0, 结果即为原码。第 1章 计算机基础例 2: 15+( -18) =?-18 : 10010010-3补 = 11111101
12、00001111 15补+ 11101110 -18补11111101 -3补10000011 真值 -3已知补码, x原 x补 补 结论: s=1, 结果补码的补码为原码。例 3: 15-18=? 15-18补 = 15补 +-18补= 15补 +18补 求补00010010 18补求补 : 11101110 00001111 15补+ 11101110 18补 求补11111101 -3补 。结论: 减法转换成加法运算。第 1章 计算机基础结论:带符号数的运算结果可能溢出,这是因为数值占据了符号位而造成的。例 4: 64+65=? 01000000 64补+ 01000001 65补100
13、00001两正数之和为负。例 1 : x =160, y =144求 x+y 无符号数的加减运算 x补 10100000 + y补 10010000 CF=1 1 00110000 ( 304) 结论:对无符号数,当加法有进位时,进位位的权为 28=256。所以,结果 =256+32+16=304,此数超过了 8位字长,故最终结果用 CF=1来体现。对机器而言,需设置 CF标志。 第 1章 计算机基础例 2 : X=160, y=144求 x-y10100000 x补+ 01110000 y补 求补 CF=0 1 00010000 ( 16) 结论:对无符号数,减法转换为补码加法运算。原码相减
14、无借位,补码相加有进位,结果为正。结论:对无符号数,减法转换为补码加法运算。原码相减有借位,补码相加无进位,结果为负。11110000补 16 真值 16例 3 : X=144, y=160求 x-y10010000 144补+ 01100000 160补 求补 CF=1 11110000 ( 16) 第 1章 计算机基础小结计算机本身是无法判别有符号或无符号数的,它不管是对带符号数还是无符号数,总是按照规定的要求做加法(加法)或求补相加(减法)的运算。即,采用补码以后无符号数与带符号数的运算是兼容的。带符号数运算结果, 进位丢失 S=0 正S=1 负已体现在模上虽然进位不影响结果,但此时仍将
15、 CF置上,方法同无符号数 的结果 。例:10000110+ 0001101010100000无符号134+ 26160有符号-122+ 26-96有进位(原码相减无借位) CF=0 正无进位(原码相减有借位) CF=1 负1. 相减运算时无符号数运算结果不同点仅在于:第 1章 计算机基础2. 相加运算时无符号数运算结果:超过字长 n, CF=1, 总为正。带符号数运算结果 : S=0, 正S=1, 负 但在带符号数的加减运算结果中,还要判断是否溢出。1. 溢出与进位及补码运算的进位丢失之间的区别a. 溢出与进位是两个不同性质的概念(CF)进位主要用于对无符号数的运算,指的是超过一个字长的数字
16、的算术进位 (或借位)。在多字节的算术运算中,通常低字节是无符号数,只有最高字节有符号位。低字节有进位时,须有个标志 CF。(OF)溢出则主要用于带符号数的运算。 溢出:运算过程中的数据超出计算机所能表示的范围(仅对带符号数而言)第 1章 计算机基础b. 溢出与补码运算中的进位丢失也应加以区别带符号数运算时,由补码运算产生的符号位进位要丢失。但若其结果未超出 -128 +127( 8bit字长)范围,则不能认为溢出。2. 判断溢出的方法 根据参加运算的两数的符号及运算结果的符号判断溢出例: 两数 x, y (x0, y0)x-yy-x 但 x+y 和应为正,若为负则有溢出。-x-y 和应为负,
17、若为正则有溢出。皆不会产生溢出。 用双高位法来进行判断b7”b6”b 2”b1”b0”+ b7b6b 2b1b0b7 b6b 2 b1 b0 0 b7无进位1 b7有进位1 溢出0 无溢出0 b6无进位1 b6有进位Cp=CsCp=溢出的处理:增加字长。Cs=最高位进位最高位进位 次高位进位次高位进位2. 带符号数的运算结果可能溢出3. 无符号数的运算规则a. 凡参加运算的数为正数,整个字长表示数值。b. 两个无符号数相加,只要绝对值不超过 n位(溢出),和一定为正数。溢出(进位)时,可增加字长。c. 两个无符号数相减,差值符号取决于两数绝对值的大小。第 1章 计算机基础总结1. 带符号数的运
18、算规则 凡参加运算的数用补码表示。 将符号位看成数参加运算。 结果处理MSB有进位,舍去。MSB=0, 正数 原码MSB=1, 负数 补 原码补 真值XY补 =X补 +Y补 X, Y为正负数均可,符号位参与运算 。通常使用的标志位: ZF 结果是 0; OF 带符号数溢出; SF 结果是负数;CF 结果的最高位产生了进位或借位。无论是否有符号,运算器做相同的运算。将计算结果当作无符号数设置 CF, 同时将结果当作带符号数设置 SF和 OF。程序设计者自行根据数据类型选定有效的标志位。 第 1章 计算机基础1.2.4 定点数与浮点数计算机不仅要处理整数运算,还需处理小数运算,如何处理小数点位置是
19、十分重要的。通常有定点与浮点两种方法。 一、定点表示法小数点位置在数中固定不变常用两种为:1. 定点纯小数 小数点固定在最高数值位左边 ,其本身不占位其格式为尾数 S符号位 小数点隐含在此处 2. 定点纯整数 小数点固定在最低数值位右边 ,其本身不占位其格式为尾数 S符号位 小数点隐含在此处 第 1章 计算机基础例:例: P12例 1:有如下两个 8位二进制数N1=+84 0 1 0 1 0 1 0 0 N1:符号位 小数点位置N2= - 84 1 0 1 0 1 1 0 0 N2:符号位 小数点位置1 0 1 0 1 1 0 0例 2:有例 1中同样两个数,小数点位置不同,则有0 1 0 1
20、 0 1 0 0 N1:符号位 小数点位置N2:符号位 小数点位置分别表示真值: N1=+1010100=+0.65625, N2=-1010100=-0.65625结论: 定点整数和定点小数在格式上毫无差别,这是因为定点数的小数点是隐含的,但 它们的真值却不相同 。第 1章 计算机基础 定点数将小数点固定,运算起来很不方便。要求对原始数据要用比例因子换算。二、浮点表示法在位数有限的前题下,尽量扩大数的表示范围,同时又保持数的有效精度,往往采用浮点数表示数值。如: N=2pS阶码 p的大小规定了数的范围,尾数 S的长短则规定了数的有效数字的位数 (精度 )。浮点数浮点数进位计数制的基数进位计数
21、制的基数阶码,带符号整数,用补码表示阶码,带符号整数,用补码表示N的尾数,是数值的有效部分,的尾数,是数值的有效部分,绝对值绝对值 9( 1001)时,则应作 加 6( 0110)修正。2. 两个 BCD数 相加 结果 16(产生进位 ),也应 加 6( 0110)修正。以此来解决计算机总是将代码当成二进制来处理所带来的结果。注意:在计算机中有专门的十进制调整指令 DAA( DAS), 使机器按照规则自动进行调整运算(加法时加 6修正;减法时减 6修正 )。 3. BCD码在计算机中的表示方法 压缩 BCD码 用 4位二进制编码表示 1位十进制数。即 1个字节表示 00 99,如 (56)10
22、=(01010110)BCD。 非压缩 BCD码 用 8位二进制数表示 1位十进制数。即用 1个字节表示 0 9,字节的高 4位总置 0。如 (56)10=(0000010100000110)BCD。第 1章 计算机基础1.3 计算机中非数值数据信息表示非数值数据 文字、图画、声音等。将字符进行编码,以 2#代码形式存入计算机。常用编码: ASCII代码 (美国国家信息交换标准代码)用 8位 2#数表示字符,共可表示 256种。 但通常用 bit7做奇偶校验位。所以共 128个字符。 控制作用的 “功能码 ”32个 (不可打印)供书写和描述信息用的 “信息码 ”96个。 (可打印 )128例:
23、 BEL Bell (07H, 响铃 )Del deletion (7FH, 删除 )CR Carriage Return (0DH, 回车 )LF Line Feed (0AH, 换行 )西文 拉丁字母、数字、标点符号及一些特殊符号,统称为字符 ( character)。 1.3.1 西文信息的表示第 1章 计算机基础0, 1, 2, 9 A , B, a , b, 30H 31H 32H 39H 41H 42 H 61H 62H 空格 space 20H注意:中间跳过 7个39H,3AH,3BH,3CH,3DH,3EH,3FH,40H,41H故: “0 9” +30H “30H 39H ”
24、“A F” +37H “41H 46H ”用 bit7做奇偶校验 偶 校验: bit7应使 b7 b0中 1的个数为偶。奇校验: bit7应使 b7 b0中 1的个数为奇。我国的 GB1988 80编码字符集,除¥ $外,其余同 ASCII码。1.3.2 中文信息的表示1. 汉字总数多,字形复杂,在计算机中采用 GB2312-80标准,规定一个汉字用两个字节来编码,共可编码:256256 65536种第 1章 计算机基础2. 为与 ASCII编码相区别, 将每个字节的低 7位用于编码,称为双 7位汉字编码 (国标码) ,共可编码: 128128 16384种 或将每个字节的最高位 bit7=1
25、, 形成汉字的另一种编码 (汉字机内码)。 内码用于统一不同系统所使用的不同汉字输入码。 国标码的每个字节 80H 汉字机内码3. 汉字的输入输出输入法 很多,不同输入法有自己的编码方案,称为输入码。但输入码进入机器后,必须转换为机内码,以便统一。输出 是先用汉字字型码(点阵编码)将汉字按字型排成点阵,常用点阵有: 1616, 2424, 3232或更高。 然后将此图形画在屏幕上。1.3.3 计算机中图、声、像的表示图、声、像等模拟信号 采样、量化、编码 数字信息 再压缩、存储 还原处理、数模转换 原来信息。第 1章 计算机基础1.4 微型计算机基本工作原理近五十年来,虽然计算机已经取得了惊人
26、的进步,相继出现了各种结构的计算机,但究其体系,仍属冯 .诺依曼结构体系( 1946 年提出): 计算机应由: 运算器、控制器、存贮器、输入、输出设备五部分组成。 存贮器不但能存贮数据,也能存贮程序,并有区分它们的本领。 程序存入存贮器中,在指令计数器(程序计数器)控制下自动高速运行 非流水线操作(串行运行或顺序运行)。冯 .诺依曼型计算机的基本工作原理是:程序控制和程序存储。1.4.1 微型计算机的硬件组成微型计算机硬件系统是以微处理器( CPU) 为核心,通过 系统总线 连接内存储器和 I/O接口电路而构成的,微型计算机硬件系统结构图如下图所示。构成微型计算机的关键是如何将这些部件有机地连接起来。