第五讲 程序设计语言和编程环境
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京大学
14
样例程序2
❖ ❖
计AX算保从存1累累加加和到3,1、0B0得X汇存到编放的被和语加数言,每加完一次
增加1。通过一个循环来完成累加工作。
❖ 计算过程:
MOV AX, 1 MOV BX, 2 calc: CMP BX, 101 JE stop ADD AX, BX INC BX JMP calc stop: HLT
语言程序。
2020/12/12
北京大学
11
❖ 在这里,我们又看到了“程序”和“数据”两
个概念的相对3性、: 汇编语言
对汇编器而言,它的输入“数据”是汇编语言程序, 这种程序当作数据(是一系列的字符行)被加工处理。
汇编器产生的结果是机器代码程序(具有二进符号串 的形式),同时它也是即将在计算机上运行的真正的 程序。
第五讲 程序设wenku.baidu.com语言和编程环境
北京大学 信息科学技术学院 2020年12月12日
❖ 程序设计语言概述
❖ 机器语言 主要内容
❖ 汇编语言 ❖ 高级语言及其程序的执行 ❖ 若干典型的高级语言介绍 ❖ VC6.0编程环境
2020/12/12
北京大学
2
1、程序设计语言概述
❖ 计算机硬件组成
2020/12/12
2020/12/12
北京大学
6
❖ 01000000
2、机器语言 把一个寄存器(EAX)的值加1
❖ 10001011 00000101 00000000 01111001 10001111 10101101
从某个内存单元取出数据,装入EAX寄存器
2020/12/12
北京大学
7
❖ 从直接阅读的角度看,二进制代码简直是密码,难以理解和使用。因此 也必然造成程序不易修改,无法由一种计算机环境移植到其他环境上。
2020/12/12
北京大学
12
❖ 从程序开发的角度来看,汇编语言与机器语言类
似,仍然有许3多、缺点汇:编语言
汇编语言的描述机制层次太低,其基本描述单位仍然 是指令,这种方式与人们描述计算过程的需要之间差 距太大。
汇编语言与计算机硬件的具体结构、指令系统联系过 于紧密,这种情况造成的后果是在一种计算机上开发 的程序极难搬到另一种不同结构的计算机上使用。如 果想这样做,不仅工作量将非常大(与重写差不多), 而且很容易引出程序错误,修改也非常困难。
算机机器的 指指 令令 实系 际2统 上、,也可是机以一器由种计可语算以言机在直程接序执 设行 计。 中因 使此 用
的语言,被称为“机器语言”。
❖ 每一条机器指令包括两个主要方面:
操作(指出计算机应做什么) 被操作的对象(指出处理的数据或它的地址)
❖ 下面给出了几条以二进制形式描述的 Intel 80386 指令以及对它们的文字解释。
❖ 程序的描述形式却可以是多种多样的,可以用不同的方 式表述,这就是程序设计语言。
❖ 程序设计语言(也被称为“编程语言”,Programming Language)是人们描述(编制)程序所使用的规范和方 法(语言)。
机器语言、汇编语言、高级语言
2020/12/12
北京大学
5
❖ 机器指令采用二进制代码形式,它们符合具体计
北京大学
3
1、程序设计语言概述 程序是由若干条指
❖ 计算机指令的执行及程序
令的顺序排列组成, 是为信息处理任务而
预先编制的工作执行
方案。
2020/12/12
北京大学
4
程序设计语言
❖ 软件的基1本、组程成部序分是设完成计其功语能的言程概序。述
❖ 程序描述了计算机处理数据、解决问题的过程,这是程 序的实质。
❖ 用机器语言编程,不仅指令操作需要用规定的二进制代码描述,程序里 的数据也要程序设计者自己安排存储位置。这使程序设计工作更加烦杂 和容易出错。要检查和发现程序中的错误也是极端困难的。这一系列因 素使得用程序开发工作的效率非常低,据统计,一个人一天平均只能够 写出几条有效指令。
2020/12/12
北京大学
2020/12/12
北京大学
13
样例程序1
3、汇编语言 ❖ 计算表达式:135 + 22 - 1
❖ 常用寄存器 AX, BX, CX 等可以用来保存中间结果; ❖ 计算过程:
MOV AX, 135 MOV BX, 22 ADD AX, BX SUB AX, 1 HLT
2020/12/12
2020/12/12
北京大学
10
❖ 对于这种汇编语言形式写出的程序,
3、汇编语言 计算机是不能直接执行的,必须在交
给计算机执行之前先把它翻译成二进 制的机器语言指令程序。
❖ 把汇编语言程序翻译到机器语言的工 作比较机械,可以用计算机来完成这 个翻译工作。“汇编器”(Assembler) 软件就是具有这种功能的软件,它能 把用汇编语言书写的程序翻译成机器
显然这样做比直接采用二进码方便得多。这就是“汇编程 序设计语言”的基本想法。
2020/12/12
北京大学
9
❖ 汇编语言提供一组具有帮助记忆作用的“汇编指令”,
3、汇编语言 每条汇编指令都和一条机器指令相对应,只是指令码和
操作数都采用符号形式。
…… PUSH ECX MOV ERROR, 0 MOV ECX, EAX CMP ECX, 0 JMP FAIL CALL FACT ……
8
❖ 从人的思维方式而言,更适合于用概念描述事物,对于烦
3、汇编语言 琐冗长的数字编码,由于它们不能与概念和概念之间的语
义联系产生任何提示作用,则显然对设计思维没有任何帮 助作用,纯粹是一种累赘。
❖ 人们显然更希望用有帮助记忆作用的符号来书写程序,例
如用 “ADD” 表示“加法”操作,用“ JMP” 表示“控制 性转移”等。操作的对象(数据或数据的地址)最好也能 用符号形式表示,例如用 X、Y代表两个存储数据的容器。
2、机器语言 10101011 10100101 01000100 01011001 10011110 10111101
10011011 01000101 00100000 11111001 10100111 01101101 10100011 10000101 10000001 01111101 10001101 10101101 01001111 10100101 01001010 01111011 10011011 10100111 ……