《第4章 计算机系统.ppt》由会员分享,可在线阅读,更多相关《第4章 计算机系统.ppt(53页珍藏版)》请在课桌文档上搜索。
1、管 理 信 息 系 统,Management Information Systems,第四章,第4章 计算机系统,4.1 计算机的发展4.2 计算机的运算基础,4.1 计算机的发展,计算机的萌芽,古代:商业活动中用来记录和计算的设备古巴比伦的粘土板(公元前4000年)中国的算盘(公元前3000年),计算机的萌芽,启蒙时期:对钟表机构的好奇心与实验Pascaline(1642):B.Pascal发明的一种用钟表元件构成的、能够做两个十进制数加减法的机器Automata(大约18世纪):J.Droz发明的一种计算器,计算机的萌芽,工业革命时期:纺织技术提花织机(1728)飞梭织机(1733),计算
2、机之父与第一位程序员,1821年,英国数学家C.Babbage(1791-1871)设计了差分机,这是第一台可自动进行数学变换的机器,因此他被称为“计算之父”。此后,他又设计了能够处理数学公式的分析机。然而,这两种机器都没有真正实现。,Ada Lovelace(1815-1852)为 Babbage 的分析机设计了程序,被称为“第一位程序员”。,计算理论的奠基人,Alan Turing(19121954)1936年上研究生时发表的一篇论文中提出了图灵机(Turing Machine),奠定了计算机的理论基础。,第二次世界大战中,Turing 领导的小组制造出了破译德军 Enigma 密码的计算
3、机,并成功地完成了任务。,Turing 与 Church 合作给出了数学证明,断言未来计算机能够象人那样具有思维能力(因而汉语中有了“电脑”)。计算机学科的最高荣誉是 ACM(美国计算机学会)图灵奖。,世界上第一台电子数字计算机,1945年,在宾夕法尼亚大学 Moore 学院,J.Eckert 和 J.Mauchly 为实现弹道计算研制成功了 ENIAC(“电子数字积分计算机”,Electronic Numerical Integrator and Computer),它用了 19000 个电子管,重 13 吨,耗电 200 千瓦。,计算机体系结构的创始人,1946年,John von Neu
4、mann(19031957)发表了第一篇关于电子计算机程序存储的论文,描述了如何用(可被存储、读出和执行的)数字来表示逻辑操作(程序)。至今,大多数计算机采用的都是 von Neumann 体系结构。,计算机的更新换代,第一代(19451957):电子管计算机第二代(19581963):晶体管计算机第三代(19641969):小规模集成电路计算机第四代(19701990):以微处理器(Microprocessors)为标志的大规模/超大规模集成电路(LSI/VLSI)计算机第五代(1991目前):以互联网(Internet)为标志的信息系统,最新INTEL 45纳米处理器,2007年11月12
5、日,英特尔新一代处理器已经量产,最先进的制造技术能够使芯片上的晶体管数量增加40%,这一复杂的制造工艺进一步显示出全球第一大计算机微处理器制造商强大的制造实力。预期英特尔将开始销售16款新的微处理器,公司同时开发了新的材料阻止了电流的泄露,新的芯片将用于服务器和高端游戏用计算机。英特尔表示,与目前的65纳米制造技术每个芯片包含5.82亿个晶体管相比,新的45纳米技术包含的晶体管已经达到8.2亿个,20世纪70年代早些时候,英特尔推出的首款芯片包含的晶体管仅2300个。,计算机的类别,微型计算机(微机,Microcomputer)台式计算机(Desktop)膝上型电脑(Laptop)/笔记本计算
6、机(Notebook)工作站(Workstation)掌上型电脑(Palmtop)个人数字助理(PDA,Personal Digital Assistant)小型计算机(小型机,Minicomputer)主机(大型机,Mainframe computer)超级计算机(Supercomputer)专用计算机(Special-purpose computer)/嵌入式计算机(Embedded computer),4.2 计算机的运算基础,冯诺依曼计算机结构的基本思想,冯诺依曼提出了两个重要的思想:存储程序和二进制。解算一个问题时,先确定分解的算法,编制运算过程,选取能实现其操作的适当指令,组成所谓
7、“程序”。如果把程序和处理问题所需的数据均以计算机能接受的二进制编码形式预先按一定顺序存放到计算机的存储器里,计算机运行时从存储器取出第一条指令,实现第一个基本操作,以后自动地逐条取出指令,执行一系列的基本操作,其结果是完成一个复杂运算。,约翰冯诺依曼,约翰冯诺依曼(John Von Neumann,19031957),美藉匈牙利人,1903年12月28日生于匈牙利的布达佩斯,父亲是一个银行家,家境富裕,十分注意对孩子的教育。冯诺依曼从小聪颖过人,兴趣广泛,读书过目不忘。据说他6岁时就能用古希腊语同父亲闲谈,一生掌握了七种语言。最擅德语,可在他用德语思考种种设想时,又能以阅读的速度译成英语。他
8、对读过的书籍和论文,能很快一句不差地将内容复述出来,而且若干年之后,仍可如此。1911年一1921年,冯诺依曼在布达佩斯的卢瑟伦中学读书期间,就崭露头角而深受老师的器重。在费克特老师的个别指导下并合作发表了第一篇数学论文,此时冯诺依曼还不到18岁。1921年一1923年在苏黎世大学学习,很快又在1926年以优异的成绩获得了布达佩斯大学数学博士学位,此时冯诺依曼年仅22岁。,1927年一1929年冯诺依曼相继在柏林大学和汉堡大学担任数学讲师。1930年接受了普林斯顿大学客座教授的职位,西渡美国。1931年他成为美国普林斯顿大学的第一批终身教授,那时,他还不到30岁。1933年转到该校的高级研究所
9、,成为最初六位教授之一,并在那里工作了一生,冯诺依曼是普林斯顿大学、宾夕法尼亚大学、哈佛大学、伊斯坦堡大学、马里兰大学、哥伦比亚大学和慕尼黑高等技术学院等校的荣誉博士。他是美国国家科学院、秘鲁国立自然科学院和意大利国立林且学院等院的院士。1954年他任美国原子能委员会委员;1951年至1953年任美国数学会主席。1954年夏,冯诺依曼被使现患有癌症,1957年2月8日,在华盛顿去世,终年54岁。,冯诺依曼在数学的诸多领域都进行了开创性工作,并作出了重大贡献。在第二次世界大战前,他主要从事算子理论、集合论等方面的研究。1923年关于集合论中超限序数的论文,显示了冯诺依曼处理集合论问题所特有的方式
10、和风格,他把集会论加以公理化,他的公理化体系奠定了公理集合论的基础,他从公理出发,用代数方法导出了集合论中许多重要概念、基本运算、重要定理等,特别在1925年的一篇论文中,冯诺依曼就指出了任何一种公理化系统中都存在着无法判定的命题。,1933年,冯诺依曼解决了希尔伯特第5问题,即证明了局部欧几里得紧群是李群。1934年他又把紧群理论与波尔的殆周期函数理论统一起来,他还对一般拓扑群的结构有深刻的认识,弄清了它的代数结构和拓扑结构与实数是一致的。他对算子代数进行了开创性工作,并奠定了它的理论基础,从而建立了算子代数这门新的数学分支,这个分支在当代的有关数学文献中均称为冯诺依曼代数,这是有限维空间中
11、矩阵代数的自然推广。冯诺依曼还创立了博弈论这一现代数学的又一重要分支。1944年发表了奠基性的重要论文博弈论与经济行为。论文中包含博弈论的纯粹数学形式的阐述以及对于实际博弈应用的详细说明,文中还包含了诸如统计理论等教学思想,冯诺依曼在格论、连续几何、理论物理、动力学、连续介质力学、气象计算、原子能和经济学等领域都作过重要的工作。,冯诺依曼对人类的最大贡献是对计算机科学、计算机技术和数值分析的开拓性工作。现在一般认为ENIAC机是世界第一台电子计算机,它是由美国科学家研制的,于1946年2月14日在费城开始运行其实由汤米、费劳尔斯等英国科学家研制的科洛萨斯计算机比ENIAC机问世早两年多,于19
12、44年1月10日在布莱奇利园区开始运行ENIAC机证明电子真空技术可以大大地提高计算技术,不过,ENIAC机本身存在两大缺点:(1)没有存储器;(2)它用布线接板进行控制,甚至要搭接几天,计算速度也就被这一工作抵消了ENIAC机研制组的莫克利和埃克特显然是感到了这一点,他们也想尽快着手研制另一台计算机,以便改进,1944年,诺伊曼参加原子弹的研制工作,该工作涉及到极为困难的计算。在对原子核反应过程的研究中,要对一个反应的传播做出“是”或“否”的回答。解决这一问题通常需要通过几十亿次的数学运算和逻辑指令,尽管最终的数据并不要求十分精确,但所有的中间运算过程均不可缺少,且要尽可能保持准确。他所在的
13、洛斯阿拉莫斯实验室为此聘用了一百多名女计算员,利用台式计算机从早到晚计算,还是远远不能满足需要。无穷无尽的数字和逻辑指令如同沙漠一样把人的智慧和精力吸尽。被计算机所困扰的诺伊曼在一次极为偶然的机会中知道了ENIAC计算机的研制计划,从此他投身到计算机研制这一宏伟的事业中,建立了一生中最大的丰功伟绩。,1944年夏的一天,正在火车站候车的诺伊曼巧遇戈尔斯坦,并同他进行了短暂的交谈。当时,戈尔斯坦是美国弹道实验室的军方负责人,他正参与ENIAC计算机的研制工作。在交谈在,戈尔斯坦告诉了诺伊曼有关ENIAC的研制情况。具有远见卓识的诺伊曼为这一研制计划所吸引,他意识到了这项工作的深远意义。冯诺依曼由
14、ENIAC机研制组的戈尔德斯廷中尉介绍参加ENIAC机研制小组后,便带领这批富有创新精神的年轻科技人员,向着更高的目标进军1945年,他们在共同讨论的基础上,发表了一个全新的存储程序通用电子计算机方案-EDVAC(Electronic Discrete Variable AutomaticCompUter的缩写),在这过程中,冯诺依曼显示出他雄厚的数理基础知识,充分发挥了他的顾问作用及探索问题和综合分析的能力。诺伊曼以“关于EDVAC的报告草案”为题,起草了长达101页的总结报告。报告广泛而具体地介绍了制造电子计算机和程序设计的新思想。这份报告是计算机发展史上一个划时代的文献,它向世界宣告:电
15、子计算机的时代开始了。EDVAC方案明确奠定了新机器由五个部分组成,包括:运算器、逻辑控制装置、存储器、输入和输出设备,并描述了这五部分的职能和相互关系报告中,诺伊曼对EDVAC中的两大设计思想作了进一步的论证,为计算机的设计树立了一座里程碑。,设计思想之一是二进制,他根据电子元件双稳工作的特点,建议在电子计算机中采用二进制。报告提到了二进制的优点,并预言,二进制的采用将大简化机器的逻辑线路。实践证明了诺伊曼预言的正确性。如今,逻辑代数的应用已成为设计电子计算机的重要手段,在EDVAC中采用的主要逻辑线路也一直沿用着,只是对实现逻辑线路的工程方法和逻辑电路的分析方法作了改进。程序内存是诺伊曼的
16、另一杰作。通过对ENIAC的考察,诺伊曼敏锐地抓住了它的最大弱点没有真正的存储器。ENIAC只在20个暂存器,它的程序是外插型的,指令存储在计算机的其他电路中。这样,解题之前,必需先相好所需的全部指令,通过手工把相应的电路联通。这种准备工作要花几小时甚至几天时间,而计算本身只需几分钟。计算的高速与程序的手工存在着很大的矛盾。,针对这个问题,诺伊曼提出了程序内存的思想:把运算程序存在机器的存储器中,程序设计员只需要在存储器中寻找运算指令,机器就会自行计算,这样,就不必每个问题都重新编程,从而大大加快了运算进程。这一思想标志着自动运算的实现,标志着电子计算机的成熟,已成为电子计算机设计的基本原则。
17、1946年7,8月间,冯诺依曼和戈尔德斯廷、勃克斯在EDVAC方案的基础上,为普林斯顿大学高级研究所研制IAS计算机时,又提出了一个更加完善的设计报告电子计算机逻辑设计初探。以上两份既有理论又有具体设计的文件,首次在全世界掀起了一股“计算机热”,它们的综合设计思想,便是著名的“冯诺依曼机”,其中心就是有存储程序原则-指令和数据一起存储。,这个概念被誉为计算机发展史上的一个里程碑“它标志着电子计算机时代的真正开始,指导着以后的计算机设计自然一切事物总是在发展着的,随着科学技术的进步,今天人们又认识到”冯诺依曼机“的不足,它妨碍着计算机速度的进一步提高,而提出了”非冯诺依曼机“的设想。冯诺依曼还积
18、极参与了推广应用计算机的工作,对如何编制程序及搞数值计算都作出了杰出的贡献 冯诺依曼于1937年获美国数学会的波策奖;1947年获美国总统的功勋奖章、美国海军优秀公民服务奖;1956年获美国总统的自由奖章和爱因斯坦纪念奖以及费米奖。冯诺依曼逝世后,未完成的手稿于1958年以计算机与人脑为名出版他的主要著作收集在六卷冯诺依曼全集中,1961年出版。,另外,冯诺依曼40年代出版的著作博弈论和经济行为,使他在经济学和决策科学领域竖起了一块丰碑。他被经济学家公认为博弈论之父。当时年轻的约翰纳什在普林斯顿求学期间开始研究发展这一领域,并在1994年凭借对博弈论的突出贡献获得了诺贝尔经济学奖。20世纪最杰
19、出的数学家之一的冯诺依曼1946年发明的电子计算机,大大促进了科学技术的进步,大大促进了社会生活的进步鉴于冯诺依曼在发明电子计算机中所起到关键性作用,他被西方人誉为计算机之父而在经济学方面,他也有突破性成就,被誉为“博弈论之父”。在物理领域,冯诺依曼在30年代撰写的量子力学的数学基础已经被证明对原子物理学的发展有极其重要的价值。在化学方面也有相当的造诣,曾获苏黎世高等技术学院化学系大学学位。他无愧是上世纪最伟大的全才之一。,计算机系统的基本结构,计算机中数据的表示方法,当前的计算机所采用的存储器件都是两态器件,所以适合于存放二进制数据。尽管为了方便起见,也使用其他进制,如十进制、十六进制,但是
20、在计算机内部数据还是以二进制的形式存放和处理。二进制只使用了两个不同的数字符号,易于用物理器件来实现:在物理世界中具有两个稳定状态的物理器件很多,如晶体管的“截止”与“导通”、电容的“充电”与“放电”、电压信号的“高”与“低”、脉冲的“有”与“无”,电磁单元的“正向磁化”与“反向磁化”等等,只要规定其中一种稳定状态表示“1”,另一种稳定状态表示“0”,就可以用来表示二进制数位了。其次,二进制的运算规则非常简单,易于用电子器件来实现。数据的类型多种多样,如文件、图、表、树、阵列、链表、栈、向量、串、实数、整数、布尔数、字符等。计算机里用到的数据类型主要可分为两类:表示数量的数值数据和非数值性的符
21、号数据。所有的数据都是以二进制的形式在计算机里处理和存储。本节主要讲述数值数据在计算机里的表示方法。,数制,进位记数制是一种记数的方法。十进制是最常用的一种。如:12345可以写为:10000+2000+300+40+5相当于:1104+2 103+3 102+4 101+5 100,1104+2 103+3 102+4 101+5 100,基数,权,二进制,二个基本数码:0,1小于二个数用基本数码表示大于二的数用多个基本数码表示表示方法:没有 0个,字符型数据的表示,我们常用十进制数及常用的字母、字符完成信息的输入和输出。但计算机会自动将其转换为二进制数,编码转换工作在计算机输入、输出时自动
22、进行。ASCII码BCD码,ASCII,在计算机中,所有的数据在存储和运算时都要使用二进制数表示,同样的,象a、b、c、d这样的52个字母(包括大写)、以及0、1、2等数字还有一些常用的符号(例如*、#、等)在计算机中存储时也要使用二进制数来表示,而具体用哪个数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通讯而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了所谓的ASCII编码,统一规定了上述常用符号用哪个二进制数来表示。,ASCII,美国标准信息交换代码是由美国国家标准学会(American National Standard
23、 Institute,ANSI)制定的,标准的单字节字符编码方案,用于基于文本的数据。起始于50年代后期,在1967年定案。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,它已被国际标准化组织(International Organization for Standardization,ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母。ASCII 码使用指定的 7 位或 8 位二进制数组合来表示 128 或 256 种可能的字符。标准 ASCII 码也叫基础ASCII码,使用 7 位二进制数来表示所有的大写和小写字母,数字 0 到 9、标点符号
24、,以及在美式英语中使用的特殊控制字符。,ASCII,032及127(共34个)是控制字符或通讯专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(振铃)等;通讯专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为 8、9、10 和 13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。33126(共94个)是字符,其中4857为0到9十个阿拉伯数字;6590为26个大写英文字母,97122号为26个小写英文字母,其余为一些标点符号、运算符号等
25、。同时还要注意,在标准ASCII中,其最高位(b7)用作奇偶校验位。,ASCII,后128个称为扩展ASCII码,目前许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展 ASCII 码允许将每个字符的第 8 位用于确定附加的 128 个特殊符号字符、外来语字母和图形符号。,BCD码,十进制数在键盘输入、打印和显示输出时,往往以ASCII码表示,但是数在机器内是以二进制形式进行运算的。Binary-Coded Decimal,简称BCD,称BCD码或二十进制代码,亦称二进码十进数。是一种二进制的数字编码形式,用二进制编码的十进制代码。这种编码形式利用了四个位元来储存一个十进制的数码,
26、使二进制和十进制之间的转换得以快捷的进行。这种编码技巧,最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。此外,对于其他需要高精确度的计算,BCD编码亦很常用。,汉字的表示,英文为拼音文字,汉字为非拼音文字。显然,汉字编码远比ASCII表要复杂的多。汉字处理过程也远比英文处理的过程复杂得多。,汉字交换码(国标码),1981年5月,信息交换用汉字编码字符集的基本集(代号GB2312-80),该字符集共收录了6763个汉字和682个图形符号。6763个汉字按其使用频率和用途
27、,又可分为一级常用汉字3755个,二级次常用汉字3008个。其中一级汉字按拼音字母顺序排列,二级汉字按偏旁部首排列。采用两个字节对每个汉字进行编码,每个字节各取七位,这样可对12812816384个字符进行编码。GB2312支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。2000年的GB18030是取代GBK1.0的正式国家标准。该标准收录了27484个汉字,同时还收录了藏文、蒙文、维吾尔文等主要的少数民族文字。现在的PC平台必须支持GB18030,对嵌入式产品暂不作要求。所以手机、MP3一般只支持GB2312。
28、,汉字机内码,在计算机内表示汉字的代码是汉字机内码,汉字机内码由国标码演化而来,把表示国标码的两个字节的最高位分别加“1”,就变成汉字机内码。,汉字输入码,汉字是一种拼音,象形和会意文字,本身具有十分丰富的音,形,义等内涵。经过许多的中国人多年的潜心研究,形成了种类繁多的汉字输入码,至今为止,已有好几百种汉字输入码的编码方案问世,其中已经得到了广泛使用的也达几十种之多。按照汉字输入的编码元素取材的不同,可将众多的汉字输入码分为如下4类。,汉字输入码,拼音码:以汉字的汉语拼音为基础,以汉字的汉语拼音或其一定规则的缩写形式为编码元素的汉字输入码统称为拼音码.拼形码:以汉字的形状结构及书写顺序特点为
29、基础,按照一定的规则对汉字进行拆分,从而得到若干具有特定结构特点的形状,然后以这些形状为编码元素拼形而成汉字的汉字输入码统称为拼形码.音形码:这是一类兼顾汉语拼音和形状结构两方面特性的输入码,它是为了同时利用拼音码和拼形码两者的优点,一方面降低拼音码的重码率,另一方面减少拼形码需较多学习和记忆的困难程度而设计的.音形码的设计目标是要达到普通用户的要求,重码少,易学,少记,好用.音形码虽然从理论上看很具有吸引力,但在具体设计时尚存在一定的困难.自然码是一种适应而较广的音形码.序号码:这是一类基于国标汉字字符集的某种形式的排列顺序的汉字输入码.将国标汉字字符集以某种方式重新排列以后,以排列的序号为
30、编码元素的编码方案即是汉字的序号码.,常见的汉字输入法,王码五笔输入法万能五笔输入法微软拼音输入法拼音加加输入法自然码输入法搜狗拼音输入法,汉字字形码,为了将汉字在显示器或打印机上输出,把汉字按图形符号设计成点阵图,就得到了相应的点阵代码(字形码)。,用于显示的字库叫显示字库。显示一个汉字一般采用1616点阵或2424点阵或4848点阵。已知汉字点阵的大小,可以计算出存储一个汉字所需占用的字节空间。例:用1616点阵表示一个汉字,就是将每个汉字用16行,每行16个点表示,一个点需要1位二进制代码,16个点需用16位二进制代码(即2个字节),共16行,所以需要16行2字节/行=32字节,即161
31、6点阵表示一个汉字,字形码需用32字节。即:字节数=点阵行数(点阵列数/8)用于打印的字库叫打印字库,其中的汉字比显示字库多,而且工作时也不像显示字库需调入内存。,所有文字的通用表示,ASCII显然用来处理英文没有什么问题。(实际上也可以用来处理法文、德文等一些其他的西欧字符,但是不能和英文通用),但是面对中文、阿拉伯文之类复杂的文字,255个字符显然不够用。于是,各个国家纷纷制定了自己的文字编码规范,其中中文的文字编码规范叫做“GB2312-80”,它是和ASCII兼容的一种编码规范,其实就是利用扩展ASCII没有真正标准化这一点,把一个中文字符用两个扩展ASCII字符来表示。但是这个方法有
32、问题,最大的问题就是,中文文字没有真正属于自己的编码,因为扩展ASCII码虽然没有真正的标准化,但是PC里的ASCII码还是有一个事实标准的(存放着英文制表符),所以很多软件利用这些符号来画表格。这样的软件用到中文系统中,这些表格符就会被误认作中文字,破坏版面。,所有文字的通用表示,而且,统计中英文混合字符串中的字数,也是比较复杂的,我们必须判断一个ASCII码是否扩展,以及它的下一个ASCII是否扩展,然后才“猜”那可能是一个中文字。总之当时处理中文是很痛苦的。而更痛苦的是GB2312是国家标准,台湾当时有一个Big5编码标准,很多编码和GB是相同的,所以造成了很多乱码。这时候,我们就知道,
33、要真正解决中文问题,不能从扩展ASCII的角度入手,也不能仅靠中国一家来解决。而必须有一个全新的编码系统,这个系统要可以将中文、英文、法文、德文等等所有的文字统一起来考虑,为每个文字都分配一个单独的编码,这样才不会有上面那种现象出现。于是,Unicode诞生了。,所有文字的通用表示,Unicode有两套标准,一套叫UCS-2(Unicode-16),用2个字节为字符编码,另一套叫UCS-4(Unicode-32),用4个字节为字符编码。以目前常用的UCS-2为例,它可以表示的字符数为216=65535,基本上可以容纳所有的欧美字符和绝大部分的亚洲字符。UTF-8的问题后面会提到。在Unicod
34、e里,所有的字符被一视同仁。汉字不再使用“两个扩展ASCII”,而是使用“1个Unicode”,注意,现在的汉字是“一个字符”了,于是,拆字、统计字数这些问题也就自然而然的解决了。,所有文字的通用表示,但是,这个世界不是理想的,不可能在一夜之间所有的系统都使用Unicode来处理字符,所以Unicode在诞生之日,就必须考虑一个严峻的问题:和ASCII字符集之间的不兼容问题。我们知道,ASCII字符是单个字节的,比如“A”的ASCII是65。而Unicode是双字节的,比如“A”的Unicode是0065,这就造成了一个非常大的问题:以前处理ASCII的那套机制不能被用来处理Unicode了。
35、另一个更加严重的问题是,C语言使用0作为字符串结尾,而Unicode里恰恰有很多字符都有一个字节为0,这样一来,C语言的字符串函数将无法正常处理Unicode,除非把世界上所有用C写的程序以及他们所用的函数库全部换掉。,所有文字的通用表示,于是,比Unicode更伟大的事物诞生了,之所以说它更伟大是因为它让Unicode不再存在于纸上,而是真实的存在于我们大家的电脑中。那就是:UTF。UTF=UCS Transformation Format UCS转换格式 它是将Unicode编码规则和计算机的实际编码对应起来的一个规则。现在流行的UTF有2种:UTF-8和UTF-16。其中UTF-16和上
36、面提到的Unicode本身的编码规范是一致的,这里不多说了。而UTF-8不同,它定义了一种“区间规则”,这种规则可以和ASCII编码保持最大程度的兼容。,音频和视频信息的表示,计算机CPU只能处理二进制信号,因此所有的音频、视频信息进入CPU之前都要先转换成二进制数据,才能交给CPU加工处理;反之,从CPU输出的声音/图像信息,也要先从二进制数据转换成音频/视频模拟信号,然后再交给输出设备。上述转换对用户来说是完全透明的,不需用户干预。,网络计算机运行方式,现今被广泛应用的是主从式运算结构,主要包括C/S和B/S结构两种。,C/S(Client/Server)结构,即大家熟知的客户机和服务器结
37、构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。,B/S结构,B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。,当前主要的浏览器是Internet Explorer和Mozilla Firefox,大部分客户端都支持Internet Explorer。服务器使用JSP、PHP和ASP编写。,