- 1、本文档共45页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一章 程序设计语言; 第二章 程序设计语言;2.1 高级程序设计语言概述;用容易记忆的英文单词代替约定的指令,易读写程序, 导致了汇编语言的诞生;DATA SEGMENT
XX DB X
YY DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV AL,XX
CMP AL,0
JGE BLGR
MOV AL,0FFH
MOV YY,AL
HLT
BLGR: JE EQUT
MOV AL,01H
MOV YY,AL
HLT
EQUT: MOVE YY,AL
HLT
CODE ENDS
ENDSTART;2.2 高级程序设计语言实现计算的方式;第三步作语义分析(Semantic Analysis)对各句子的语法树作检查:运算符两边类型是否相兼容;该作哪些类型转换;控制转移到不该去的地方;是否有重名等等。若有错转出错处理,否则生成执行代码
第四步是中间代码生成。中间代码是向目标码过渡的一种编码,形式尽可能和机器的汇编语言相???,但不涉及具体机器的操作码和地址码。好处是可在中间码上作优化
第五步是优化。对中间码程序作局部和全局优化,使运行更快,占用空间最小
第六步是代码生成 。 生成目标机器的目标码(或汇编)程序
;;;2.2.2 高级语言程序的解释执行;;2.3 高级程序设计语言基本特征;2.3.2 程序的控制结构-条件语句;2.迭代语句;迭代结构的一般式有几种:;(1)结构化程序控制;;(2)其它控制结构;其它控制; 2.3.2 数据类型;强类型语言(所谓强类型,就是编译时所有变量类型均确定,类型转换必须显式地给出)
无类型语言则无需变量的类型声明,给它什么值它就是什么类型。
2. 数组
Dim Names(15) As String
声明16个元素数组,每个元素都是字符串类型
Dim Matrix(9,9) As Double
是10*10=100元素的方阵,元素为双精度浮点数
不同类型的一维数组能否组成一多维数组?一般语言不可以,VB利用Variant可以把它们联接起来并把它叫做数组的数组;3. 记录;;4.指针类型;提供指针类型的语言一般都提供两种与指针有关的操作:取地址操作和取值操作
取值操作取的是指针所指的变量的值,*P=123
取地址操作取的是变量的内存地址,P=A
若给指针赋了初值,并在程序的运行期间不再改变,则称这种指针为常量指针
指针是一种简洁、灵活的语言对象。审慎的使用可以显著提高编程的灵活性和效率,但不负责任的使用将使你掉进错误的深渊。 ; 2.3.4 过程;;在过程中声明的变量是局部变量,只在过程中有效
2.过程调用
函数过程用函数名引用,需有与形参表变元的个数、类型、次序一样的实参表,子程序过程的引用是过程调用,也要有实参表
形参和实参匹配后, 主程序中声明的变量在过程中自动可用。但反过来不行;2.3.5 过程的数据传递-无参过程;;2.传递变元
从主程序向过程传递数据可以有两种方式:传值和引用
? 引用;2.3.6 变量的生命期和Static变量;2.3.7 输入/输出;2.4 面向对象程序语言的基本特征;“分而治之”的思想使我们想到进一步封装,即把相关的数据与过程装在一起,尽可能让它独立。
设想有一程序有100个子程序,经过分析,这100个子程序并不是每个子程序都要用到所有的数据,把数据相关和程序相关(有嵌套调用)的分成组。;数据叫做对象的属性(Attribate), 操作则改称方法(Method), 即改变属性的方法。对象间相互只有通信,“调用”方法叫发消息(Message)
;2.4.2 类与对象;堆栈类;有了这个类就可以对实例对象作计算了,下面给出该类的使用例子:
main()
{
char c
char_stack stk1(100) //声明一实例对象stk1
stk1.push(‘%’) //压入’%’到stk1中
stk1.push (‘#’)
c=stk1.pop() //从stk1中弹出一字符
if (stk1.top()==‘#’){...}
else
…
}
;2.4.3 类定义;面向对象的封装性可以支持各独立对象的协作计算,不需要主控对象。
在其它类
您可能关注的文档
- 第二章C程序的设计基础.ppt
- 第二章C编程基础.ppt
- 第二章C语言基础.ppt
- 第二章C语言复习及C基础知识.ppt
- 第二章C语法基础.ppt
- 第二章2行为主义.ppt
- 第二章Java语言基础知识.ppt
- 第二章MYSQL数据库和表创建.ppt
- 第二章企业内源融资.ppt
- 第二章会计理论概述.ppt
- 2025年安徽省粮食和物资储备系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年阿勒泰市市场监督管理系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年安庆市住房和城乡建设系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年安顺市人社工商保险服务中心人员招聘笔试考试题库及答案解析.docx
- 2025年安康市政府采购中心(公共资源交易中心)人员招聘笔试考试题库及答案解析.docx
- 2025年百色市卫生行政系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年佛山市疾病和预防控制中心人员招聘笔试考试题库及答案解析.docx
- 2025年阿里市住房和城乡建设系统事业单位人员招聘笔试考试题库及答案解析.docx
- 2025年阿坝市人社工商保险服务中心人员招聘笔试考试题库及答案解析.docx
- 2025年阿拉善市政府采购中心(公共资源交易中心)人员招聘笔试考试题库及答案解析.docx
文档评论(0)