500 likes | 626 Views
计算机应用基础. 项目一 计算机基础知识. 教学目标. 电子计算机( Electronic Computer )俗称电脑,是 20 世纪科学技术发展的卓越成就之一。计算机科学技术及其应用技术的高速发展,在世界范围内形成了一场信息革命。计算机的发展扩展了计算机的应用领域,而计算机的应用反过来又促进了计算机的发展。 通过本章的学习,同学们将了解到计算机的概念、发展、特点、应用领域以及计算机中信息的表示 。. 1.1 计算机基本概念. 1.1.1 计算机的概念 1.1.2 计算机的发展 1.1.3 计算机的分类 1.1.4 计算机的特点
E N D
计算机应用基础 项目一 计算机基础知识
教学目标 电子计算机(Electronic Computer)俗称电脑,是20世纪科学技术发展的卓越成就之一。计算机科学技术及其应用技术的高速发展,在世界范围内形成了一场信息革命。计算机的发展扩展了计算机的应用领域,而计算机的应用反过来又促进了计算机的发展。通过本章的学习,同学们将了解到计算机的概念、发展、特点、应用领域以及计算机中信息的表示。
1.1 计算机基本概念 1.1.1 计算机的概念 1.1.2 计算机的发展 1.1.3 计算机的分类 1.1.4 计算机的特点 1.1.5 计算机应用领域
1.1 .1 计算机基本概念 20世纪40年代中期,由于导弹、火箭、原子弹等现代科学技术的发展,出现了大量极其复杂的数学问题,原有的计算工具已无法满足要求;而电子学和自动控制技术的迅速发展,为研制新的计算工具提供了物质技术条件。1946年,在美国宾夕法尼亚大学,由John W.Mauchly博士和它的研究生J.Presper Eckert 领导的研制小组为精确测算炮弹的弹道特性而制成了ENIAC (Electronic Numerical Integrator and Calculator)计算机,这是世界上第一台真正能自动运行的电子数字计算机,它占地面积约170m2 ,使用了18800只电子管,耗电量极大,其功能还比不上现在的一只掌上可编程计算器,但它毕竟是世界上第一台可以实际使用的电子计算机,为电子计算机的发展奠定了技术基础。它的问世,标志着电子计算机时代的到来。 半个多世纪以来,计算机科学技术有了飞速的发展,计算机的性能越来越高、价格越来越便宜、应用越来越广泛。时至今日,计算机已经广泛应用于国民经济及社会生活的各个领域,计算机科学技术的发展水平、计算机的应用程度已成为衡量一个国家现代化水平的重要标志。
1.1.1 计算机基本概念 在计算机诞生的初期主要是用来进行科学计算的,因此被称为“计算机”,然而,现在计算机的处理对象已经远远超过了“计算”这个范围,计算机可以对数字、文字、声音、图像等各种形式的数据进行处理。 计算机是一种能够按照事先存储的程序,自动、高速度地对数据进行输入、处理、输出和存储的系统。一个计算机系统包括硬件和软件两大部分,硬件是由电子的、磁性的、机械的器件组成的物理实体,包括运算器、存储器、控制器、输入设备和输出设备等5个部分组成。软件则是程序及有关文档的总称,包括系统软件和应用软件。系统软件是为了对计算机进行管理、提高计算机的使用效率和方便用户使用的各种通用软件,一般由计算机厂商提供。常用的系统软件有操作系统、程序设计语言翻译系统、连接程序、诊断程序等。应用软件是指专门为某一应用目的而编制的软件,常用的应用软件有字处理软件、表处理软件、统计分析软件、数据库管理系统、计算机辅助软件、实时控制与处理软件以及其他应用于国民经济各行各业的应用程序。计算机硬件执行各种基本的操作,是计算机应用的物质基础,软件则进一步扩大了硬件的功能或者通过程序告诉计算机应该做什么,使硬件完成特定的应用。任何一台计算机只有配备了各种使用方便的软件,才能发挥其作用、扩大其应用范围。
1.1.1 计算机基本概念 计算机外型
1.1.2 计算机的发展 第一代计算机(1946年~1957年) 第一代计算机的逻辑元件是电子管,主存储器先采用延迟线,后采用磁鼓磁芯,外存储器使用磁带,并用机器语言和汇编语言编写程序。 这一阶段计算机的主要特点是体积大、运算速度低、成本高、可靠性差、内存容量小。主要用于科学计算,从事军事和科学研究方面的工作。 第二代计算机(1958年~1964年) 第二代计算机是晶体管计算机时代,这一代计算机使用的主要逻辑元件是晶体管。晶体管较之电子管有体积小、耗电低、可靠性高、功能强、价格低等优点。主存储器采用磁芯,外存储器使用磁带和磁盘。并开始使用管理程序,后期使用操作系统并出现了一批高级程序设计语言。 这个时期计算机的应用扩展到数据处理、自动控制等方面。运行速度已提高到每秒几十万次,体积大大减小,可靠性和内存容量也有较大的提高。
1.1.2 计算机的发展 第三代计算机(1965年~1970年) 第三代计算机逻辑元件采用小规模或中小规模集成电路来代替晶体管,这种器件把几十个或几百个分立的电子元件集中做在一块几平方毫米的硅片上(一般称为集成电路芯片),使计算机的体积和耗电大大减小,运算速度却大大提高,每秒钟可以执行几十万次到几百万次的加法运算,性能和稳定性进一步提高。 在这个时期,系统软件有了很大发展,出现了分时操作系统,在程序设计方法上采用结构化程序设计,为研制更加复杂的软件提供了技术上的保证。在应用方面,已被广泛地应用到科学计算、数据处理、事务管理和工业控制等领域。
1.1.2 计算机的发展 第四代计算机(1970年至今) 第四代计算机最为显著的特征就是使用了大规模和超大规模集成电路。大规模集成电路(LSI,Large Scale Integration)每个芯片上的元件数为1000~10000个;而超大规模集成电路(VLSI ,Very Large Scale Integration)每个芯片上则可以集成10000个以上的元件。此外,使用了大容量的半导体存储器作为内存储器;在体系结构方面进一步发展了并行处理、多机系统、分布式计算机系统和计算机网络系统;在软件方面推出了数据库系统、分布式计算机系统以及软件工程标准等。 这一时代计算机的运行速度可达到每秒上千万次到万亿次,存储容量和可靠性有了很大提高,功能更加完备,价格越来越低。这个时期计算机的类型除小型、中型、大型机外,开始向巨型机和微型机两个方面发展,计算机逐渐进入了办公室、学校和普通家庭。
1.1.2 计算机的发展 5. 第五代计算机 目前使用的计算机都属于第四代计算机,第五代计算机尚处在研制之中,而且进展比较缓慢。第五代计算机的研究目标是试图打破计算机现有的体系,即以二进制数和存储程序控制为基础的结构,使得计算机能够具有像人那样的思维、推理和判断能力。也就是说,第五代计算机的主要特征是人工智能,它具有一些人类智能的属性,例如自然语言理解能力、模式识别能力和推理判断能力。 第五代计算机由于采用一系列的高新技术,所以这一代计算机已经很难再以器件来作为划分年代的依据了。大体上说,第五代计算机是采用更大规模集成电路、非冯·若依曼体系结构、人工神经网络的智能计算机系统。
1.1.2 计算机的发展 现代计算机的发展正朝着巨型化、微型化的方向发展,计算机的传输和应用正朝着网络化、智能化的方向发展,并越来越广泛地应用于我们的工作、生活和学习中,对社会生活起到不可估量的影响。 我国在计算机的研制开发上也取得了举世瞩目的成就。1983年,湖南国防科技大学研制成功银河I 巨型计算机,运行速度达每秒1亿次;1993年研制的巨型计算机“银河II”,运行速度达每秒10亿次;而“银河III”巨型计算机,运行速度达每秒130亿次;2002年,我国联想公司发布高性能服务器iCluster1800, 运行速度达每秒万亿次,这也是中国企业首次推出万亿次级别的计算机,其系统的综合技术达到当前国际先进水平,标志着我国计算机的研制技术进入世界先进行列。
1.1.3 计算机的分类 由于计算机科学技术的发展,计算机已经成为一个庞大的家族,根据计算机的处理对象、计算机的用途以及计算机的规模等不同角度可分类如下: 1. 按处理对象分类 按计算机处理对象及其数据的表示形式可分为数字计算机(Digital Computer)、模拟计算机(Analog Computer)和数字模拟混合计算机(Hybrid Computer)三类。 ①数字计算机。该类计算机输入、处理、输出和存储的数据都是数字量(0和1所构成的二进制数的形式),这些数据在时间上是离散的。非数字量的数据(如字符、声音、图像等)只要经过编码后也可以处理。通常使用的计算机都是数字计算机。 ②模拟计算机。该类计算机输入、处理、输出和存储的数据都是模拟量(如电压、电流、温度等),这些数据在时间上是连续的。模拟计算机不如数字计算机精确、通用性不强,但解题速度快,主要用于过程控制的模拟仿真。 ③数字模拟混合计算机。该类计算机将数字技术和模拟技术相混合,兼有数字计算机和模拟计算机的功能。
1.1.3 计算机的分类 2. 按用途分类 按照计算机的用途及使用的范围可分为通用计算机(General Purpose Computer)和专用计算机(Special Purpose Computer)两类。 ①通用计算机:该类计算机具有广泛的用途和使用范围,可以用于科学计算、数据处理和过程控制等。 ②专用计算机:该类计算机适用于某一特殊的应用领域,如智能仪表、生产过程控制、军事装备的自动控制等。
1.1.3 计算机的分类 3. 按规模分类 按照计算机的规模可分为巨型计算机、大/中型计算机、小型计算机、微型计算机、工作站、服务器。 (1) 巨型计算机(Super Computer) 巨型计算机是指运算速度快、存储容量大,每秒可达1亿次以上浮点运算速度,主存储容量高达几百MB甚至几GB。这类机器价格相当昂贵,主要用于复杂、尖端的科学研究领域,特别是军事科学计算。 我国研制成功的银河I 型亿次机,银河II型十亿次机,银河III型百亿次计算机,联想iCluster1800万亿次机都是巨型机。 (2) 大/中型计算机(Mainframe Computer) 该类计算机也具有较高的运算速度,每秒钟可以执行几千万条指令,并具有较大的存储容量及较好的通用性,但价格比较昂贵,通常被用来作为银行、铁路等到大型应用系统中的计算机网络的主机来使用。
1.1.3 计算机的分类 (3) 小型计算机(Mini Computer) 小型计算机运算速度和存储容量略低于大/中型计算机,但与终端和各种外部设备连接比较容易,适合于作为联机系统的主机,或者工业生产过程的自动控制。 (4) 微型计算机(Micro Computer) 以运算器和控制器为核心,加上由大规模集成电路制作的存储器、输入/输出接口和系统总线,就构成体积小、结构紧凑、价格低但又具有一定功能的微型计算机。以微型计算机为核心,再配以相应的外部设备(如键盘、显示器、鼠标器、打印机)、电源、辅助电路和控制微型计算机工作的软件就构成了一个完整的微型计算机系统。微型计算机系统又称微电脑或个人计算机,简称PC(Personal Computer)。它的问世在计算机的普及应用中发挥了重大的推动作用。
1.1.3 计算机的分类 (5)工作站(Workstation) 它是为了某种特殊用途由高性能的微型计算机系统、输入/输出设备以及专用软件组成。例如,图形工作站包括有向性能的主机、扫描仪、数字化仪、高精度的屏幕显示器、其他通用的输入输出设备以及图形处理软件,它具有很强的对图形进行输入、处理、输出和存储的能力,在工程设计以及多媒体信息处理中有广泛的应用。 (6)服务器(Server) 服务器是一种在网络环境下为多用户提供服务的共享设备,一般分为文件服务器、通信服务器、打印服务器等。该设备连接在网络上,网络用户在通信软件的支持下远程登录,共享各种服务。 由于科学技术的发展,微型计算机与工作站、小型计算机乃至中、大型计算机之间的界限已经愈来愈模糊。无论按哪一种分类方法,各类计算机之间的主要区别是运算速度、存储容量及机器体积等。
1.1.4 计算机特点 1. 运算速度快 目前的巨型计算机的运算速度已达到每秒万亿次,微型计算机也可达到每秒亿次以上。使大量复杂的科学计算问题得以解决。例如卫星轨道的计算、大型水坝的计算、天气预报的计算等。过去人工计算需要几年甚至更长时间完成的工作,而现在用计算机只需几天、甚至几分钟就可以完成。 2. 计算精度高 科学技术的发展尤其是尖端科学技术的发展,需要高精度的计算。计算机控制的导弹之所以能够准确地命中目标,是与计算机的精度分不开的。一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可达到千分之几到百万分之几,这是其他任何计算工具望尘莫及的。
1.1.4 计算机特点 3. 具有记忆和逻辑判断的能力 随着计算机存储容量的不断增大,可存储记忆的信息越来越多,计算机不仅能进行计算,而且能把参加运算的数据、程序及计算结果保存起来,以供用户随时调用。还可以对各种信息(如文本、图像、音频和视频等)通过编码技术进行算术和逻辑运算,甚至进行推理和证明。 4. 具有自动控制能力 计算机内部操作是根据人们事先编好的程序自动控制执行的。用户根据实际应用需要,事先设计好运行步骤和程序,计算机会十分严格地按照程序规定的步骤操作,整个过程无需人工干预。
科学 计算 1.1.5 计算机的应用领域 CAD/CAM CAI 过程控制 数据处理 人工 智能 娱 乐
冯·诺依曼 的“存储程序”式工作原理 从第一代计算机到第四代计算机,其工作原理都是使用的冯·诺依曼 的“存储程序”式工作原理 。 存储程序是指把用户编好的程序与相应的原始数据,通过输入设备送入计算机的存储器中以二进制形式存储起来。在计算机运行时,自动地从内存中逐条取指令、解释指令,并按指令的要求从存储器中取出所需数据进行指定的运算,然后再把结果送到内存中去。 所谓程序,是指完成某一特定任务的一系列指令的集合。而指令是一组二进制代码,是计算机能够直接执行的基本操作,通常它由操作码和操作数组成,操作码是表明计算机所要进行的操作,操作数表示参与操作的数或操作数的地址。 每种机器都有自己的一套指令系统,它为用户提供了该计算机能直接执行的全部基本操作。
计算机的基本功能是运算 所有信息(文本、图像、音频、视频)在计算机中都表示为“数” 计算机中数的表示方式是采用二进制 1.2 计算机中的信息表示
数制 按进位的原则进行计数称为进位计数制,简称数制。在日常生活中最常用的数制是十进制。此外,也使用许多非十进制的计数方法。例如计时采用60进制,即60秒为1分,60分为1小时;1星期有7天,是7进制;1年有12个月,是12进制。由于在计算机中是使用电子器件的不同状态来表示数的,而电信号一般只有两种状态,如导通与截止,通路与断路等。因此在计算机采用的是二进制。由于二进数书写起来不方便,因此常常根据需要使用八进制和十六进制数。
十进制数 1.十进制数用十个数来表示:0,1,2,3,4,5,6,7,8,9; 2.逢十进一; 3.相同数字所在位置不同,表示的数值不同。 十进制的基数是10,各位的权值数部分从右至左分别是100,101,102,…,例如数值76543用公式表示为: 7×104+6 ×103+5 ×102+4 ×101+3×100
二进制数 1.二进制数用二个数来表示:0,1 2.逢二进一; 3.相同数字所在位置不同,表示的数值不同。 二进制的基数是2,各位的权值数部分从右至左分别是20,21,22,…,例如,数值10101用公式表示为: 1×24+0×23+1×22+0×21+1×20=(21)10
1 0 1 1 0 1 1 1 128 27 64 26 32 25 24 16 23 8 22 4 2 21 1 20 + 128+32+16+4+2+1= 181 二进制→十进制
0 1 0 1 0 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 1 0 0 0 二进制→十进制(练习) 84 168 42
÷2 1 换算方法: 1、除二 2、取余 3、倒序 1 3 9 69 ÷2 ÷2 ÷2 ÷2 ÷2 ÷2 1 0 1 0 0 0 4 17 2 34 1 8 十进制→二进制(小数部分) 10001011
换算方法: 1、乘二 2、取整 3、正序 ×2 1 .375 ×2 1011 0 .75 ×2 1 .5 ×2 1 .0 十进制→二进制(小数部分) .6875
1 0 1 1 0 22 + + 0 1 1 0 1 13 35 1 1 2 1 2 0 0 2 0 1 1 1 1 1 1 1 0 0 0 1 1 二进制的运算
由于二进制数通常位数比较多,读和写时容易出错,因此人们又采用了另外一些进制的方法来书写数值,这些进制的数通常与二进制的数有良好的对应关系由于二进制数通常位数比较多,读和写时容易出错,因此人们又采用了另外一些进制的方法来书写数值,这些进制的数通常与二进制的数有良好的对应关系 八进制数是将二进制的三位一组,进行合并后来记录数值的计数方法 十六进制数是将二进制的四位一组,进行合并后来记录数值的计数方法 必须明确一点:真正由计算机可以直接存贮和处理的数只能是二进制。 更多的进制……
十进制 1 8 3 1 0 1 1 0 1 1 1 二进制 2 6 7 八进制数 八进制
十进制 1 8 3 1 0 1 1 0 1 1 1 二进制 B 7 十六进制数 十六进制 值 :0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 表示:0 1 2 3 4 5 6 7 8 9 A B C D E F
说 明 • 注意:在进行八、十六进制数之间的转换时,往往利用二进制作为中介。即先把原数转换为二进制,再把得到的二进制转换为目标进制。 • 为区分不同数制表示的数,在书写时采用字母B(Binary)表示二进制,用字母O(Octal)表示八进制,用D(Decimal)表示十进制,用字母H(Hexadecimal)表示十六进制。
计算机中数的表示 在十进制数中,可以在数字前面加上“+”、“-”号来表示正、负数,由于计算机不能直接识别“+”、“-”号,因此在计算机中规定用“0”表示“+”,用“1”表示“-”,这样数的符号也就可以数字化了。 在计算机中,通常将二进制的首位(最左边的哪一位)作为符号位,若二进制数是正的,则其首位是0,若二进制数是负的,则其首位是1。像这种符号也数码化的二进制数称为“机器数”。例如: 十进制+78 -78 二进制(真值)+1001110 -1001110 计算机内(机器数)01001110 11001110 机器数在计算机内也有3种不同的表示方法,这就是原码、反码和补码。
原 码 原码表示法规定:用符号位和数值表示带符号数,正数的符号位用“0”表示,负数的符号位用“1”表示,数值部分用二进制形式表示。 【例1-14】设带符号的真值X=+78,Y=-78,则它们的原码分别为: (X)原=01001110 (Y)原=11001110 原码简单易懂,与真值转换起来很方便。但若是两个异号的数相加或两个同号的数相减就要做减法,就必须判别这两个数哪一个绝对值大,用绝对值大的数减去绝对值小的数,运算结果的符号就是绝对值大的哪个数的符号,这些操作比较麻烦,运算的逻辑电路实现起来比较复杂。于是为了将加法和减法运算统一成只做加法运算就引入了反码和补码。
反 码 反码表示法规定:正数的反码与其原码相同,负数的反码为对该数的原码除符号位外,其余各位按位取反,即0变为1,1变为0。反码使用得比较少,它只是补码的一种过渡。 【例1-15】设带符号的真值X=+78,Y=-78,则它们的原码和反码分别为: (X)原=01001110 (X)反=01001110 (Y)原=11001110 (Y)反=10110001
补 码 补码表示法规定:正数的补码与其原码相同,负数的补码是它的反码加1。 【例1-16】设带符号的真值X=+78,Y=-78,则它们的原码、反码和补码分别为: (X)原=01001110 (X)反=01001110 (X)补=01001110 (Y)原=11001110 (Y)反=10110001 (Y)补=10110010 引入了补码以后,两个数的加减法运算可以统一用加法运算来实现,此时两数的符号位也当成数值直接参加运算,并且有这样一个结论,即两数的补码之“和”等于两数“和”的补码。 例如,计算“34”与“45”的差,是化成计算“34”与“-45”的和,其中“34”与“45”都用补码表示,即(39)10-(45)10=(39)10+(-45)10 因为: (39)10=(00100111)原=(00100111)反=(00100111)补 (-45)10=(10101101)原=(11010010)反=(11010011)补 所以:(00100111)补+(11010011)补=(11111010)补 即:(11111010)补=(11111001)反=(10000110)原=(-6)10 在计算机中一般采用补码来表示带符号的数。
信息的几种编码 由于计算机内部采用的是二进制的方式计数,因此输入到计算机中的各种数字、文字、符号或图形等数据都是用二进制数编码的。不同类型的字符数据其编码方式是不同的,编码的方法也很多。下面介绍最常用的BCD码、ASCII码、汉字编码和图像编码。
BCD码 BCD(Binary Coded Decimal)码是用若干位二进制数码表示一位十进制数的编码,简称二—十进制编码。 二—十进制编码的方法很多,使用最广泛的是8421码,8421码采用4位二进制数表示1位十进制数,即每1位十进数用4位二进制编码表示,这4位二进制数各位权由高到低分别是23、22 、21、20,即8、4、2、1。 【例1-17】将十进制数3879转换为BCD码。 【解】十进制数: 3 8 7 9 对应的BCD码:0011 1000 0111 1001 即二进制数3879的BCD码为0011 1000 0111 1001。 【例1-18】将BCD码1001 0111 0101 0110转换为十进制数。 【解】 BCD码: 1001 0111 0101 0110 对应的十进制:9 7 5 6 即BCD码1001 0111 0101 0110的十进数为9756。
ASCII码 ASCII码是由美国国家标准委员会制定的一种包括数字、字母、通用符号、控制符号在内的字符编码,全称为美国国家信息交换标准代码(American Standard Code for Information Interchange)。
ASCII代码表 代码:100 0001 = 65
汉字编码 计算机在处理汉字时也要将其转换为二进制码,这就需要对汉字进行编码,通常汉字有两种编码:国标码和机内码。 (1) 国标码 我国根据有关国际标准于1980年制定并颁布了中华人民共和国国家标准信息交换用汉字编码GB2312-80,简称国标码。国标码的字符集共收录6763个常用汉字和682个非汉字图形符号,其中使用频度较高的3755个汉字为一级字符,以汉语拼音为序排列;使用频度稍低的3008个汉字为二级字符,以偏旁部首进行排列。682个非汉字字符主要包括拉丁字母、俄文字母、日文假名、希腊字母、汉语拼音符号、汉语注音字母、数字、常用符号等。
汉字编码 (2) 汉字机内码 汉字的机内码是计算机系统内部对汉字进行存储、处理、传输统一使用的代码,又称为汉字内码。由于汉字数量多,一般用2个字节来存放一个汉字的内码。在计算机内汉字字符必须与英文字符区别开,以免造成混乱,英文字符的机内码是用一个字节来存放ASCII码,一个ASCII码占一个字节的低7位,最高位为0,为了区分,汉字机内码中两个字节的每个字节的最高位置为1。 (3) 汉字输入码 汉字主要是从键盘输入,汉字输入码是计算机输入汉字的代码,是代表某一个汉字的一组键盘符号。汉字输入码也叫外部码(简称外码)。现行的汉字输入方案众多,常用的有拼音输入和五笔字型输入等。每种输入方案对同一汉字的输入编码都不相同,但经过转换后存入计算机的机内码均相同。
汉字编码 (4) 汉字字型码 存储在计算机内的汉字在屏幕上显示或在打印机上输出时,必须以汉字字形输出,才能被人们所接受和理解。所谓汉字字形是以点阵方式表示汉字。就是将汉字分解成由若干个“点”组成的点阵字形,将此点阵字形置于网状方格上,每一小方格就是点阵中的一个“点”。以24×24点阵为例,网状横向划分为24格,纵向也分成24格,共576个“点”,点阵中的每个点可以有黑、白两种颜色,有字形笔划的点用黑色,反之用白色,用这样的点阵就可以描写出汉字的字形了。
24×24点阵的汉字字模“跑” 汉字的字形码及字库
汉字处理过程 汉字信息处理
图像编码 计算机中表示图像的方法有两种,位图方法和矢量方法,由此形成两种图像——位图图像和矢量图像。两种图像在图像的质量、图像存储空间的大小、图像传送的时间和图像修改的难易程度等方面存在很大的差别。 (1)位图图像 将图像划分成均匀的网格状,如640列×480行=307200个单元格,每个单元格称为像素,图像即可视为这些像素的集合。对每个像素进行编码,即可得到整个图像的编码。 对只有黑、白两种颜色的单色图像而言,像素的颜色只有两个:黑色和白色。用1表示白色,用0表示黑色,就得到了像素的1位编码。每一行像素的编码构成一个0,1序列,按顺序将所有行的编码连起来,就构成了图像的编码。 对灰度图像而言,像素的颜色除了黑、白两种之外,还有介于两者之间的不同程度的灰色,所以1位编码不足以表达颜色信息。计算机中通常用256级灰度来表示灰度图像,每个像素可以是白色、黑色或254级灰色中的任何一个,用11111111表示白色,用00000000表示黑色,按灰度由深到浅,用00000001~11111110来表示其余254种颜色,这样就得到了灰度图像的每个像素的8位编码,所有像素的编码的集合即构成整个图像的编码。
图像编码 对彩色图像而言,像素的颜色更丰富。计算机中经常使用的显示方法的有16色、256色、24位真彩色。16色和256色是以红、绿、蓝3种主色调合成16种或256种颜色,因此16色的像素编码是4位,256色的像素编码是8位。对24位真彩色图像来说,每个像素使用3个字节编码,每个字节的值分别代表像素中红、绿、蓝颜色的强度。例如按红、绿、蓝顺序,11111111 00000000 00000000表示红色,11111111 11111111 11111111表示白色。24位编码可以表达的颜色共有224=1677216种,颜色之多,人的肉眼根本无法识别临近颜色的差别。
图像编码 (2)矢量图像 矢量图像是把图像分解为曲线和直线的组合,用数学公式定义这些曲线和直线,这些数学公式是重构图像的指令,计算机存储这些指令,需要生成图像的时候,只要输入图像的尺寸,计算机会按照这些指令,根据新的尺寸形成图像。 • 位图图像和矢量图像的表示方法各有优劣,位图图像的质量高,数码相机中使用的就是这种方法。矢量图像看起来没有位图图像真实,但是当放大或缩小时,能够保持原来的清晰度,不失真,而位图图像则会变得模糊。同时,矢量图像的存储空间比位图图像小。矢量图像适用于艺术线条和卡通绘画,计算机辅助设计系统采用也是矢量图像技术。 • 对位图图像来说,追求高质量的图像,意味着要采用更多位的编码,这不仅要占用更多的存储空间,而且在图像处理过程中要花费更多的时间。通常解决的办法是根据具体要求采用不同的编码方法,基本原则是在满足最低图像质量要求的前提下,尽可能减小图像的大小。
图像编码 Windows操作系统中采用的位图图像文件格式有以下几种: lBMP(Bit Map)格式,BMP是在Windows中广泛使用的格式,通常采用非压缩方式存储不太大的图像文件; lTIFF(Tag Image File Format)格式,是最普遍应用的图形图像格式之一,它广泛应用于桌面发布,传真,3-D应用程序和医学图像应用程序中; lGIF(Graphics Interchange Format)格式,GIF图形交互格式被许多Internet用户用作标准的图像格式,在GIF图像中使用LZW压缩算法,使得它具有很高的压缩比且为无损压缩。GIF的缺点是只支持8位,即256色图; lJPEG(Joint Photographic Experts Group) 目前绝大多数的数码相机都使用JPEG格式压缩图像,这是一种有损压缩算法,压缩比很大并且支持多种压缩级别的格式,当对图像的精度要求不高而存储空间又有限时,JPEG是一种理想的压缩方式。JPEG的缺点是不适合打印高质量的图像。