微机原理-第4章 汇编语言程序设计.pptVIP

  • 9
  • 0
  • 约2.93万字
  • 约 10页
  • 2017-11-29 发布于湖北
  • 举报
微机原理-第4章 汇编语言程序设计

第4章 汇编语言程序设计 主要内容 汇编语言源程序的结构 汇编语言语句格式 伪指令 功能调用 汇编语言程序设计 §4.1 汇编语言源程序 汇编语言的发展过程: 机器语言 助记符 汇编语言 机器语言 二进制数形式的指令和数据 如B0 64 ;既不直观,又不易理解和记忆 助记符 用便于记忆的英语单词表示的指令操作码。它反映了指令的功能和主要特征,便于人们理解和记忆。 如MOV AL,64H ;很容易记忆理解 汇编语言 指令助记符,符号地址,标号,伪指令等语言元素的集合以及这些元素使用的规则。 如:LP1: mov ax,VAR … loop LP1 用汇编语言编写的程序叫汇编语言源程序。 汇编程序 汇编源程序需翻译成机器语言,变成可执行文件,机器才能执行,这个翻译过程叫汇编。——高级语言中称该过程为“解释”或“编译”。 执行翻译的程序称为“汇编程序”。 汇编语言程序设计与执行过程 输入汇编语言源程序 源文件 .ASM 汇编(编译) 目标文件 .OBJ 链接 可执行文件 .EXE 调试 最终程序 §4.1.1 汇编语言源程序的结构 一个基本的汇编语言程序框架 stack SEGMENT PARA ‘stack‘ DB 100 DUP(‘stack’) stack ENDS data SEGMENT 数据、变量在此定义 data ENDS code SEGMENT ASSUME CS:code, DS:data, ES:data,ss:stack start: MOV AX, data MOV DS, AX MOV ES, AX 此处加入你自己的程序段 MOV AL, 4CH INT 21H code ENDS END start § 4.1.2 汇编语言的语句与格式 汇编语言的语句有两种: 指令性语句 由8086指令助记符构成的语句 标号: 指令助记符 目的操作数,源操作数 ;注释 指示性语句 由伪指令构成的语句 名字 伪指令 操作数1,操作数2,…,操作数n ;注释 各部分之间至少要用一个空格作为分隔符。 指令性语句与指示性语句比较 指令性语句 由CPU执行,每一条指令性语句都有一条机器码指令与其对应 指令性语句汇编时生成机器码 指示性语句 由汇编程序执行。它指出汇编程序应如何对源程序进行汇编,如何定义变量、分配存储单元以及指示程序开始和结束等。指示性语句无机器码指令与其相对应 指示性语句汇编时不生成机器码。 语句的构成元素 标号 指令的符号地址,用来代表指令在存储器中的地址。 只能出现在指令性语句中,标号后应加上冒号。 名字 段、过程、变量的名字,用来代表它们在存储器中的地址。 只能出现在指示性语句中,名字后不加冒号。 指令助记符 8086助记符、伪指令 操作数——即指令的操作对象 对指令性语句——0,1,2个 对指示性语句——根据需要而定 操作数之间以逗号分隔 操作数可以是:寄存器、存储单元、常数或表达式 如:AX,[DI+BX+10],200,16*8+TABLE,等等 语句的构成元素(续) 注释 以分号开头,可放在指令后,也可单独一行。 注意注解的写法。要写指令(段)在程序中的作用,而不要写指令的操作。 如:1)MOV CX,100 ;传送100到CX 2)MOV CX,100 ;循环计数器置初值 显然,第二种写法要比第一种写法要好。 [语句构成元素举例-hello.asm] § 4.1.3 数据项与表达式 数据项包括: 常量 变量 标号 表达式 常量 数值常量 二进制数,以B结尾。 十进制数,如85 十六进制数,以H结尾。第1个数字为A-F时,前面应加0,如0F160H 字符串常量: 用引号括起来的1个或多个字符。 如:‘ERROR!’, ’a’,汇编时被翻译成对应的ASCII码45H,52H,52H,4FH,52H,21H和61H 标号 指令所在内存单元的符号地址 属性: 段地址:即标号所在段的段地址; 偏移量:标号所代表存储单元的段内偏移

文档评论(0)

1亿VIP精品文档

相关文档