一 计算机的发展
1956年,周总理亲自主持制定的《十二年科学技术发展规划》 中 ,就把计算机列为发展科学技术的重点之一,并在1957年筹建中国第一个计算技术研究所。中国计算机事业的起步比美国晚了13年,但是经过毛泽东时代老一辈科学家的艰苦努力,中国与美国的差距不是某些人所歪曲的"被拉大了",而是缩小了。2002年8月10日,我国成功制造出首枚高性能通用CPU--龙芯一号。此后龙芯二号问世,龙芯三号也正在紧张的研制中。龙芯的诞生,打破了国外的长期技术垄断,结束了中国近二十年无"芯"的历史。
二 开端
1956年3月,由闵乃大教授、胡世华教授、徐献瑜教授、张效祥教授、吴几康副研究员和北大的党政人员组成的代表团,参加了在莫斯科主办的"计算技术发展道路"国际会议。这次参会可以说是到前苏联"取经",为我国制定12年规划的计算机部分作技术准备。随后在制定的12年规划中确定中国要研制计算机,并批准中国科学院成立计算技术、半导体、电子学及自动化四个研究所。当时的计算技术研究所筹备处由中国科学院、总参三部、国防五院(七机部)、二机部十局(四机部)四个单位联合成立,北京大学、清华大学也相应成立了计算数学专业和计算机专业。为了迅速培养计算机专业人才,这三个方面联合举办了第一届计算机和第一届计算数学训练班。计算数学训练班的学生有幸听到了刚刚归国的国际控制论权威钱学森教授以及在美国有3~4年编程经验的董铁宝教授(他当时是国内唯一真正直接接触过计算机多年的学者)的讲课。
在前苏联专家的帮助下,中国科学院计算技术研究所,由七机部张梓昌高级工程师领衔研制的中国第一台数字电子计算机103机(定点32二进制位,每秒2500次)在1958年交付使用,骨干有董占球、王行刚等年轻人。随后,由总参张效祥教授领衔研制的中国第一台大型数字电子计算机104机(浮点40二进制位,每秒1万次)在1959年也交付使用,骨干有金怡濂、苏东庄、刘锡刚、姚锡珊、周锡令等。其中,磁心存储器由计算所副研究员范新弼和七机部黄玉珩高级工程师领导完成。在104机上建立的,由钟萃豪、董蕴美领导的中国第一个自行设计的编译系统是在1961年试验成功。
三 历程
第一代电子管计算机研制
(1958-1964年)
我国从1957年在中科院计算所开始研制通用数字电子计算机,1958年8月1日该机可以表演短程序运行,标志着我国第一台电子数字计算机诞生。机器在738厂开始少量生产,命名为103型计算机(即DJS-1型)。1958年5月我国开始了第一台大型通用电子数字计算机(104机)研制。在研制104机同时,夏培肃院士领导的科研小组首次自行设计并于1960年4月研制成功一台小型通用电子数字计算机107机。1964年我国第一台自行设计的大型通用数字电子管计算机119机研制成功。
第二代晶体管计算机研制
(1965-1972年)
1965年中科院计算所研制成功了我国第一台大型晶体管计算机:109乙机;对109乙机加以改进,两年后又推出109丙机,在我国两弹试制中发挥了重要作用,被用户誉为"功勋机"。华北计算所先后研制成功108机、108乙机(DJS-6)、121机(DJS-21)和320机(DJS-8),并在738厂等五家工厂生产。1965~1975年,738厂共生产320机等第二代产品380余台。哈军工(国防科大前身)于1965年2月成功推出了441B晶体管计算机并小批量生产了40多台。
第三代中小规模集成电路的计算机研制
(1973-80年代初)
1973年,北京大学与北京有线电厂等单位合作研制成功运算速度每秒100万次的大型通用计算机,1974年清华大学等单位联合设计,研制成功DJS-130小型计算机,以后又推DJS-140小型机,形成了100系列产品。与此同时,以华北计算所为主要基地,组织全国57个单位联合进行DJS-200系列计算机设计,同时也设计开发DJS-180系列超级小型机。70年代后期,电子部32所和国防科大分别研制成功655机和151机,速度都在百万次级。进入80年代,我国高速计算机,特别是向量计算机有新的发展。
第四代超大规模集成电路的计算机研制
和国外一样 ,我国第四代计算机研制也是从微机开始的。1980年初我国不少单位也开始采用Z80,X86和6502芯片研制微机。1983年12电子部六所研制成功与IBM PC机兼容的DJS-0520微机。10多年来我国微机产业走过了一段不平凡道路,现在以联想微机为代表的国产微机已占领一大半国内市场。
四 主奠基人
提到中国计算机,就不能不提起华罗庚教授,他是我国计算技术的奠基人和最主要的开拓者之一。华罗庚和中国的计算机事业早在1947~1948年,华罗庚在美国普林斯顿高级研究院任访问研究员时,就和冯·诺依曼(J.Von Neumann)、哥尔德斯坦(H.H.Goldstion)等人交往甚密。华罗庚在数学上的造诣和成就深受冯·诺依曼等人的赞赏。当时,冯·诺依曼正在设计世界上第一台存储程序的通用电子数字计算机。冯让华罗庚参观实验室,并常和他讨论有关学术问题。这时,华罗庚的心里已经开始勾画中国电子计算机事业的蓝图。
华罗庚教授1950年回国,1952年在全国大学院系调整时,他从清华大学电机系物色了闵乃大、夏培肃和王传英三位科研人员在他任所长的中国科学院数学所内建立了中国第一个电子计算机科研小组。1956年筹建中科院计算技术研究所时,华罗庚教授担任筹备委员会主任。
五 计算机的组成
计算机组成指的是系统结构的逻辑实现,包括机器机内的数据流和控制流的组成及逻辑设计等。主要分为五个部分:控制器,运算器,存储器,输入设备,输出设备。
六 计算机组成的概念
计算机组成的任务是在指令集系统结构确定分配给硬件系统的功能和概念结构之后,研究各组成部分的内部构造和相互联系,以实现机器指令集的各种功能和特性。这种联系包括各功能部件的内部和相互作用。
计算机组成要解决的问题是在所希望达到的性能和价格下,怎样最佳,最合理地把各个设备和部件组成成计算机,已实现所确定的ISA。计算机组成设计要确定的方面应包括:
(1)数据通路宽度:数据总线上一次并行传送的信息位数。
(2)专用部件的设置:是否设置乘除法、浮点运算、字符处理、地址运算等专用部件,设置的数量与机器要达到的速度、价格及专用部件的使用频度等有关。
(3)各种操作对部件的共享程度:分时共享使用程度高,虽限制了速度,但价格便宜。设置部件多降低共享程度,因操作并行度提高,可提高速度,但价格也会提高。
(4)功能部件的并行度:是用顺序串行,还是用重叠、流水或分布式控制和处理。
(5)控制机构的组成方式:用硬联还是微程序控制,是单机处理还是多机或功能分布处理。
(6)缓冲和排队技术:部件间如何设置及设置多大容量的缓冲器来协调它们的速度差;用随机、先进先出、先进后出、优先级,还是循环方式来安排事件处理的顺序。
(7)预估、预判技术:为优化性能用什么原则预测未来行为。
(8)可靠性技术:用什么冗余和容错技术来提高可靠性。
七 硬件组成部分
主要分为五个部分:
- 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。
- 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。
- 存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。
- 输入(Input system):输入设备是计算机的重要组成部分,输入设备与输出设备合称为外部设备,简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。
- 输出(Output system):输出设备与输入设备同样是计算机的重要组成部分,它把计算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示终端CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。
八 软件是什么
计算机软件(ComputerSoftware)是指计算机系统中的程序及其文档。程序是计算任务的处理对象和处理规则的描述;文档是为了便于了解程序所需的阐述性资料。程序必须装入机器内部才能工作,文档一般是给人看的,不一定装入机器。软件是用户与硬件之间的接口界面。用户主要是通过软件与计算机进行交流。软件是计算机系统设计的重要依据。为了方便用户,为了使计算机系统具有较高的总体效用,在设计计算机系统时,必须通盘考虑软件与硬件的结合,以及用户的要求和软件的要求。
软件的正确含义应该是:
(1)运行时,能够提供所要求功能和性能的指令或计算机程序集合。
(2)程序能够满意地处理信息的数据结构。
(3)描述程序功能需求以及程序如何操作和使用所要求的文档。
软件具有与硬件不同的特点:
(1)表现形式不同硬件有形,有色,有味,看得见,摸得着,闻得到。而软件无形,无色,无味,看不见,摸不着,闻不到。软件大多存在人们的脑袋里或纸面上,它的正确与否,是好是坏,一直要到程序在机器上运行才能知道。这就给设计、生产和管理带来许多困难。
(2)生产方式不同软件是开发,是人的智力的高度发挥,不是传统意义上的硬件制造。尽管软件开发与硬件制造之间有许多共同点,但这两种活动是根本不同的。
(3)要求不同硬件产品允许有误差,而软件产品却不允许有误差。
(4)维护不同硬件是要用旧用坏的,在理论上,软件是不会用旧用坏的,但在实际上,软件也会变旧变坏。因为在软件的整个生存期中,一直处于改变维护状态。
计算机软件分为系统软件和应用软件,如果把计算机比喻为一个人的话,那么硬件就表示人的身躯。而软件则表示人的思想、灵魂。一台没有安装任何软件的计算机我们把它称之为"裸机"。
九 软件部分 软件分为系统软件和应用软件
1.系统软件
系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。(如Windows、Linux、Dos、Unix等操作系统都属于系统软件。)
2.应用软件
应用软件(application software)是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。应用软件包是利用计算机解决某类问题而设计的程序的集合,供多用户使用。计算机软件分为系统软件和应用软件两大类。应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。 它可以拓宽计算机系统的应用领域,放大硬件的功能。(如Word、Excel、QQ等都属于应用软件)