软件详细设计第11章编码设计与规范.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章 编码设计与规范 11.1 程序设计语言 11.1.1 程序设计语言的基本概念   1.低级语言和高级语言   计算机刚问世的时候,它的硬件只能识别由字符0和1组成的二进制机器指令序列,也就是最初的机器指令程序。机器指令程序是最基本的计算机语言。机器语言与特定的计算机硬件相关,要求程序设计人员对计算机的内部硬件结构要有比较多的了解。由于机器指令程序是二进制的机器指令序列,所以,它的可读性相当差,所编制出来的程序难以理解、修改和维护。   为了提高程序设计的效率,人们用容易记忆的符号来代替机器指令,这些符号就是汇编指令。汇编语言是汇编指令的集合,它的使用提高了编程的效率,同时,使用汇编语言编写的程序可读性也有一定的提高。比如,汇编语言的加法用ADD表示,减法用SUB表示,乘法用MUL表示等。但汇编语言只是机器语言的简单对应,汇编语言程序设计仍然与特定的计算机硬件紧密关联,效率不高。而且,采用汇编语言编写的程序,要经汇编程序翻译成机器语言程序,才能在计算机上运行。   机器语言和汇编语言都是面向机器的,通常称为低级语言。低级语言的共同点是面向机器,与机器的内部体系结构有着密切关系。不同的计算机通常有着不同的低级语言。用低级语言编码难以掌握,编程过程中容易出错,并且非专业人员难以弄懂。   与低级语言不同,高级语言是面向用户和各种实际应用的,它的抽象程度更高,功能更强大。它不依赖于某种计算机硬件,通用性强,移植性好,而且在形式上与人们使用的自然语言比较接近,易学易懂,适合于推广使用。高级语言对计算机的各种操作进行高度抽象,从而使得一个对底层硬件知之甚少的人也能用它来编写程序。但用高级语言编写的程序在执行过程中需要解释和编译程序,所以程序的运行速度较低级语言程序慢。   2.汇编程序、编译程序和解释程序   程序设计语言是一套表达计算过程的符号系统,其表达形式应该能够同时被计算机和人所理解。高级语言接近于自然语言,使得程序设计语言易于掌握和运用。特别是面向对象程序设计语言,它从客观世界所存在的对象实体出发,力求贴近人们考虑问题的实际思维模式和习惯,使得运用程序设计语言对问题空间进行描述变得更加容易。   人们可以借用各种高级语言与计算机进行交互,但对于计算机来说,它能够直接理解和执行的,仍然只能是由二进制机器指令组成的机器指令程序。因此,使用其他程序设计语言编写出来的程序代码,需要最终翻译为机器指令程序才能执行。实现这些翻译功能的程序称为语言处理程序。翻译 程序就是指这样一种程序,通过它能够将使用高级语言编写的源程序转换成与之在逻辑上等价的低级语言形式的目标程序。常见的翻译程序大致可以分为汇编程序、编译程序和解释程序。   通常所说的源程序,是指程序员使用某种高级语言或汇编语言编写出来的程序代码,这些程序代码需要经过翻译才能执行。汇编程序对使用汇编语言编写出来的源程序进行翻译,得到可执行的目标程序,然后在计算机上运行。如果要运行使用高级语言编写出来的源程序,则需要相应的编译程序或解释程序,对源程序进行翻译,从而使其可以在计算机上执行。   编译程序首先将源程序翻译成目标程序,然后再执行该目标程序。如果编译生成的目标程序是汇编语言形式,在编译和运行阶段之间就要添加一个汇编阶段,把经过编译生成的汇编语言目标程序汇编成机器语言目标程序。在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程。   解释程序则是逐条读出源程序中的语句并解释执行,即在解释程序的执行过程中并不产生目标程序,解释一条语句就执行一条语句。在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序。典型的解释型高级语言是BASIC语言。   编译程序和解释程序也可以组合起来工作。比如,首先由编译程序将源程序编译成中间代码,然后由解释程序对这些中间代码解释执行,这样就既包含了编译的过程,又包含了解释的过程。   3.程序设计语言的定义   程序设计语言需要完整、精确的定义。如果没有一种清楚的符号来表示语言结构的种种效果,那么我们将无法清楚地知道语言所描述的到底是什么,更无法从数学的角度系统地对程序的效果进行推理。另外,要实现高级语言与计算机内部体系结构无关,应该使用一种标准的方式来定义语言,使定义能够被全世界所接受。比如标准化组织ANSI和ISO就已经对很多程序设计语言进行了严格的定义,这些语言包括Pascal、FORTRAN、C、C++、Ada、Prolog等。   程序设计语言的定义一般包括3个方面:语法、语义和语用。   程序设计语言的语法和我们通常所使用的自然语言语法有很多相通之处,它决定了一些语言要素如何组合在一起构成其他语言要素的规则,即由程序语言

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档