计算机语言_每一种计算机语言的命令都是程序员自己想的吗-程序员宅基地

技术标签: 计算机文化基础试题  语言  汇编  cobol  pascal  lisp  basic  

计算机语言

 
计算机是进行科学计算和信息处理的工具,其工作过程可简述为:
第一步:接通电源启动计算机的外设和主机;
第二步:由输入设备将程序送入内存储器;
第三步:当计算机接到操作人员的运行命令后,控制器便将程序从内存储器中逐条取出,经分析加以执行;
第四步:在控制器指挥下,由输出设备将处理结果显示或打印;
第五步:程序执行完毕,控制器发出信号,计算机自动停机。
在整个处理过程中,计算机完全按照人们的“意愿”去办事。所以能够如此,是因为输入计算机的“程序”起着关键性的作用。程序由会写程序的操作人员事先编制。编制程序的过程称程序设计。书写程序用的“语言”,叫做程序设计语言即计算机语言。计算机语言通常是一个能完整、准确和规则地表达人们的意图,并用以指挥或控制计算机工作的“符号系统”。
一般的计算机目前还不能在人类的自然语言上直接操作,用计算机解决实际问题,必须对所要解决的问题周密考虑一个明确的处理方法(算法),再使用计算机能理解的计算机语言编制成程序,然后通过输入设备才能告诉计算机该怎么去做。
计算机语言通常分为三类,即机器语言,汇编语言和高级语言。
1. 机器语言
机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。它是计算机的设计者通过计算机的硬件结构赋予计算机的操作功能。机器语言具有灵活、直接执行和速度快等特点。不同型号的计算机其机器语言是不相通的,按着一种计算机的机器指令编制的程序,不能在另一种计算机上执行。
用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码和代码的涵义。手编程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。这是一件十分繁琐的工作,编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且,编出的程序全是些0和1的指令代码,直观性差,还容易出错。现在,除了计算机生产厂家的专业人员外,绝大多数程序员已经不再去学习机器语言了。
2. 汇编语言
为了克服机器语言难读、难编、难记和易出错的缺点,人们就用与代码指令实际含义相近的英文缩写词、字母和数字等符号来取代指令代码(如用ADD表示运算符号“+”的机器代码),于是就产生了汇编语言。所以说,汇编语言是一种用助记符表示的仍然面向机器的计算机语言。汇编语言亦称符号语言。
汇编语言由于是采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器指令代码,而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。
汇编语言是面向具体机型的,仍离不开具体计算机的指令系统,因此,对于不同型号的计算机,有着不同的结构的汇编语言,而且,对于同一问题所编制的汇编语言程序在不同种类的计算机间是互不相通的。
汇编语言中由于使用了助记符号,用汇编语言编制的程序送入计算机,计算机不能象用机器语言编写的程序一样直接识别和执行,必须通过预先放入计算机的“汇编程序“的加工和翻译,才能变成能够被计算机识别和处理的二进制代码程序。用汇编语言等非机器语言书写好的符号程序称源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,它一经被安置在内存的预定位置上,就能被计算机的CPU处理和执行。
汇编语言像机器指令一样,是硬件操作的控制信息,因而仍然是面向机器的语言,使用起来还是比较繁琐费时,通用性也差。汇编语言是低级语言。但是,汇编语言用来编制系统软件和过程控制软件,其目标程序占用内存空间少,运行速度快,有着高级语言不可替代的用途。
3. 高级语言
不论是机器语言还是汇编语言都是面向硬件的具体操作的,语言对机器的过分依赖,要求使用者必须对硬件结构及其工作原理都十分熟悉,这对非计算机专业人员是难以做到的,对于计算机的推广应用是不利的。计算机事业的发展,促使人们去寻求一些与人类自然语言相接近且能为计算机所接受的语意确定、规则明确、自然直观和通用易学的计算机语言。这种与自然语言相近并为计算机所接受和执行的计算机语言称高级语言。高级语言是面向用户的语言。无论何种机型的计算机,只要配备上相应的高级语言的编译或解释程序,则用该高级语言编写的程序就可以通用。
目前被广泛使用的高级语言有BASIC、PASCAL、C、COBOL、LISP和PROLOG等。
计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。编译方式是:事先编好一个称为编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。解释方式是:源程序进入计算机时,解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生目标程序。PASCAL、FORTRAN、COBOL等高级语言执行编译方式;BASIC语言则以执行解释方式为主;而PASCAL、C语言是能书写编译程序的高级程序设计语言。 每一种高级(程序设计)语言,都有自己人为规定的专用符号、英文单词、语法规则和语句结构(书写格式)。高级语言与自然语言(英语)更接近,而与硬件功能相分离(彻底脱离了具体的指令系统),便于广大用户掌握和使用。高级语言的通用性强,兼容性好,便于移植。下面介绍几种较有代表性的高级程序设计语言:
⑴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语言主要应用于情报检索、商业数据处理等管理领域。
⑸LISP语言
LISP语言是专用于人工智能和符号处理的计算机语言,是迄今在人工智能学科领域中应用最广泛的一种程序设计语言。LISP处理的数据是符号。LISP利用符号表达和处理知识时都以表的形式来表示,而且只使用五个基本函数就足以表达其字符集上任何可计算的函数,具有强有力的符号处理功能。
LISP一名取自英语List Processing Language,意为“表处理语言”。LISP语言是由美国麻省理工学院的麦卡锡(J.Mecarthy)和他的研究小组于1960年首先设计实现的。目前,常用的版本是LISP1.5。
⑹PROLOG语言
PROLOG是Programming in Logic的缩写,意为“逻辑程序设计”。设计逻辑程序语言的思想最早由英国人科瓦尔斯基(R.Kowalski)提出。具体设计PROLOG语言的是法国马赛大学的科默寥尔(A.Clomerauer)及其研究小组,设计工作于1972年完成。
PROLOG以逻辑程序设计为基础,以处理一阶谓词演算为背景。它文法简洁,表达力丰富,具有独特的非过程型语言(一个语句就相当于过程语言的一个子程序而并非算法的一步),是一种具有推理功能的逻辑型语言。
PROLOG语言已被广泛地应用于关系数据库、抽象问题求解、数理逻辑、公式处理、自然语言理解、专家系统以及人工智能的许多领域。
常用的高级程序设计语言,除了上述的几种之外,还有很多,如以英国著名诗人拜伦(G.N.G.Byron)的独生女艾达·拜伦(Ada Byron)的名字命名的军用语言Ada,深受中、小学生欢迎的语言LOGO等等。
目前,程序设计语言及编程环境正向面向对象语言及可视化编程环境方向发展,出现了许多第四代语言及其开发工具。如:微软公司(Microsoft)开发的Visual系列(VC++、VB、FoxPro)编程工具及Power Builder等,目前已经在国内外得到了广泛的应用
 
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zhouminghong/article/details/2043456

智能推荐

工程实践,淘宝直播高画质低延时技术探索-程序员宅基地

文章浏览阅读1.4k次。本文转载自淘系技术。前言目前5G新基建正在迈入起航阶段,5G相比目前广泛使用的4G,它具有更高的速率,更大的容量,同时延迟更低,可靠性更高。在5G时代,视频得益于网络带宽的提升,未来将成..._金字塔 b 帧

macos big sur系统写入权限被限制的这几款软件已经修复!包括cad2021_big sur删除系统自带程序报只读-程序员宅基地

文章浏览阅读2k次。macOS Big Sur正式版将强大实力和优美外观的结合提升到一个崭新的高度。精心雕琢的全新设计,让您能淋漓尽致地感受 Mac 的魅力;Safari 浏览器迎来重大更新,待您饱览;地图 App 和信息 App 满载新功能,任您探索;更透明的***权限,保护也更周到。新系统升级总要一段时间的磨合期,限制各种软件不兼容和奔溃问题还是屡屡存在,特别是一些软件的注册机直接被限制打开,本站为了方便用户专门修复了cad2021中文版,OmniGraffle Pro版和Mindjet MindManager 201_big sur删除系统自带程序报只读

项目实战,平均负载过高,最后发现却是这个搞鬼-程序员宅基地

文章浏览阅读1.4k次,点赞2次,收藏5次。1.前言最近在项目上遇到负载均衡过高的问题,分析好几天,还因此移植了一个CPU检测工具,后面在小二哥的指导找到了问题原因,小二哥有些读者应该会比较熟悉,之前发的微信滑动卡顿就是他分析的,他..._[kworker/u8:2+flush-0:59] 死掉了

mysql清空表数据_mysql数据库之如何清空表中数据-程序员宅基地

文章浏览阅读1.3w次。本篇文章主要讲述的是在数据库中使用清空命令,具有一定学习价值,有需要的朋友可以了解一下,希望能够对你有所帮助。在做数据迁移,数据清洗或者写web项目时要将数据替换更新,那么有时要将表做清空处理常用的清空数据表的SQL语句有如下两种delete from 表名;truncate table 表名;运行测试我使用的是MySql待测试的表有20000条记录,将其多拷两份以备测试分别运行两个清空表的SQL..._mysql怎么清空数据

【亡羊补牢】JS灵魂之问 第17期 修炼内功 原型和原型链基础-程序员宅基地

文章浏览阅读254次。引言有几天没有更新JS灵魂之问的专栏系列文章了,秋招季,也在忙着备战笔试面试。今天得空再来写一篇文章,本篇要讲解的内容是关于 原型和原型链基础 ,那今天这篇看能不能问倒你了,一起来探索一下吧。仰望星空的人,不应该被嘲笑文章目录引言原型基础原型链基础最后原型基础原型 prototype 其实是 function对象的一个属性,但是打印出来结果它也是对象。那我们直接看下面这个例子吧function Foo(name,age){ this.name = name; this.age

单片机I/O口的结构的详解-程序员宅基地

文章浏览阅读664次。1.什么是源型漏型?什么是上拉电阻?下拉电阻?什么是线驱动输出集电极开路输出,推挽式输出?我们先来说说集电极开路输出的结构。集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所以叫做集电极开路(左边的三极管为反相之用,使输入为“0”时,输出也为“0”)。对于图1,当左端的输入为“0”时,前面的三极管截止(即集电极c跟发射极e之间相当于断开),所以5v电源通..._单片机io口是集电极还是

随便推点

Unet项目解析(1): run_training.py_info - waveunet training - running command 'run' i-程序员宅基地

文章浏览阅读5.3k次,点赞4次,收藏27次。项目GitHub主页:https://github.com/orobix/retina-unet参考论文:Retina blood vessel segmentation with a convolution neural network (U-net) Retina blood vessel segmentation with a convolution neural network (U-ne..._info - waveunet training - running command 'run' info - waveunet training -

SQL---关联子查询(correlated subquery)-程序员宅基地

文章浏览阅读4.5k次,点赞11次,收藏33次。关联子查询和普通子查询的区别在于:1,关联子查询引用了外部查询的列。2,执行顺序不同。对于普通子查询,先执行普通子查询,再执行外层查询;而对于关联子查询,先执行外层查询,然后对所有通过过滤条件的记录执行内层查询。语法:SELECT column1, column2FROM table1 AS outerWHERE column1 operator (SELECT column1, column2 FROM table2 WHERE expr1 = oute_correlated subquery

C/C++ 常用程序库_better_enum-程序员宅基地

文章浏览阅读2.1k次,点赞3次,收藏7次。C/C++ 程序库// ---------------------------------------------来几个不常见但是很变态的库吧:bundle: 把几乎所有常见的压缩库封装成了一个库, 接口完全统一, 想用哪个用哪个.就一个h和一个巨TM大的cpp文件,巨好使巨方便.r-lyeh-archived/bundleCelero: 简单清晰的benchmark库, 特点就是简单易用没有废话.DigitalInBlue/Celerogetopt: 解析命令行输入参数的库, 好使! 没废_better_enum

ADB 命令大全_adb等待10秒指令-程序员宅基地

文章浏览阅读2.1k次。转载请标明出处:http://blog.csdn.net/xx326664162/article/details/51361624 文章出自:薛瑄的博客你也可以查看我的其他同类文章,也会让你有一定的收货!这篇博客会持续更新。。。一、使用ADB进行Android 和PC通信原理Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文_adb等待10秒指令

iphoneX、iPhone12尺寸_苹果12 devicepixelratio-程序员宅基地

文章浏览阅读1.3k次。iphoneX、iPhone12尺寸1、iPhone 12:2532 x 1170像素分辨率,460 PPI ; 844 * 390;devicePixelRatio:32、iPhone 12 mini:2340 x 1080 像素分辨率,476 PPI ;812 * 375;devicePixelRatio:33、iPhone 12 Pro:2532 x 1170 像素分辨率,460 PPI ;844 * 390;devicePixelRatio:34、iPhone 12 Pro Max:277_苹果12 devicepixelratio

凉心的比赛(—)_赛文柒怎么凉的-程序员宅基地

文章浏览阅读202次。C题You might have heard about the next game in Lara Croft series coming out this year. You also might have watched its trailer. Though you definitely missed the main idea about its plot, so let me lif..._赛文柒怎么凉的

推荐文章

热门文章

相关标签