计算机语太措言包括机器语言、汇编语言、高级语言。机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机来自的硬件结构赋予计算机的操作功能,比如汇编语言(assembly language)。机器望语言具有灵活、直接执行和速度快等特点。高级语言比较容易识飞认信市志铁与记和理解,像C B语言等。
用机器语言编写程序,编程人员要来自首先熟记所用计算机的全部指令代码和代码的涵义。手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。360百科这是一件十分繁琐的工作,编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且,编出的程序全是些0和1的指令代码。直观性差,还容易出错。除了计算机生产厂家的专业人员外,绝大多数程序员已经不再去学习机器语言了。
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际我兰界报求庆聚镇含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号"+"的机器代码),于是就产生了汇编转生带权了又语言。所以说,汇编语言是一科种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称符号语言。汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码。而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇江情输适器万衣眼副还编语言能面向机器并较好地发挥机器的特性,得到质量较高的程弦甲家十系乱源军序。
汇编语言中由于使用了助记符号,用汇编语言编制的程序送入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的 "汇编程序"的加工和翻译,才能变成能够被计算机备缩国土创怀况似识别和处理的二进制代码程序。用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是油诗评友机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。
汇编语言肉像机器指令一样,是硬件操作的控制信息,因而仍然是面星脚越领批角向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。但是,汇编语言用来编制系统软件和过程控制训低行将全金研果软件,其目标程序占用内存空间很战型广席七点令笔少,运行速度快,有着高级语言不可替婷土亮故略武位妈岁官代的用途。
不论是机器语言还是汇编语言表都是面向硬件的具体操质但速风才都固职作的,语言对机器的过分依赖,要散抓稳求使用者必须对硬件结构及其工作原理都十分提熟悉,这对非计算机她子问团阻艺后二语专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。这种与自然语言相近并为计望情没穿环兵脱算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的程序就可以通用。
如今被广泛使用的高级语言有BASIC、PASCAL、C、COBOL、FORTRAN、LOGO以及VC、VB等。这些语言都是属于系统软件。
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"翻译"通常有两种方式,即编译方式和解释方式。编译方式是:事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:源程序进入计算机时,解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。PASCAL、 FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。每一种高级(程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件功能相分离(彻底脱离了具体的指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植。
常见的汇编语言见下表:
汇编语言 | OS/Plantform | 开放源代码 | 许可证 | x86-64/指令集 |
A86/A386 | Windows, DOS | 否 | 专有软件 | 否 |
DevelSoftware Assembler | Windows, Linux, Unix-like | 否 | 免费软件 | 是 |
FASM | Windows, DOS, Linux, Unix-like | 是 | BSD许可证 | 是 |
GAS | Unix-like, Windows, DOS | 是 | GNU通用公共许可证 | 是 |
GoAsm | Windows | 否 | 免费软件 | 是 |
HLA | Windows, Linux, FreeBSD, Mac OS X | 是 | 公有领域 | ? |
JWASM | Windows, DOS | 是 | Sybase 开放公共许可证 Watcom | 否 |
LZASM | Windows, DOS | 否 | 免费软件 | ? |
NASM | Windows, Linux, Mac OS X, DOS, OS/2 | 是 | BSD许可证 | 是 |
POASM | Windows, Windows Mobile | 否 | 免费软件 | 是 |
TCCASM | Unix-like, Windows | 是 | LGPL | ? |
Yasm | Windows, DOS, Linux, Mac OS X, Unix-like | 是 | BSD | 是 |
MASM | Windows, DOS | 否 | 专有软件 | 是 |
WASM | Windows, DOS, OS/2 | 是 | Sybase Open Watcom Public License | 否 |
TASM | Windows, DOS | 否 | 专有软件 | 否 |
PASMO | Numerous | 否 | GPL | Zilog Z80 |
MRS | ZX Spectrum, PMD-85 | 否 | GPL | Zilog Z80,8080 |
MACRO-11 | PDP-11 | 否 | ** unknown ** | PDP-11 |
MAC/65 | Atari 8-bit family | 否 | Proprietary | MOS Technology 6502 |
Lisa | Apple II series | 否 | Proprietary | MOS Technology 6502 |
ID3E | SC123 emulator | 否 | Free for academic use | SC123 |
HLASM | z/Architecture | 否 | Proprietary | z/Architecture |
GPASM | many | 否 | GPL | Microchip PIC |
COMPASS | CDC mainframe | 否 | Proprietary | CDC mainframe |
Babbage | GEC 4000 series | 否 | Proprietary | GEC 4000 series |
Atari Assembler Editor | Atari 8-bit family | 否 | Proprietary | MOS Technology 6502 |
ASM-One | Amiga | 是 | Open source | Motorola 680x0 |
一级 | 二级 | 三级 | |
高级语言 | B采哪困川菜asic类 | 有行号 | BAISC、BASICA、GVBAS来自IC、GW-BASIC赶燃、ETBASIC |
无行360百科号 | QBASIC、Qui蒸革花望倒关民了斗万议ck Basic、Turbo Basic、True Basic、Visual Basic、Visual Basic .Net、Power Basic、Small Basi用批阶药久项律c、Free Basic、 DarkBASIC、VBScript、Visual Basic For Applic维乐其量林么均ations(VBA)、REALbasic | ||
C类 | C语言、C++、Turbo C++、Borland C++、C++ Builder - 企鱼须C++/CLI、Obje架转原轮ctive-C、C#量积福称怎认革攻包境、Microsoft Visual C++ | ||
Pascal/De岁案高组停查终lph类 | Pascal、Delphi、Turbo Pascal、Object Pascal、Free Pascal、Lazarus | ||
科学与统计计算 | FORTRAN、MATL业校客节拉普说AB、Scilab、GNU Octave、R语言、S-Plus、Mathematica、Maple、Julia | ||
数据库编程语言 | xBase(Clipper、Visual FoxPro)、SQL(PL/SQL、T-SQL、SQL/PSM)、LINQ、Xquery | ||
脚尔率义娘肉解本语言 | 基本 | Lua、Perl肥防、PHP、Python、Ru后明况孙难十by、ASP、JS节室执国汉将选草P、Tcl/Tk、VBSc白端没汉ript、AppleScript、AAuto(基于Lua) | |
ECMAScript衍生语言 | ActionScript、DMDScript、ECMAScript、JavaScript、JScript、TypeScript | ||
Shell语言 | sh、bash、sed、awk、PowerShell溶短、csh、tcsh、ksh、zsh | ||
标记语言 | XML(SVG、XML Schema、XSLT、XHTML、MathML、XAML、SSML)、SGML、HTML、Curl SVG) XML Schema · XSLT · XHTML · MathML · XAML · SSML | ||
Java虚拟机上的曲灯胜语言 | Java、Jython、JRuby、JScheme、Groovy、Kawa、Scala、Clojure、Kotlin | ||
其他语言 | ALGOL、APL/J、Ad项陈马汽由一必把诉父a、Falcon、Forth、Io、MUMPS、PL/I、PostScript、REXX、SAC、Self、Simula、易语言、Swift、IronPython、IronRuby、COBOL |
下面介绍几种较有代表性的高级程序设计语言:
⑴BASIC语言
BASIC语言全称是Beginner's all Purpose Symbolic Instruction Code,意为"初学者通用符号指令代码"。1964年由美国达尔摩斯学院的基米尼和科茨完成设计并提出了BASIC语言的第一个版本,经过不断丰富和发展,现已成为一种功能全面的中小型计算机语言。BASIC易学、易懂、易记、易用,是初学者的入门语言,也可以作为学习其他高级语言的基础。BASIC有解释方式和编译方式两种翻译程序。
⑵PASCAL语言
PASCAL是一种结构程序设计语言,由瑞士苏黎世联邦工业大学的沃斯(N.Wirth)教授研制,于1971年正式发表。是从ALGOL60衍生的,但功能更强且容易使用。如今,作为一个能高效率实现的实用语言和一个极好的教学工具,PASCAL语言在高校计算机软件教学中一直处于主导地位。Pascal(B.Pascal)是十七世纪法国著名数学家,他于1642年曾发明现代台式计算机的雏型机-加减法计算机。
PASCAL具有大量的控制结构,充分反映了结构化程序设计的思想和要求,直观易懂,使用灵活,既可用于科学计算,又能用来编写系统软件,应用范围日益广泛。
⑶通用编程语言C
C语言是美国AT&T(电报与电话)公司为了实现UNIX系统的设计思想而发展起来的语言工具。C语言的主要特色是兼顾了高级语言和汇编语言的特点,简洁、丰富、可移植。相当于其他高级语言子程序的函数是C语言的补充,每一个函数解决一个大问题中的小任务,函数使程序模块化。C语言提供了结构式编程所需要的各种现代化的控制结构。
C语言是一种通用编程语言,正被越来越多的计算机用户所推崇。使用C语言编写程序,既感觉到使用高级语言的自然,也体会到利用计算机硬件指令的直接,而程序员却无需卷入汇编语言的繁琐。
⑷COBOL语言
COBOL的全称是Common Business Oriented Language,意即:通用商业语言。
在企业管理中,数值计算并不复杂,但数据处理信息量却很大。为专门解决经企管理问题,于1959年,由美国的一些计算机用户组织设计了专用于商务处理的计算机语言COBOL,并于1961年美国数据系统语言协会公布。经不断修改、丰富完善和标准化,已发展为多种版本。
COBOL语言使用了300多个英语保留字,大量采用普通英语词汇和句型,COBOL程序通俗易懂,素有"英语语言"之称。
COBOL语言语法规则严格。用COBOL语言编写的任一源程序,都要依次按标识部、环境部、数据部和过程部四部分书写,COBOL程序结构的"部" 内包含"节","节"内包含"段",段内包含语句,语句由字或字符串组成,整个源程序象一棵由根到干,由干到枝,由枝到叶的树,习惯上称之为树型结构。
如今COBOL语言主要应用于情报检索、商业数据处理等管理领域。
常用的高级程序设计语言,除了上述的几种之外,还有很多,如以英国著名诗人拜伦(G.N.G.Byron)的独生女艾达·拜伦(Ada Byron)的名字命名的军用语言Ada,深受中、小学生欢迎的语言LOGO等等。
计算机语言开发工具
如今,程序设计语言及编程环境正向面向对象语言及可视化编程环境方向发展,出现了许多第四代语言及其开发工具。如:微软公司(Microsoft)开发的Visual系列(VC++、VB、FoxPro)编程工具及Power Builder等,如今已经在国内外得到了广泛的应用。
工业编程语言:A+ | Ada | 汇编语言| B |Brainfuck| C | C++ |C++/CLI| Cg | COBOL | Eiffel | Erlang | FORTRAN | IronPython | Java | JRuby | Jython | LISP | Oberon |Objective-C|Ocaml| Pascal | Perl | Powerbuilder | Python | QBASIC | R | REXX | Ruby | Self | Smalltalk | SQL | Tcl/Tk | Visual Basic | PHP | C# | F# | J# |Visual Basic .NET|易语言
脚本编程语言:ActionScript | JavaScript | JScript |Nuva| PostScript | VBScript | lua
学术编程语言:APL/J | Haskell | Logo | ML |pascal|Prolog | Scheme | SAC
其他编程语言:ALGOL | BASIC| Clipper | Forth | Modula-2/Modula-3 | MUMPS | PL/I | Simula
计算机主要是由两大部分构成的,硬件和软件,硬件就不用解释了,你的主机、显示器等等都属于硬件,但是光有硬件电脑是没有办法使用的,除非你拿机箱当柜子用!呵呵!所以就必须有软件支持!软件又分为系统软件,也就是你经常用的操作系统,WIN XP,Win 2000等等!再就是通用软件和应用软件。计算机语言也有一个发展过程,从最开始的计算机语言,也就是011010111,那个时候编程恐怕是非常痛苦的事,因为你要会用0和1表示一切!后来逐步发展,把一些常用的指令用英语单词表示出来,形成了汇编语言,这个时候也是比较痛苦的,你要记住那些单词的含义不说,还必须告诉计算机每一步要怎么做,而计算机又是一个非常笨的东西,你掉一个步骤他就罢工!而且汇编语言的可移植性差,也就是说你在这台电脑上写的程序到另一台电脑上可能就不能用了。之后为了方便软件移植,高级语言诞生了,高级语言不要求程序员掌握计算机的硬件运行,只要写好上层代码,编译软件会将高级语言翻译成汇编语言,然后再将汇编语言转化成计算机语言,从而在计算机中执行。因此,程序员使用高级语言写得代码可以移植到其他计算机执行,而不用考虑计算机硬件的特性。
想设计一款美观的Web应用
JavaScript可使网站看起来更棒,同时存在大量可兼容的框架,如Ember、Angular、Backbone等,它们都可以帮你组织、构造兼容不同浏览器的Web应用。目前,JavaScript正逐步成为主要的企业级编程语言。
JavaScript可在几乎所有的浏览器上运行,可同时用来编写前端与后端服务。无论你开发什么应用,JavaScript是必须的语言,而你也不用考虑应用采用的是何种后端技术。
需要快速开发原型
如果你是设计师,想学习后端编程技术以测试应用,那Ruby和Python将是不错的选择。这两门语言已入选2013年最流行工作技巧Top 5。
学习Phython,可以利用Learn Python The Hard Way网站上的资源,学习Ruby,可以登陆Codecademy中的Ruby子栏目。
想构建一个Android应用
开发Android应用,最多使用Java语言。
你可以在Windows和Mac上开发Android应用,之后购买廉价的设备来测试你的应用。随着Andriod正逐渐占领移动市场,越来越多的开发者正选择从Android开始入手。
Udacity上免费的JavaScript编程课程很适合初学者。一旦你掌握到Java,就可以登录官方Android开发者网站,学习如何创建第一个Android项目。
想开发一款iOS应用
在Mac上,你可以使用Objective-C开发可运行于iPhone、iPad、iPod上的iOS应用。与Android相比,iOS的碎片化程序更低,开发者很容易创建通用的应用。
除了Object-C,开发iOS应用还需要免费工具Xcode和iOS软件开发工具包。你可以用Apple提供的开发者教程,或登录到Code School网站中的iOS子频道学习iOS开发。