程序设计语言

来自CloudWiki
跳转至: 导航搜索

计算机的历史

第一台计算机

  • L105.jpg
  • 1943年,此时正是二战时期,美国为了实验新式火炮,需要计算火炮的弹道表。需要进行大量计算。一张弹道表需要计算近4000条弹道,每条弹道需要计算750此乘法和更多的加减法,工作量巨大。 你可以想象这样一个场景:一发炮弹大出去,100多人用一种手摇计算机算个不停,还经常出错,费力不讨好。当时任职宾夕法尼亚大学莫尔电机工程学院的莫希利(John Mauchly)于 1942年提出了试制第一台电子计算机的初始设想——“高速电子管计算装置的使用”,期望用电子管代替继电器以提高机器的计算速度。终于在1946年2月14日,世界上第一台通用计算机 (多个行业都可以使用)埃历阿克”(ENIAC,译成中文是“电子数字积分和计算机”)诞生于美国宾夕法尼亚大学。

第2代计算机

  • Java-103.jpeg
  • 第二代计算机采用的主要元件是晶体管,称为晶体管计算机。计算机软件有了较大发展,采用了监控程序,这是操作系统的雏形。第二代计算机有如下特征:

(1)采用晶体管元件作为计算机的器件,体积大大缩小,可靠性增强,寿命延长。

(2)运算速度加快,达到每秒几万次到几十万次。

(3)提出了操作系统的概念,开始出现了汇编语言,产生了如FORTRAN和COBOL等高级程序设计语言和批处理系统。

(4)普遍采用磁芯作为内存储器,磁盘、磁带作为外存储器,容量大大提高。

(5)计算机应用领域扩大,从军事研究、科学计算扩大到数据处理和实时过程控制等领域,并开始进入商业市场。

第3代计算机

  • Java1-42.png
  • 硬件件方面,逻辑元件采用中、小规模集成电路(MSI、SSI),主存储器仍采用磁芯。软件方面出现了分时操作系统以及结构化、规模化程序设计方法。特点是速度更快(一般为每秒数百万次至数千万次),而且可靠性有了显著提高,价格进一步下降,产品走向了通用化、系列化和标准化等。应用领域开始进入文字处理和图形图像处理领域。


计算模式的分与合

计算模式的转变过程——分与合

计算——小型化,高速化——集中化——网络化——分布式——中心化——边缘化,智能化

O1-22.png

(华为P20 :用本地算法实现计算)

(思科:将人工智能用于网络管理)

程序设计语言

  • P1-101.jpg

第1代语言:机器语言

  • P1-102.jpg

第2代语言:汇编语言

ADD DEST,SRC
SUB DEST,SRC
  • P1-103.jpg

第3代语言:高级语言

  • P1-104.jpg
  • 高级语言有:BASIC(True basic、Qbasic、Virtual Basic)、C、C++、PASCAL、FORTRAN、智能化语言(LISP、Prolog、CLIPS、OpenCyc、Fazzy)、动态语言(Python、PHP、Ruby、Lua)等等
  • 高级语言是绝大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成为单条指令并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。由于省略了很多细节,所以编程者也不需要具备太多的专业知识。

程序的类别

按用途分

  • 可分为系统软件和应用软件:
  • Java1-105.jpg
  • Java1-106.jpg

按位置分

  • 可分为客户端和服务器端
  • Java1-109.jpg
  • Java1-107.jpg
  • Java1-108.jpg
  • Java1-43.png

 

参考文档: 下一节 Python语言概述