当前位置: 首页 > news >正文

编辑语言发展历史

 

人类第一台 电 子 计 算 机,即“埃 尼 阿 克(ENIAC)” 问世于1946年,由大量的电子管组成,用 于 进 行 弹 道 计算。自埃尼阿克的面世以后,电子计算机经历了电子管 - 晶 体 管 - 集 成 电 路 - 超大规模集成电路的阶 段,运行速度越 来 越 快,而体积和成本也越来越低,从 早期只能手动控制,到现在使用高级语 言 编 程,也 经 历 了长时间的 发 展 过 程。一般认为,计算机语言最早由 二进制0与1所 组 成,计算机通过读取穿孔卡片从而 获得相应的指令序列,与人类所使用的语言相差甚远, 其方式类似于摩尔斯电码。汇编语言在二进制码的基础上,加入了一定的助记符帮助程序员记忆操作码,但 仍然十分繁琐。而高级语言诸如 Fortran,C,C+ +, JAVA 等,伴随着个人电脑的普及,使编程语言的可读 性大大提高。计算机语言的不断发展,其根本推动力 是抽象机制更高 的 要 求,以及对程序设计思想更好的 支持,也可以说使及其能够理解的语言提升到能够很 好模拟人类思考问题的形式(李 源,2008)。而 高 级 语 言的发展过程,从 C语言的面向过程 式 编 程 语 言,到 C ++,Python的面向对象式 编 程,到 现 在 Swift面 向 协 议式编程,可以说从无论式以纵向,即 机 器 语 言,汇 编 语言以及高级语言,还是以高级语言这个横 向 维 度,从 面向过程中使用函数一步一步的执行指令,到 面 向 过 程式的编程讲问题分解成多个对象,可以看出编程方 式越来越贴近实 际 生 活,而且平台无关的特性使程序 可以方便地被移植到网络上的不同机器、不同平台葛伟丽,2008)。语言的简化使得开发周期缩短,而 面 向 对象与面向协议又与当今流行得敏捷开发模式相互契 合,大大加快程序开发的 速 度,今日各式各样得程序的,已经在数量上远远超过了几十年前,已 难 以 用 数 量 来估算。可以说形形色色的程序已经成为我们生活中 的一部分。 索绪尔提出了语言学的基本概念、研究方向 和 任 务,对现代语言 学、符号学等学科产生了深远影响,成 为结构主 义 的 重 要 来 源(王 铭 玉 等,2015)。自 索绪尔 开创现代语言学理论以后,语义 学,语 用 学,生 成 语 法,功能对等等诸多理论于上世纪相继出现,语 言 学 理 论 百花 齐 放,人们纷纷从哲学,社 会 学,心理学等角度对 于语言现象进 行 阐 释,逐步形成了正是由此形成了形 式主义和功能主义这两大语言学阵营,它 们 互 为 补充, 共同支撑起了当代语言学的大厦(王铭玉等,同上)。

索绪尔曾认为,语言既是一个 系 统,它 的 各 项 因 素 都有着连带关系,而且其中每项要素的价值都只是因 为有其他各项要素同时存在的结果。那么从这个层面 看,无论何种计算机编程语言,都可以构成一个系统, 且每一个语句,函数都有着连带的关系,而 语 句 和 函 数 之间正是 因 为 相 互 存 在,相 互 依 存,才构成了程序本 身。而人与计算机之间的交互可以看作是一个言语活 动,人类通过输入编程语言与计算机交互,而 计 算 机 执 行人类所输入的编程语言从而给予人类反馈信息,从 以上可以看出,计算机编程语言可视作人与机器之间 交流的一种“语言”,具有一些语言所具有的特性。

 

1952年,对于程序设计来说是具有重要里程碑意义的一一年。MT (美国麻省理工学院)在Whirlwind 系统上使用了符号地址,开始使用汇编语言来编写程序。Whirlwind被美国空军用于控制实时防御系统。

      1954年,IBM公司的JohnBackus和他领导的研究小组开始研制Fortran(FormulaTranslation)语言,这是一种用于科学计算的编程语言。Fortran 语言于1957年研制完成。Fortran支持一些最常用的编码方式,如算术表达式、逻辑运算、过程调用、循环和条件等等。相对汇编语言来说,Fortran 可以被称为高级语言,它提高了程序员的编程效率。Fortran历尽变迁,如今演变成为Visual Fortran。

      1958年,Robert Noyce (Intel公司的创始人)发明了集成电路。1959 年Grace MurrayHopper开始研制COBOL  ( Common Business-Oriented Language)语言,并于1961年完成。COBOL在银行系统和许多大型企业中得到了广泛的应用。直到今天,仍然有许多用COBOL编制的程序在大型机上运行。

      1960年,来自丹麦、英国、法国、德国、荷兰、瑞士和美国的13名代表举行了一次国际会议,会后在计算机权威刊物CACM上发表了“关于算法语言Algol60的报告”。Algol是一“ 种用日常英语以及与常用数学表达式相近的形式表现算法的语言,没有输入输出语句,全部以过程的形式进行描述,以块结构为基础。Algol 是第一一个结构化编程语言。
      1961年,IBM的Kennth Iverson推出APL编程语言,专门用于矩阵运算。

      1965年,  Thomas E. Kurtz和John Kemeny研制了BASIC ( Beginners All PurposeSymbolic Instruction Code)语言。BASIC 特别适合于计算机教育和初学者使用,后来发展成为Visual Basic,为Microsoft公司挣了很多钱。
      1967年,Niklaus Wirth开始在Algol 基础之上开发PASCAL语言,于1971 年研制完成。PASCAL后来成为Borland公司用来对抗Microsoft公司的利器。但是这个时候,无论是Microsoft还是Borland都还没有出世。
      1968年,Seymour Paper和他的研究小组在MT开发了LOGO语言。LOGO语言非常有趣,适用于教育领域。LOGO语言的标志是一个有趣的忍者神龟。
      1969年,ARPANET 计划启动( Advanced Research Projects Agency Network),这是      现代Internet的雏形。1970年, 许多大学和商业部门开始接入ARPANET。Internet 的发展又带动了一.批新的语言,但这是二十年之后的事了。

 

      1970年Ken Thomson和Dennis Ritchie开始研制UNIX操作系统。

 

      1971年11月15日,  Intel公司的Marcian E. Hoff 研制成功第一“ 块微处理器4004.它含2300个晶体管,是个4位系统,时钟频率108KHz,每秒执行6万条指令。

 

      1972年,贝尔实验室发明了C语言。C兼有低级语言和高级语言的功能,被人们称为中级语言。C是一个功能强大的编程语言,它最初因被用于开发Unix系统而闻名于世。到80年代,贝尔实验室又发明了C++语言。C和C++被誉为是程序员的“正宗编程语言”,它们的广泛应用极大地推动了软件业的发展。

 

      1974年,这-一年发生了许多重大的事件。4月1日Intel发布了8位的微处理器芯片8080。12月,MTS发布了Altair 8800,这是第一台商用个人计算机,价值397美元,内存只有256个字节。同年,Bill Gates和Paul Allen开始开发第一个在MTS的Altair计算机上运行的BASIC程序,他们手头甚至没有Altair 计算机。

 

      1975年Bill Gates和Paul Allen创办了Micorsoft 公司。要是那个时候人们买了Microsoft公司的股票,那该多好啊。

 

      1976年Zilog 推出Z80处理器,这是一个8位的微处理器。CP/M 就是基于Z80的操作系统。

 

      1979年Jean Ichbiah研制了Ada 语言,被广泛用于美国军方。同年,IBM公司眼看着个人计算机市场被苹果等电脑公司占有,决定开发自己的个人计算机。Microsoft 公司不但提供了用于IBM-PC的BASIC语言,还承担了操作系统的开发。

 

 1981年8月,IBM推出了首款IBM-PC,同时也为Microsoft的崛起铺平了道路。在IBM-PC发布的同时,MS-DOS 1.0 和PC-DOS 1.0也一起发布。Microsoft 受IBM委托开发DOS操作系统,他们从Tim Paterson那里购买了一个叫86-DOS的程序并加以改进。从IBM卖出去的叫PC-DOS,从Microsoft卖出去的叫MS-DOS。Microsoft精明地保留了继续开发的权利。DOS的最初版本里Bug很多,以至于被称为“ Dirty OperationSystem",但这却是Microsoft独霸PC操作系统的开始。

      1983年Borland公司成立。其创始人是Philippe Kahn和Anders Hejlsberg,他们合作研制了Turbo Pascal,  并在著名的Byte杂志上登广告。售价49.99美元的Turbo Pascal是一个革命性的产品,它能够在RAM中常驻运行,又具有闪电般的编译速度,成为当时PC.上最流行的开发工具。Borland 也由此迈上了其影响PC软件开发工具十几年的道路。

      1985年,Microsoft 发布了Windows 1.0。最初的Windows存在很多严重的Bug,不仅少有人用而且被人讥笑。一直熬到1993 年,  Windows 3.1才获得成功。Windows 的图形用户界面与Apple 公司的类似,以致于被Apple公司控告。诉讼一直持续到1997 年8月,  Apple遇到了严重的财务危机,  Microsoft伸出资本的双手,向Apple注资1.5亿美元,  换来了Apple 撤消其控诉。

      1989年,欧洲物理粒子研究所的TimBerners-Lee创作了WorldWideWeb雏形,HTML语言开始流行,大大地推动了Internet 的发展。

1994年Netscape 1.0浏览器发布。
1995年8月,Microsoft 发布了32位的多任务操作系统Windows95,该版本取得了

      巨大的成功。

      同年,号称“一次编译,到处运行”的Java语言诞生。1995年12月年,Netscape 发布了JavaScript。

      1996年1月,Netscape Navigator 2.0发布,这是第一个支持JavaScript 的浏览器。

2002年,Microsoft 发布了NET,开始与Java阵营竞争。

摘自:鬼木25

转载于:https://www.cnblogs.com/snowdeer/p/9905816.html

相关文章:

  • Python3+Selenium3自动化测试-(三)
  • 福大软工 · 第七次作业 - 需求分析报告
  • Linux 学习之路 --------ip地址虚拟网络
  • python基础知识梳理----6set 集合的应用
  • ajax中发送csrf的方法,(django环境)
  • CentOS 7.3 上安装docker
  • pycharm 取消空格,逗号 等符号的自动补全
  • Spring MVC 数据绑定 (四)
  • jupyter notebook中使用mpld3进行交互
  • C++Primer笔记-----继承
  • 最小支配集讲解
  • JS事件类型
  • ansible批量管理工具
  • json 序列化和反序列化的3个方法
  • Mac 启动 ssh 服务
  • 30天自制操作系统-2
  • 4. 路由到控制器 - Laravel从零开始教程
  • const let
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • Fastjson的基本使用方法大全
  • Git学习与使用心得(1)—— 初始化
  • js 实现textarea输入字数提示
  • Laravel Mix运行时关于es2015报错解决方案
  • laravel with 查询列表限制条数
  • Linux CTF 逆向入门
  • Linux Process Manage
  • MySQL数据库运维之数据恢复
  • Nodejs和JavaWeb协助开发
  • PHP那些事儿
  • Python3爬取英雄联盟英雄皮肤大图
  • Redis学习笔记 - pipline(流水线、管道)
  • REST架构的思考
  • Sass 快速入门教程
  • supervisor 永不挂掉的进程 安装以及使用
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 前端临床手札——文件上传
  • 以太坊客户端Geth命令参数详解
  • 原生 js 实现移动端 Touch 滑动反弹
  • kubernetes资源对象--ingress
  • ​flutter 代码混淆
  • ###C语言程序设计-----C语言学习(6)#
  • #LLM入门|Prompt#1.8_聊天机器人_Chatbot
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (bean配置类的注解开发)学习Spring的第十三天
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (webRTC、RecordRTC):navigator.mediaDevices undefined
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .bat批处理(八):各种形式的变量%0、%i、%%i、var、%var%、!var!的含义和区别
  • .gitignore文件设置了忽略但不生效
  • .NET Framework 和 .NET Core 在默认情况下垃圾回收(GC)机制的不同(局部变量部分)