2,程序设计语言的定义 (1)
- 格式:pdf
- 大小:296.66 KB
- 文档页数:14
第三部分程序设计基础3.1 程序、程序设计、程序设计语言的定义⑴程序:计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。
⑵程序设计:程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。
程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。
程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。
⑶程序设计语言:程序设计语言用于书写计算机程序的语言。
语言的基础是一组记号和一组规则。
根据规则由记号构成的记号串的总体就是语言。
在程序设计语言中,这些记号串就是程序。
程序设计语言有3个方面的因素,即语法、语义和语用。
3.2 高级语言和低级语言的概念及区别⑴高级语言:高级语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。
它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。
⑵低级语言:低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。
机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。
⑶区别:高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差了解知识:CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码。
越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。
而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,使编写程序的过程更符合人类的思维习惯,并且极大了简化了人力劳动。
《高级语言程序设计》知识点总结(一)1.1程序设计和程序设计语言1.程序从最一般的意义来说,程序是对解决某个计算问题的方法(算法)步骤的一种描述;而从计算机来说,计算机程序是用某种计算机能理解并执行的计算机语言作为描述语言,对解决问题的方法步骤的描述。
计算机执行按程序所描述的方法步骤,能完成指定的功能。
所以,程序就是供计算机执行后能完成特定功能的指令序列。
一个计算机程序主要描述两部分内容:描述问题的每个对象和对象之间的关系,以及描述对这些对象作处理的处理规则。
其中关于对象及对象之间的关系是数据结构的内容,而处理规则是求解的算法。
针对问题所涉及的对象和要完成的处理,设计合理的数据结构常可有效地简化算法,数据结构和算法是程序最主要的两个方面。
2.程序设计的任条和主要步骤程序设计的任务就是分析解决问题的方法步骤(算法),并将解决问题算法的方法步骤用计算机语言记录下来。
程序设计的主要步骤包罗:认识问题、设计解决问题的算法、按算法编写程序、调试和测试程序。
在程序开发过程中,上述步骤可能有反复,如发现程序有错,严重情况可能会要求重新认识问题和重新设计算法等。
3.机器语言和汇编语言计算机能直接识别和执行的二进制代码称为计算机的机器语言。
用有助于记忆的符号来代表二进制代码,称为汇编语言。
汇编语言与机器语言几乎有一对一的关系。
用汇编语言编写的程序称为“汇编源程序”,汇编源程序不能在计算机上直接执行,需要用汇编程序将汇编源程序翻译成机器语言程序,然后执行由汇编程序翻译出来的机器语言程序。
机器语言和汇编语言是与具体计算机紧密相关的,称它们是面向机器的语言。
4.高级语言与机器语言和汇编语言比拟较,高级语言与具体计算机无关,是一种能便利描述算法过程的计算机程序设计语言。
高级语言种类千差万别,但一般包含有以下四种成分:数据成分用来描述程序所涉及的数据;运算成分用来描述运算;控制成分用来表达程序的控制构造;传输成分用来表达数据的传输。
这是最原始的BNF 形式,用<…> 表示非终结符,《Algol60修订报告》采用这种形式。
后来人们常用它的一些变形形式(见下)
需要解决的小问题:语言里的| 等怎么表示
2月其中正体(打字机体)表示终结符,斜体表示非终结符,ε表示空串语法类program 表示完整的程序
语法定义:BNF 的变形
语言手册里常见的一种形式(C 语言/C++ 语言都采用)
enum-name :
identifier
enum-specifier :
enum identifier opt { enumrator-list opt }
enumerator-list :
enumrator-definition
enumratoe-list , enumerator-definition
enumerator-definition :
enumerator
enumerator = constant-expression
enumerator :
identifier
斜体表示非终结符,打字机体是终结符。
冒号换行后退格表示“定义为”,并列放置表示“或者”,下标opt 表示可选
2012年2月17
语法定义:语法图
另一种常见语法描述方式是语法图
词法分析
语法分析
语义分析和中间代码生成与机器无关的优化
目标代码生成机器特定的优化。