专转本计算机第3章33 程序设计语言_第1页
专转本计算机第3章33 程序设计语言_第2页
专转本计算机第3章33 程序设计语言_第3页
专转本计算机第3章33 程序设计语言_第4页
专转本计算机第3章33 程序设计语言_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3.3程序设计语言及其处理系统3.3.1程序设计语言分类3.3.2程序设计语言的数据成分和控制成分3.3.3程序设计语言处理系统3.3.4常用程序设计语言介绍什么是程序设计语言?什么是程序?告诉计算机做什么和如何做的一组指令.什么是程序设计语言?编写程序的工具.是由人使用但计算机

可以理解并能执行的

一种语言.用于人与计算机

之间的通信.计算机硬件仅仅知道0和1有问题需要计算机解决的人程序设计语言3.3.1程序设计语言分类△机器语言汇编语言高级程序设计语言B87F01BB210203D8B81F042BC3(计算1055-(383+545)的5条机器指令)机器语言

√机器语言就是计算机的指令系统不同类型、不同型号的计算机,其机器语言不同用机器语言编程序,也就是直接使用二进制(八进制、十六进制)代码编写程序。√优点:可以直接被计算机执行√缺点:记不住、难理解、效率低、不易维护不同的机器语言程序,相互不兼容现在已不直接用机器语言编制程序!操作码操作数(或操作数的地址)1条机器指令操作数地址操作码例:机器语言程序在MIPS计算机上求最大公约数(GCD)的机器程序(16进制表示)MIPS计算机的每条机器指令均为32个二进位,用8个16进制数表示MIPS的意思是“无内部互锁流水级的微处理器”(Microprocessorwithoutinterlockedpipedstages),

Mips是计算机指令系统的一种.汇编语言√用助记符号来表示机器指令中的操作符与操作数√优点:操作数直接使用十进制程序相对容易理解√缺点:大型程序难以开发依赖于具体计算机将383传送到AX寄存器将545传送到BX寄存器将BX内容加AX内容,结果在BX中将1055传送到AX寄存器将AX内容减BX内容,结果在AX寄存器中B87F01BB210203D8B81F042BC3(计算1055-(383+545)的5条机器指令)机器语言程序对应的汇编语言程序MOVAX,383MOVBX,545ADDBX,AXMOVAX,1055SUBAX,BX汇编语言程序高级程序设计语言目的:克服汇编语言的缺陷,提高编程和维护的效率△特点:接近人们日常使用的自然语言(主要是英语)容易理解、记忆和使用可在不同计算机上通用对使用的符号、词汇、语法和语义等各种语言成分都有严格的规定意义:使程序设计的难度降低,导致了计算机的发展进入新的阶段MOVAX383MOVBX545ADDBXAXMOVAX1055SUBAXBX汇编语言程序S=1055-(383+545)3.3.2程序设计语言的成分数据成分控制成分程序设计语言的基本成分高级语言种类千差万别,但是其基本成分都可归纳为四种△

:数据成分运算成分控制成分传输成分:用以描述程序中的数据传输操作main(){int

a,b,c;

scanf("%d%d",&a,&b);

if(a>b)c=a-b;elsec=b-a;

printf(”c=%d\n",c);}数据成分:△描述程序所涉及的对象数据是客观事物在计算机内的(格式化)表示,是程序所操作和处理的对象程序中的数据通常应该先说明、后使用数据说明的内容包括:变量还是常量它们的标识符(符号表示)它们的数据类型······main(){int

a,b,sum;a=10;b=24;sum=a+b;

printf(”sum=%d\n",sum);}数据类型基本类型复合类型算术类型字符类型char逻辑类型bool整型int/long[int]实型单精度float双精度double数组、结构指针、集合枚举用户定义类型C语言中的数据类型数据类型:用于刻画数据的特性——数据的取值范围和允许对它进行哪些操作。基本数据类型是大部分CPU能直接支持的数据类型,也称为内部类型,是不可分解的。复合数据类型:是通过类型构造符把1个或多个更简单的类型复合而成的数据类型intI;int*p=&i;3指针变量p变量i什么是数据类型(datatype)?算术运算符:+-*/%++--关系运算符:<<===>>=!=逻辑运算符:!&&||位运算符:<<>>~|^&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数:sizeof强制类型转换:(类型)分量运算符:.->下标运算符:[]其它:()-运算成分:△描述程序中所包含的运算“表达式”由变量、常量、函数、运算符和括号组成

,它用来计算一个值。例如,sin(45*3.14/180)+(exp(10)+log(10))/sqr(x+y+1)

用来计算下面公式的值:控制成分:控制程序中所含语句的执行顺序△控制成分用来提供一种基本框架,在此基本框架的支持下,将数据和对数据的运算组合成程序△三种控制结构:由一组顺序执行的计算操作(或语句)组成顺序结构AB由一个条件(P)和两个供选择的操作(或语句)A和B组成PAB真假条件选择结构由一个条件(P)和一个供重复执行的操作(或语句)A组成PA假真重复结构条件选择结构举例main(){int

a,b,c;

scanf("%d%d",&a,&b);

if(a>b)c=a-b;elsec=b-a;

printf(”c=%d\n",c);}If(P)A;elseB重复结构举例1、while(P)A2、doAwhile(P)main(){

int

i,sum=0;i=1;

while(i<=100){sum=sum+i;i++;}

printf(”%d\n",sum);}!求1-100的累加和重复结构举例for(P1;P2;P3)A;等价于:P1;while(P2){A;P3}main(){

int

i,sum=0;

for(i=1;i<=100;i++)sum=sum+i;

printf(”%d\n",sum);}!求1-100的累加和main(){

int

i,sum=0;i=1;

while(i<=100){sum=sum+i;i++;}

printf(”%d\n",sum);}int

max(int

x,inty){intz;if(x>=y)z=x;elsez=y;return(z);}函数max的定义函数的返回值例:找两数中较大的数(函数调用)main(){inta,b,c;

scanf("%d%d",&a,&b);c=max(a,b);

printf(”%d\n",c);}主函数调用函数max进行计算变量说明输入语句输出语句3.3.3程序设计语言

处理系统语言处理系统△语言处理系统的作用:把用程序语言(包括汇编语言和高级语言)编写的各种程序变换成可在计算机上执行的程序,或其他中间形式,或最终的计算结果,。△语言处理系统包括:翻译程序正文编辑程序:用于建立和修改源程序文件联接编辑程序:将多个分别编译或汇编过的目标程序和库文件进行组合装入程序:将目标程序装入内存并启动执行程序模块n源程序n目标程序n可执行目标程序程序模块1……正文编辑源程序1……编译目标程序1……联接编辑装入执行结果库文件程序设计语言的翻译程序把甲语言编写的程序翻译为等价的乙语言编写的程序。其中甲语言程序称为源程序,乙语言程序称为目标程序翻译程序源程序目标程序△常用的有下列几种:汇编程序(汇编器)汇编语言源程序机器语言目标程序编译程序(编译器)高级语言源程序机器语言或汇编语言目标程序解释程序(解释器)高级语言源程序边解释边执行,不产生目标程序△编译程序与解释程序的区别解释:解释器直接解释并且执行源语言程序,不产生目标程序(相当于“口译”)编译:把源程序编译为机器语言目标程序后,再由计算机运行(相当于“笔译”)源程序目标程序编译器计算机编译方式计算机源程序解释器解释方式BASIC、VisualBasic、VBScript、Java、JavaScript等都是解释执行的语言C、C++等都是需要编译的语言3.3.4常用程序设计语言

介绍高级程序设计语言的发展50年代:Fortran,ALGOL60年代:COBOL语言70年代:Pascal语言,C语言,BASIC语言80年代:Ada语言,PROLOG语言,LISP语言90年代起:面向对象语言C++、JAVA、C#等FORTRAN语言△

FORTRAN是FORmula

TRANslation

(公式翻译)的缩写词,它是一种主要用于数值计算的面向过程的程序设计语言。FORTRAN语言的特点是接近数学公式,简单易用;程序结构化(IF、DO),也能应用于非数值运算功能。目前最新的国际标准是FORTRAN2003BASIC和VisualBasic语言△

BASIC”初学者通用符号指令代码”,简单易学VisualBASIC(VB)语言是微软公司基于BASIC发展而来的一种程序设计语言,特点是:是一种可视化的、面向对象的、采用事件驱动方式的结构化高级程序设计语言具有高效率、简单易学及功能强大的特点可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件Java语言△

由SUNMicrosystem公司于1995年发布的一种面向对象的、用于网络环境的程序设计语言基本特征是:适用于网络分布环境具有一定的平台独立性安全性和稳定性好Java语言受到各种应用领域的重视,取得快速的发展,在Internet上已推出了用Java语言编写的很多应用程序C语言和C++语言△

C语言是1972~1973年间由AT&T公司Bell实验室开发而成C语言兼有高级语言的优点和汇编语言的效率,有效地处理了简洁性和实用性、可移植性和高效性之间的矛盾C++语言以C语言为基础发展而成,既有数据抽象和面向对象能力,运行性能高,又能与C语言兼容,因而C++语言迅速流行,成为当前面向对象程序设计的主流语言ALGOL(ALGOrithmicLanguage)语言:分别于1960年和1962年发表的ALGOL60报告及修改报告,已成为程序设计语言发展史上的里程碑,不但开拓了程序设计语言的研究领域,也为后来的软件自动化和软件可靠性研究奠定了基础。ALGOL语言的语法和语义均有严格的描述。它的语法描述采用了特定的巴科斯形式化体系(BNF),结构清晰,理论严谨。在ALGOL语言基础上发展的ALGOL语言簇包括ALGOL68、Simula、PASCAL等。PASCAL语言:具有丰富的数据类型和灵活的控制结构,编译效率高,强调程序的可靠性和易于验证性,被称为第一个结构化程序设计语言。PASCAL语言适用于数据处理、数值计算和系统软件开发,并曾经成为大学程序设计教学的优选语言。ALGOL语言PASCAL语言除了以上介绍的几种程序语言外,有影响的程序语言还有:LISP语言:适用于符号操作和表处理,主要用于人工智能领域PROLOG语言:一种逻辑式编程语言,主要用于人工智能领域Ada语言:类似于PASCAL语言,且易于控制并行任务和处理异常

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论