大学计算机第6讲由机器语言到高级语言程序编写编译课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《大学计算机第6讲由机器语言到高级语言程序编写编译课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学计算机 机器语言 高级 语言 程序 编写 编译 课件
- 资源描述:
-
1、大学计算机大学计算机-计算思维导论计算思维导论Research Center on Intelligent Computing for Enterprises&Services,Harbin Institute of Technology战德臣哈尔滨工业大学 教授.博士生导师教育部大学计算机课程教学指导委员会委员第第6讲讲 由机器语言到高级语言:由机器语言到高级语言:程序编写与编译程序编写与编译Research Center on Intelligent Computing for Enterprises&Services,Harbin Institute of Technology战德臣哈尔
2、滨工业大学 教授.博士生导师教育部大学计算机课程教学指导委员会委员本讲学习什么本讲学习什么?-由机器语言到高级语言:程序编写与编译由机器语言到高级语言:程序编写与编译Research Center on Intelligent Computing for Enterprises&Services,Harbin Institute of Technology战德臣哈尔滨工业大学 教授.博士生导师教育部大学计算机课程教学指导委员会委员战德臣 教授用高级语言进行问题求解用高级语言进行问题求解符号化符号化,计算化计算化再语再语义化义化自然自然/社社会问题会问题程序化程序化执行化执行化算法的结果算法的结
3、果机器级程序机器级程序-机器指令机器指令运算器和控制运算器和控制器器(CPU)-执行执行算法算法自然自然/社会社会问题的求问题的求解结果解结果产生产生用用0/1编码:指编码:指令和数据令和数据存储器:存储器:0/1存与取存与取0/1化化信号化信号化存储存储高级语言程序高级语言程序编译编译执行化执行化由机器语言到高级语言由机器语言到高级语言本讲内容的基本脉络本讲内容的基本脉络?汇编语言程序汇编语言程序程序执行程序执行汇编汇编程序执行程序执行战德臣 教授常量常量变量变量赋值赋值语句语句 算术表算术表达式达式比较表比较表达式达式逻辑表逻辑表达式达式表达表达式式分支分支结构结构 循环循环结构结构 顺序
4、顺序结构结构 高级语言高级语言由机器语言到高级语言由机器语言到高级语言本讲内容的基本脉络本讲内容的基本脉络?战德臣 教授函数函数程序构程序构造方法造方法函数的函数的定义定义函数的函数的调用调用运用函运用函数构造数构造自顶向下自顶向下(Top-Down)(Top-Down)自底向上自底向上(ButtomButtom-Up)-Up)由机器语言到高级语言由机器语言到高级语言本讲内容的基本脉络本讲内容的基本脉络?战德臣 教授编译器编译器计算机计算机语言语言由机器语言到高级语言由机器语言到高级语言本讲内容的基本脉络本讲内容的基本脉络?由机器语言到由机器语言到高级高级语言语言Research Center
5、 on Intelligent Computing for Enterprises&Services,Harbin Institute of Technology战德臣哈尔滨工业大学 教授.博士生导师教育部大学计算机课程教学指导委员会委员战德臣 教授为什么程序编写越来越方便为什么程序编写越来越方便?高级语言程序怎样才能被机器执行高级语言程序怎样才能被机器执行?由机器语言到高级语言由机器语言到高级语言(1)为什么需要计算机语言为什么需要计算机语言?战德臣 教授算法算法解决问题的步骤程序程序计算机能够理解与执行的解决问题的步骤计算机语言计算机语言步骤书写的规范、语法规则、标准的集合是人和计算机都能
6、理解的语言 算法、计算机语言与计算机程序算法、计算机语言与计算机程序由机器语言到高级语言由机器语言到高级语言(1)为什么需要计算机语言为什么需要计算机语言?战德臣 教授计算计算7+107+10并存储的程序并存储的程序机器语言:机器语言:用二进制和编码方式提供的指令系统所编写程序的语言被称为机器语言100001 1000000111100010 1000001010100101 1100000110111101 00所有程序都需转换成机器语所有程序都需转换成机器语言程序,计算机才能执行言程序,计算机才能执行指令系统:指令系统:CPU用二进制和编码提供的可以解释并执行的命令的集合。100001 1
7、0 00000111100010 11 00001010操作码操作码 地址码地址码问:用机器语言编写程序存在什么问题呢?问:用机器语言编写程序存在什么问题呢?由机器语言到高级语言由机器语言到高级语言(2)计算机能够理解与执行什么计算机能够理解与执行什么?计算机语言计算机语言-机器语言机器语言指令指令系统系统机器机器语言语言战德臣 教授计算计算7+107+10并存储的程序并存储的程序u汇编语言:汇编语言:是用助记符号编写程序的语言。u汇编语言源程序:汇编语言源程序:是用汇编语言编出的程序。u汇编程序汇编程序:是将汇编语言源程序翻译成机器语言程序的程序。u用符号编写程序用符号编写程序 =翻译翻译
8、=机器语言程序MOV A,7ADD A,10MOV (6),AHLTu人们提供了用助记符助记符编写程序的规范/标准。同时开发了一个翻译程序翻译程序,实现了将符号程序自动自动转换成机器语言程序的功能。100001 1000000111MOV A,7操作码 地址码由机器语言到高级语言由机器语言到高级语言(3)怎样解决机器语言编写程序所存在的困难怎样解决机器语言编写程序所存在的困难?计算机语言计算机语言-汇编语言汇编语言汇编汇编语言语言战德臣 教授u汇编语言程序处理过程汇编语言程序处理过程由机器语言到高级语言由机器语言到高级语言(4)符号化程序机器不能直接执行怎么办符号化程序机器不能直接执行怎么办?
9、计算机语言计算机语言-汇编语言汇编语言-汇编程序汇编程序(编译器编译器)MOV A,7ADD A,10MOV (6),AHLT汇编汇编程序程序汇编语言源程序助记符号机器语机器语言程序言程序二进制和编码10000110000001111000101100001010100101110000011011110100由汇编程序自动转换转换执执行行汇编汇编语言语言转换规则转换规则 助记符号助记符号,机器指令机器指令用助记符号书写程序的规范、语法规则、标准的集合是人和计算机都能理解的语言机器指令的集合是计算机能够理解并执行,但人理解困难的语言机器机器语言语言编制完成7+10并存储的汇编语言程序完成7+1
10、0并存储的机器语言程序执行战德臣 教授计算计算7+107+10并存储的程序并存储的程序Result=7+10;Returnu人们提供了类似于自然语言方式、自然语言方式、以以语句为单语句为单位书写程序的规范位书写程序的规范/标准标准。并开发了一个翻译程翻译程序序,实现了将语句程序自动自动翻译成机器语言程序的功能。u高级语言:高级语言:是用类似自然语言的语句编写程序的语言。u高级语言源程序:高级语言源程序:是用高级语言编出的程序。u编译程序:编译程序:是将高级语言源程序翻译成机器语言程序的程序。由机器语言到高级语言由机器语言到高级语言(5)为什么还要提出高级语言为什么还要提出高级语言?计算机语言计
11、算机语言-高级语言高级语言高级高级语言语言战德臣 教授编译编译程序程序源程序语句机器语言程序二进制和编码Result=7+10Return10000110000001111000101100001010100101110000011111110100MOV A,7ADD A,10MOV (6),AHLT高级语言程序处理过程示意高级语言程序处理过程示意由机器语言到高级语言由机器语言到高级语言(6)高级语言和汇编语言的差别在哪里高级语言和汇编语言的差别在哪里?u高级语言高级语言:机器无关性;一条高级语言语句往往可由若干条机器语言语句实现且机器无关性;一条高级语言语句往往可由若干条机器语言语句实现且
12、不具有对应性不具有对应性u汇编语言汇编语言:机器相关性;汇编语言语句和机器语言语句有对应性机器相关性;汇编语言语句和机器语言语句有对应性战德臣 教授由机器语言到高级语言由机器语言到高级语言(6)编译器如何实现呢编译器如何实现呢?高级语言编译器高级语言编译器汇编汇编程序程序汇编语言源程序助记符号转换执行执行转换规则转换规则 助记符号,机器指令助记符号,机器指令编译编译程序程序高级语言源程序变量/表达式/语句机器语言程序二进制和编码10000110000001111000101100001010100101110000011011110100转换执行执行高级语高级语言言编译规则编译规则机器语言机器
13、语言编制Result=7+10ReturnMOV A,7ADD A,10MOV (6),AHLT自动转换自动转换执行转换转换汇编器汇编器编译器编译器转换转换战德臣 教授用高级语言进行问题求解用高级语言进行问题求解符号化符号化,计算化计算化再语再语义化义化自然自然/社社会问题会问题程序化程序化执行化执行化算法的结果算法的结果机器级程序机器级程序-机器指令机器指令运算器和控制运算器和控制器器(CPU)-执行执行算法算法自然自然/社会社会问题的求问题的求解结果解结果产生产生用用0/1编码:指编码:指令和数据令和数据存储器:存储器:0/1存与取存与取0/1化化信号化信号化存储存储高级语言程序高级语言程
14、序编译编译执行化执行化由机器语言到高级语言由机器语言到高级语言(7)小结小结?汇编语言程序汇编语言程序程序执行程序执行汇编汇编程序执行程序执行战德臣 教授高级语言程序的基本构成要素有哪些高级语言程序的基本构成要素有哪些?“高级语言高级语言”怎样表达怎样表达“程序程序”的要素的要素?高级语言高级语言(程序程序)的基本构成要素的基本构成要素(1)计算机语言程序的基本构成要素有哪些计算机语言程序的基本构成要素有哪些?战德臣 教授K=0;For I=1 to 100 Step 1 If I 30 K=K+I;保留字保留字变量变量常量常量语句语句表达式表达式认识计算机语言程序认识计算机语言程序高级语言高
15、级语言(程序程序)的基本构成要素的基本构成要素(1)计算机语言程序的基本构成要素有哪些计算机语言程序的基本构成要素有哪些?“保留字保留字”为编译器识为编译器识别和处理语句而确定别和处理语句而确定的一些特定符号的一些特定符号战德臣 教授常量、变量与表达式常量、变量与表达式u算术表达式示例。算术表达式的结果是一数值;算术表达式示例。算术表达式的结果是一数值;A1+(B2 x1+76)*3(B2+yy4)/L3 xx3u比较表达式示例。比较表达式的计算结果是逻辑比较表达式示例。比较表达式的计算结果是逻辑“真真”或或“假假”;Grade=70N4=A1)&(B2 y2)u将表达式的计算结果赋值给一变量
16、:赋值语句将表达式的计算结果赋值给一变量:赋值语句M =XY+50;M =(XY)AND(XD2 D1=D1-5;ElseD1=D1+10;Y=50;Z=80;X=30;X=Z+Y;If Y Z X=X-Y;Else X=X-Z;X=X+Y;If X Z X=Y;X=X-Z;If XY X=X-Y;语句与程序控制语句与程序控制高级语言高级语言(程序程序)的基本构成要素的基本构成要素(4)分支结构分支结构?分支分支结构结构战德臣 教授Y=50;Z=80;X=30;X=Z+Y;If Y Z X=X-Y;Else X=X-Z;X=X+Y;If X Z X=Y;X=X-Z;If XY X=X-Y;语句
17、与程序控制语句与程序控制高级语言高级语言(程序程序)的基本构成要素的基本构成要素(4)分支结构分支结构?XYZ3050801305010050-30分支分支结构结构战德臣 教授u循环结构循环结构(有界循环结构)For(计数器变量计数器变量=起始值起始值 To 结束值结束值 增量表达式增量表达式)循环体的程序语句序列 Next 计数器变量计数器变量Sum=0;For I=1 to 5 Step 1 Sum=Sum+I;Next I/继续其他语句继续其他语句Sum=0;For I=1 to 10000 Step 2 Sum=Sum+I;Next I语句与程序控制语句与程序控制高级语言高级语言(程序
18、程序)的基本构成要素的基本构成要素(5)循环结构循环结构?SumI01123364105156循环循环结构结构战德臣 教授u循环结构循环结构(条件循环结构条件循环结构)Do 循环体的程序语句序列循环体的程序语句序列 While(条件表达式条件表达式);X=1;Y=2;Sum=0;Do Sum=X+Y;X=X+1;Y=Y+1;While(Sum=10)/其他语句其他语句语句与程序控制语句与程序控制高级语言高级语言(程序程序)的基本构成要素的基本构成要素(5)循环结构循环结构?XYSum1202333454575696711循环循环结构结构战德臣 教授u循环结构循环结构(条件循环结构条件循环结构)
19、Do 循环体的程序语句序列循环体的程序语句序列 While(条件表达式条件表达式);X=1;Y=2;Sum=0;Do Sum=X+Y;X=X+1;Y=Y+1;While(Sum0)/其他语句其他语句语句与程序控制语句与程序控制高级语言高级语言(程序程序)的基本构成要素的基本构成要素(5)循环结构循环结构?XYSum120233循环循环结构结构战德臣 教授u循环结构循环结构(条件循环结构条件循环结构)While(条件表达式条件表达式)Do 循环体的程序语句序列循环体的程序语句序列 X=1;Y=2;Sum=0;While(Sum0)Do Sum=X+Y;X=X+1;Y=Y+1;语句与程序控制语句与
20、程序控制高级语言高级语言(程序程序)的基本构成要素的基本构成要素(5)循环结构循环结构?XYSum120循环循环结构结构战德臣 教授常量常量变量变量赋值赋值语句语句 算术表算术表达式达式比较表比较表达式达式逻辑表逻辑表达式达式表达表达式式高级语言高级语言(程序程序)的基本构成要素的基本构成要素(6)小结小结?分支分支结构结构 循环循环结构结构 顺序顺序结构结构 高级语言高级语言战德臣 教授自然自然/社社会问题会问题自然自然/社会社会问题的求问题的求解结果解结果符号符号化化计算计算化化再符再符号化号化高级语高级语言程序言程序 机器语机器语言程序言程序 计算机计算机器执行器执行 程序程序执行执行
展开阅读全文