汇编语言程序设计第一章优秀课件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
❖ 用机器指令所写的程序称作机器指令程序,机器指令 程序也指用代码指令所写的程序。机器指令程序遵循 冯•诺依曼原理:用二进制表示数,程序与数据都存储 在同样的存储器,程序指令一般顺序存取顺序执行。
www.tup.com.cn
南开大学 朱耀庭
1. 机器语言
❖ 计算机出现初期只有一种机器语言,程序员只能用代 码指令编写程序,即机器语言程序。用机器语言编写 程序是相当艰苦的工作,必须由经过严格训练的专业 技术人员承担,这是早期计算机之所以不能够广泛应 用的最大障碍之一。
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
❖ 80X86汇编语言源程序 扩展名为.ASM,经过汇 编以后生成的浮动地址
二进制文件扩展名 为.OBJ,.OBJ文件需 要经过连接才能够生成
可执行文 件.EXE。.EXE是一个 可以由操作系统执行的 机器指令程序。图1-2给 出了一个简单汇编语言
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
❖ 用汇编语言编写的程序称作汇编语言程序,或汇编语言源 程序,在本教材中也简称为源程序。汇编语言程序较之机 器指令程序容易理解和维护。 汇编语言源程序是一个文本文件,它必须经过翻译才能够 变成可执行的机器语言程序,这个翻译过程称作汇编。汇 编的核心过程是将汇编指令逐条翻译成机器指令,这正是 汇编语言中“汇编”一词的含义。
程序与其机器指令程序 之间的对应关系。
图1-2 汇编程序翻译过程示意图
动画演示
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
尽管不同的CPU有不同的汇编语言,但不同种类的汇编语言 都有其共同规律。因此学会一种机器的汇编语言,再学习其 他汇编语言就相对容易多了。 ❖ 例1-1 汇编程序和对应的机器指令程序 在Debug下输出字符‘3’的汇编语言程序如下:
南开大学 朱耀庭
1. 机器语言
❖ 机器指令通常由操作码和操作数两部分组成,操作码 指出该指令所要完成的操作,即指令的功能,操作数 指出参与运算的对象,以及运算结果所存放的位置等。
❖ 由于机器指令由物理部件的若干位二进制0、1状态体 现,因此机器指令的最直接的记忆形式就是表示这一 指令状态的二进制数,这个二进制数就称作该机器指 令的二进制代码指令。由于二进制数和八进制数,以 及十六进制数的特殊关系,因此该二进制代码指令对 应的八进制数和十六进制数分别称作该机器指令的八 进制或十六进制代码指令。
1.1.1 面向机器的语言
1
机器语言
2
汇编语言
3
机器语言与汇编语言
www.tup.com.cn
南开大学 朱耀庭
1. 机器语言
❖ 机器语言程序由机器指令构成,这些机器指令按照执 行顺序依次排列,运行时依次执行完成某个特定的计 算或任务。
❖ 机器指令是CPU能直接识别并执行的指令。机器指令 由物理部件的若干位二进制0、1状态体现,机器指令 程序运行前需要存储到内存,正确的机器指令一旦送 入CPU被译码后就将变成动作予以执行。
❖ 一方面机器语言十分重要,必须了解;另一方面机器 代码指令程序使用又十分困难;因此唯一能够替代机 器语言的汇编语言就成为了计算机科技人员必须掌握 的一种计算机语言。
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
❖ 虽然用机器语言编写程序有许多不便,但程序执行效率高。 所以,在保留“程序执行效率高”的前提下,人们开始着 手研究一种能大大改善程序可读性的编程方法。即选用能 反映机器指令功能的单词或词组来代替该机器指令的操作 码,选用相应的符号表示CPU内部资源和内存等操作数, 这就是汇编指令。
❖ 例如, 汇编指令:MOV AL,BL 其对应的二进制指令为:1101100010001000,十六进制 代码指令则为D888H,可见记忆机器指令相当困难。
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
❖ 而汇编指令中MOV源于Move,表示传送指令;AL,BL 分别表示80X86的AL和BL寄存器。指令功能是将BL寄存 器中的内容传送到AL寄存器。如此,令人难懂的二进制 机器代码指令或十六进制机器代码指令就可以用通俗易懂 的、具有一定含义的符号指令来表示了,这就是汇编指令 的原意。我们称这些具有一定含义的符号,例如上述指令 中的MOV,为助记符,用助记符、符号地址等组成的符号 指令称为汇编格式指令或汇编指令。
www.tup.com.cn
南开大学百度文库朱耀庭
1. 机器语言
❖ 例如:B233H就是一条80X86的十六进制机器代码指 令,这条指令的功能是将33H这个十六进制数送DL寄 存器。该机器指令的二进制代码指令是: 1011001000110011,指令长度16位。
❖ 显然二进制代码指令与其状态对应直观,但记忆困难; 而十六进制代码指令则方便记忆。因此80X86的代码 指令通常都用十六进制表示。
www.tup.com.cn
南开大学 朱耀庭
2. 汇编语言
❖ 因此,用助记符表示的机器指令称作汇编指令,用汇编指 令编写的程序称作汇编指令程序。但汇编指令最终必须翻 译成机器指令才能够在机器上执行。 汇编语言是汇编指令集、伪指令集及其使用规则的统称。 能够一对一地翻译成机器指令的这种用助记符表示的机器 指令称作汇编指令。伪指令则是出现在汇编语言程序中的 一些辅助性的说明,它不对应具体的机器指令,而是程序 设计者与汇编过程中的翻译程序(即汇编)、连接程序, 以及执行时如何装入的一种约定。有关内容详见5.1节。
www.tup.com.cn
南开大学 朱耀庭
1. 机器语言
❖ 如图1-1所示,机器指令面向机器,因机器而异。不同 的机器具有不同的机器指令,因而具有不同的机器语 言。
80X86 机器语言
Z80 机器语言
80X86 CPU 计算机
图1-1 使用不同机器语言的计算机
动画演示
Z80 CPU 计算机
www.tup.com.cn
汇编语言程序设计 第一章
第一章 预备知识
1.1 计算机语言 1.2 思维方式的转变
1.3 计算机中数的表示
www.tup.com.cn
南开大学 朱耀庭
1.1 计算机语言
1.1.1 面向机器的语言 1.1.2 非面向机器的计算机语言
1.1.3 学习汇编语言的意义
www.tup.com.cn
南开大学 朱耀庭
相关文档
最新文档