6.计算机语言的发展 编程语言发展 编程语言类型 为什么会有编程语言 编程语言什么作用 机器语言 高级语言分类 编程语言历史 编程语言有哪些 编程语言编年史

语言

计算机语言指用于人与计算机之间通讯的语言,也即是平时说的编程语言

编程

指令的概念很早就形成了,其实指令本身就是一种编程

一个指令替代了一组逻辑电路或者机电式/机械式中的一个计算单元

你只需要一个指令就相当于已经操作了一整个的模块

这不也是一种编程的思维吗,只不过是指令对应硬件

随着指令在现代计算机中的应用,计算机程序得以快速的发展

因为一旦你知道计算机可以执行哪些指令,其实也就是哪些功能,具有哪些能力

你就可以把这些指令按照一定的逻辑顺序重排组装

这就是广义上的计算机程序

计算机语言的发展有两个阶段

面向机器到脱离机器的转变

针对不同场景解决不同业务逻辑问题方向的发展

机器语言

为了使用计算机计算,必须将程序指令输入到计算机中

最原始的时候那就是开关和纸带,也就是相当于直接使用二进制来工作,而且是人工操作

也就是使用该机器指令01组合的字符串

也就是机器语言,这其实是纯粹的计算机语言

汇编语言

就如同母语是普通话的人就不能天生的和母语是英语的人交流

想要交流就必须有人要学习一门外语

而想要学习计算机的机器语言这门外语,远比学习英语要复杂晦涩

因为机器语言01字符串对于人类的认知来说,完全就等同于乱码

难读、难编、难记和易出错

你根本不会知道到底是什么意思

随后,开始用与代码指令实际含义相近的英文缩写词、字母和数字等符号来替代描述指令代码

出现了汇编语言,汇编语言只是机器语言的助记符语言

不同的机器有不同的汇编语言

需要汇编程序翻译成计算机可以识别的二进制机器语言

本质还是面向机器的低级语言

机器语言和汇编语言都是面向硬件的具体操作的,语言对机器过分依赖,所以称之为低级语言

高级语言

为了能够更加通用的解决问题,而不是专注于硬件本身,出现了高级语言

高级语言不用关注机器的指令,使用接近人习惯的自然语言和数学语言符号

能够专注于问题本身的业务逻辑

显然高级语言也是不能直接运行于机器上的,需要翻译程序转换为机器可以执行的目标代码程序

虽然高级语言不涉及寄存器这些东西,不需要你了解硬件

但是这是高级语言隐藏了她们,而不是说这些东西不存在不重要,所有的语言都逃不过这一关

始终是要编程机器语言的

也正是由于隐藏了太多东西,就好像与底层的东西隔着好几层玻璃

尽管看的见,但是自然清晰度下降

直接后果就是编译后的文件变得更大,执行速度将会变慢(相对于汇编)

从网上扒出来一份统计,或许不准,作为了解

1951 – Regional Assembly Language

1952 – Autocode

1954 – IPL (LISP语言的祖先)

1955 – FLOW-MATIC (COBOL语言的祖先)

1957 – FORTRAN (第一个编译型语言)

1957 – COMTRAN (COBOL语言的祖先)

1958 – LISP

1958 – ALGOL 58

1959 – FACT (COBOL语言的祖先)

1959 – COBOL

1959 – RPG

1962 – APL

1962 – Simula

1962 – SNOBOL

1963 – CPL (C语言的祖先)

1964 – BASIC

1964 – PL/I

1966 – JOSS

1967 – BCPL (C语言的祖先)

1968 – Logo

1969 – B (C语言的祖先)

1970 – Pascal

1970 – Forth

1972 – C

1972 – Smalltalk

1972 – Prolog

1973 – ML

1975 – Scheme

1978 – SQL

1980 – C++ (既有类的C语言,更名于1983年7月)

1983 – Ada

1984 – Common Lisp

1984 – MATLAB

1985 – Eiffel

1986 – Objective-C

1986 – Erlang

1987 – Perl

1988 – Tcl

1988 – Mathematica

1989 – FL

1990 – Haskell

1991 – Python

1991 – Visual Basic

1993 – Ruby

1993 – Lua

1994 – CLOS (ANSI Common Lisp的一部分)

1995 – Java

1995 – Delphi (Object Pascal)

1995 – JavaScript

1995 – PHP

1996 – WebDNA

1997 – Rebol

1999 – D

2000 – ActionScript

2001 – C#

2001 – Visual Basic .NET

2002 – F#

2003 – Groovy

2003 – Scala

2007 – Clojure

2009 – Go

2011 – Dart

完整内容点击标题进入

《计算机软硬件发展系列个人理解与总结-导航页》

1.计算机发展阶段

2.计算机组成-数字逻辑电路

3.操作系统简单介绍

4.计算机启动过程的简单介绍

5.计算机发展个人理解-电路终究是电路

6.计算机语言的发展

7.计算机网络的发展

8.web的发展

9.java web的发展

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序人生

elixir:灵丹妙药?or 徒有其名?

13年的时候正在追Erlang,有天看见Joe老爷子的一篇博客介绍Elixir [1],才第一次听到这个语言。 This has been my first w...

40050
来自专栏牛客网

一点咨询 提前批 大数据岗 面经总结

【每日一语】这个世界,生活,人本身,都是荒诞的。不要白费心智去猜,去理论,因为无可猜,无可理论。事情并不一定要因为一个理由而发生,发生之后并不一定要达到什么目的...

18010
来自专栏牛客网

面经--微博&&今日头条

21700
来自专栏顶级程序员

转行学习Python,完全0基础能否学会?

源 / python教程 文 / 小雨 人生苦短,我用Python,为啥这么说,因为我们有个金句:学完Python,便可上天 ~ 废话不多说,相信很多...

39150
来自专栏Java Web

秋招提前批小结(CVTE一面挂、阿里三面挂)

1.自我介绍 2.有没有做过JavaWeb相关的项目?你觉得难点在哪里呢? 3.你这个博客系统有没有加权限系统?如果被拦截封包获取了账号密码怎么办?(没加,...

38310
来自专栏微信公众号:Java团长

成为优秀Java程序员的10大技巧

Java程序员有许多应遵循的守则或最佳实践方式。本文概述了每个开发者最应该遵循的10条守则或戒律,如果不遵循它们,将会导致灾难性后果。

7110
来自专栏Golang语言社区

改变未来IT世界的十种编程语言:Go语言

这里要说的都是革新,说这些的目的就是要保持关注最新技术。如果你是一个程序员,想要探寻未来技术,那这篇文章就是你的必读之选。我们这里列出了10种编程语言,10种将...

54750
来自专栏web编程技术分享

小兔JS教程(一) -- 环境搭建与JavaScript初探1.开发环境搭建2.JavaScript初探

35790
来自专栏阮一峰的网络日志

1979年的电子打字机

上周五,《大西洋》月刊的记者James Fallows,在Blog上回忆28年前(1982年)的一篇旧文。 那个时候,他刚入行不久,每周有大量的写稿任务,天天都...

29740
来自专栏玄魂工作室

CTF实战24 二进制软件逆向分析基础

该培训中提及的技术只适用于合法CTF比赛和有合法授权的渗透测试,请勿用于其他非法用途,如用作其他非法用途与本文作者无关

14920

扫码关注云+社区

领取腾讯云代金券