语言算法和程序设计方法幻灯片.ppt
《语言算法和程序设计方法幻灯片.ppt》由会员分享,可在线阅读,更多相关《语言算法和程序设计方法幻灯片.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、语言算法和程序设计方法语言算法和程序设计方法第1页,共50页,编辑于2022年,星期二从算法到程序再到软件从算法到程序再到软件计算机完成各种计算机完成各种不同的任务不同的任务,需要,需要,需要,需要不不不不同的软件同的软件同的软件同的软件软件开发软件开发软件开发软件开发算法算法程序程序软件软件程序设计程序设计程序设计程序设计是软件开发的一部分是软件开发的一部分是软件开发的一部分是软件开发的一部分l l程序设计分解为几个步骤程序设计分解为几个步骤程序设计分解为几个步骤程序设计分解为几个步骤l l程序设计需要使用程序设计语言程序设计需要使用程序设计语言程序设计需要使用程序设计语言程序设计需要使用程
2、序设计语言算法设计算法设计算法设计算法设计软件开发软件开发的任务之一的任务之一l l选择一种选择一种选择一种选择一种语言语言语言语言l l使用这个语言使用这个语言使用这个语言使用这个语言编写编写编写编写完成操作任务的完成操作任务的完成操作任务的完成操作任务的代码代码代码代码程序设计程序设计软件开发的核心工作是算法设计软件开发的核心工作是算法设计软件开发的核心工作是算法设计软件开发的核心工作是算法设计第2页,共50页,编辑于2022年,星期二算法算法l l一项工作如何被完成的步骤一项工作如何被完成的步骤一项工作如何被完成的步骤一项工作如何被完成的步骤l l数学问题数学问题寻找如何解决特定问题的方
3、法寻找如何解决特定问题的方法一个著名的算法一个著名的算法欧几里德算法欧几里德算法欧几里德算法欧几里德算法:求两个正整数求两个正整数A和和B的最大公约数的最大公约数如:如:如:如:9 9、6 6的最大公约数是的最大公约数是的最大公约数是的最大公约数是3 3l l第一步:比较第一步:比较第一步:比较第一步:比较A A和和和和B B这两个数,将这两个数,将这两个数,将这两个数,将A A设置为较大的数,设置为较大的数,设置为较大的数,设置为较大的数,B B设置设置设置设置 为较小的数;为较小的数;为较小的数;为较小的数;l l第二步:第二步:第二步:第二步:A A除以除以除以除以B B,得到余数,得到
4、余数,得到余数,得到余数C C;l l第三步:如果第三步:如果第三步:如果第三步:如果C C等于等于等于等于0 0,则最大公约数就是,则最大公约数就是,则最大公约数就是,则最大公约数就是B B;否则将否则将否则将否则将B B赋值给赋值给赋值给赋值给A A,C C赋值给赋值给赋值给赋值给B B,重复进行第二、三步,重复进行第二、三步,重复进行第二、三步,重复进行第二、三步从算法到程序再到软件从算法到程序再到软件ABC9636303第3页,共50页,编辑于2022年,星期二图灵理论图灵理论只要能被分解为有限步骤的问题就可以被计算机执行只要能被分解为有限步骤的问题就可以被计算机执行只要能被分解为有限
5、步骤的问题就可以被计算机执行只要能被分解为有限步骤的问题就可以被计算机执行l l有限的步骤有限的步骤l l能够将这些步骤设计为计算机所执行的程序能够将这些步骤设计为计算机所执行的程序能够将这些步骤设计为计算机所执行的程序能够将这些步骤设计为计算机所执行的程序程序设计中,首先寻找算法,算法找到后,实现算法的步程序设计中,首先寻找算法,算法找到后,实现算法的步骤骤算法的描述算法的描述l l使用某种计算机语言使用某种计算机语言使用某种计算机语言使用某种计算机语言l l不同的计算机语言对一个算法具有不同的实现方法不同的计算机语言对一个算法具有不同的实现方法不同的计算机语言对一个算法具有不同的实现方法不
6、同的计算机语言对一个算法具有不同的实现方法算法是程序设计的基础算法是程序设计的基础算法是程序设计的基础算法是程序设计的基础从算法到程序再到软件从算法到程序再到软件第4页,共50页,编辑于2022年,星期二程序和指令程序和指令程序程序programl l计算机计算机计算机计算机执行执行某种某种某种某种任务任务任务任务的一系列的一系列的一系列的一系列操作步骤操作步骤操作步骤操作步骤的的总和总和 l l一组计算机指令的有序集合一组计算机指令的有序集合一组计算机指令的有序集合一组计算机指令的有序集合 指令指令instructioninstructionl l控制计算机控制计算机控制计算机控制计算机执行
7、执行各种基本操作的各种基本操作的各种基本操作的各种基本操作的命令命令l l指令是计算机执行的最基本操作指令是计算机执行的最基本操作指令是计算机执行的最基本操作指令是计算机执行的最基本操作 如:处理器从内存中读取一个数据如:处理器从内存中读取一个数据如:处理器从内存中读取一个数据如:处理器从内存中读取一个数据 二进制的算术运算加、减、乘、除二进制的算术运算加、减、乘、除二进制的算术运算加、减、乘、除二进制的算术运算加、减、乘、除逻辑判断等逻辑判断等逻辑判断等逻辑判断等l l处理器能执行的处理器能执行的处理器能执行的处理器能执行的二进制代码二进制代码第5页,共50页,编辑于2022年,星期二程序和
8、指令程序和指令指令作为计算机软件和硬件的接口指令作为计算机软件和硬件的接口l l指令在处理器中指令在处理器中以逻辑电路实现以逻辑电路实现 软件硬件 指指令令第6页,共50页,编辑于2022年,星期二指令系统指令系统l l 一个一个CPU能够执行的所有指令能够执行的所有指令l l 指令的主要类型指令的主要类型数据传输类数据传输类将数据从一个地方将数据从一个地方将数据从一个地方将数据从一个地方(源源源源)传输到另外一个地方传输到另外一个地方传输到另外一个地方传输到另外一个地方(目的目的目的目的)一种是在一种是在一种是在一种是在CPUCPU内部、存储器内部、内部、存储器内部、内部、存储器内部、内部、
9、存储器内部、CPUCPU和存储器之间进行和存储器之间进行和存储器之间进行和存储器之间进行一种是在一种是在一种是在一种是在CPUCPU和外设(外设接口)之间进行和外设(外设接口)之间进行和外设(外设接口)之间进行和外设(外设接口)之间进行的的的的算术逻辑运算类算术逻辑运算类算术逻辑运算类算术逻辑运算类控制操作类控制操作类有条件转移、无条件转移有条件转移、无条件转移有条件转移、无条件转移有条件转移、无条件转移第7页,共50页,编辑于2022年,星期二翻译系统翻译系统基本概念基本概念l l源程序源程序用各种语言编写的程序用各种语言编写的程序l l目标程序目标程序目标程序目标程序源程序经过翻译,成为机
10、器可执行的机器语言程序源程序经过翻译,成为机器可执行的机器语言程序源程序经过翻译,成为机器可执行的机器语言程序源程序经过翻译,成为机器可执行的机器语言程序l l库文件库文件由一些标准子程序由一些标准子程序(函数和过程函数和过程)及常用的应用程序块及常用的应用程序块组成的文件组成的文件l l可执行程序可执行程序可执行程序可执行程序目标程序与库文件连接后形成的程序目标程序与库文件连接后形成的程序目标程序与库文件连接后形成的程序目标程序与库文件连接后形成的程序l l程序的整个处理过程程序的整个处理过程程序的整个处理过程程序的整个处理过程翻译翻译翻译翻译和库文件和库文件和库文件和库文件连接连接连接连接
11、装入装入装入装入源程序源程序源程序源程序目标程序目标程序目标程序目标程序可执行程序可执行程序可执行程序可执行程序执行执行执行执行第8页,共50页,编辑于2022年,星期二翻译系统翻译系统l l语言处理系统,语言处理系统,语言处理系统,语言处理系统,翻译计算机程序翻译计算机程序翻译计算机程序翻译计算机程序l l任务是把任务是把任务是把任务是把非机器语言非机器语言编写的编写的源程序源程序翻译翻译成成成成目标程序目标程序目标程序目标程序l l是系统软件是系统软件l l不同编程语言的翻译系统是不同的不同编程语言的翻译系统是不同的分类分类l l汇编程序汇编程序l l编译程序编译程序编译程序编译程序l l
12、解释程序解释程序解释程序解释程序逐条翻译并执行源程序的语句逐条翻译并执行源程序的语句,不生成可执行文件不生成可执行文件把源程序代码一次性翻译成目标程序代码,把源程序代码一次性翻译成目标程序代码,把源程序代码一次性翻译成目标程序代码,把源程序代码一次性翻译成目标程序代码,最终生成可执行文件最终生成可执行文件最终生成可执行文件最终生成可执行文件把汇编语言源程序翻译为机器语言程序把汇编语言源程序翻译为机器语言程序把汇编语言源程序翻译为机器语言程序把汇编语言源程序翻译为机器语言程序第9页,共50页,编辑于2022年,星期二编编译译系系统统的的结结构构和和工工作作过过程程词法分析程序词法分析程序语法分析
13、程序语法分析程序中间代码生成程序中间代码生成程序优化程序优化程序目标代码生成程序目标代码生成程序目标程序目标程序源程序源程序Ifx=0Theny=1Elsey=-1第10页,共50页,编辑于2022年,星期二程序设计语言程序设计语言发展阶段发展阶段l l机器语言机器语言低级低级低级低级语言语言l l汇编语言汇编语言中级中级语言语言l l面向过程的面向过程的高级高级语言语言l l面向对象的面向对象的高级高级语言语言第11页,共50页,编辑于2022年,星期二机器语言和指令机器语言和指令机器语言机器语言机器语言机器语言l l计算机能直接执行的程序设计语言计算机能直接执行的程序设计语言l l二进制语
14、言二进制语言二进制语言二进制语言,用二进制机器指令来编写程序,用二进制机器指令来编写程序,用二进制机器指令来编写程序,用二进制机器指令来编写程序机器指令的信息机器指令的信息机器指令的信息机器指令的信息l l操作类型操作类型l l操作数或操作数的地址(操作数的存储位置)操作数或操作数的地址(操作数的存储位置)l l操作结果的存储位置操作结果的存储位置l l下一条指令的地址信息下一条指令的地址信息指令格式指令格式操作码操作码操作码操作码操作数或地址码操作数或地址码操作数或地址码操作数或地址码下一条指令的地址下一条指令的地址下一条指令的地址下一条指令的地址第12页,共50页,编辑于2022年,星期二
15、机器语言和指令机器语言和指令指令的例子:指令的例子:指令的例子:指令的例子:数数1和和3的相加的相加l l指令指令指令指令100000000000000100000011100000000000000100000011“加加加加”操作码操作码操作码操作码Number1Number1:1Number21Number2:3 3l l实现过程实现过程实现过程实现过程用计算器用计算器用计算器用计算器计算机计算机计算机计算机程序过程程序过程程序过程程序过程l l指令执行过程指令执行过程特点特点特点特点l l既简单又难既简单又难既简单又难既简单又难l l执行速度最快执行速度最快l l面向机器,兼容性差,移
16、植性差面向机器,兼容性差,移植性差l l最低级语言最低级语言第13页,共50页,编辑于2022年,星期二汇编语言汇编语言机器语言的机器语言的机器语言的机器语言的“符号化符号化符号化符号化”l l用容易记忆的文字符号用容易记忆的文字符号(助记符助记符助记符助记符)表示指令中的操作码和表示指令中的操作码和地址码地址码指令格式指令格式助记符助记符助记符助记符符号地址符号地址符号地址符号地址l l例:加法语句例:加法语句例:加法语句例:加法语句ADDA,B 特点特点l l机器不能直接识别机器不能直接识别l l可读性好可读性好可读性好可读性好l l面向机器,兼容性差,移植性差面向机器,兼容性差,移植性差
17、面向机器,兼容性差,移植性差面向机器,兼容性差,移植性差l l中级语言中级语言中级语言中级语言 第18页,共50页,编辑于2022年,星期二高级语言高级语言与机器与机器完全独立的语言完全独立的语言完全独立的语言完全独立的语言,描述解题过程,描述解题过程语法与自然语言接近语法与自然语言接近语法与自然语言接近语法与自然语言接近特点特点特点特点l l面向问题,通用,可移植面向问题,通用,可移植分类分类l l面向过程面向过程BASICCPASCALFORTRANCOBOLAdal l面向对象面向对象面向对象面向对象VisualBasicC+JAVAJAVADelphiDelphiPowerBuild第
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 算法 程序设计 方法 幻灯片
限制150内