西南民族大学微型计算机,微型计算机原理及应用--西南民族大学大学.ppt.pptx

微型计算机原理及应用--西南民族大学大学.ppt

微型计算机原理及应用西南民族大学电信学院授 课 教 师:杜 诚联系方式Email:dcheng_76@第四章 汇编语言及其程序设计汇编语言: 由于汇编语言依赖于机器硬件,通用性和移植性较差 常用于编写系统程序、实时通信程序、实时控制程序高级语言: 编程方便快捷,通用性和移植性较好 常用于完成大量数据处理、人机界面等设计任务西南民族大学电气信息工程学院 汇编语言是介于低级语言和高级语言之间的语言,他是采用助记符的方法,用各种符号表示操作和操作对象的! 汇编语言: 符号化的、面向机器(CPU)的程序设计语言 基本特点 :依赖于机器,没有通用性执行速度快,目标代码占用内存少能够修改和扩充系统软件西南民族大学电气信息工程学院汇编语言与汇编程序汇编语言→汇编语言源程序: 用指令助记符表示机器码; 用符号地址表示存储器地址 ; 用伪指令约束、管理指令 汇编程序: 将汇编语言程序(简称源程序)翻译为机器所能识别的目标代码的系统程序。如 MASM.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 start: MOV AX, data MOV DS, AX MOV ES, AX MOV AL, 4CH INT 21H code ENDS END start 堆栈段数据段代码段西南民族大学电气信息工程学院; ――――――――――――――――――――――――――――段名1SEGMENT; 段1开始语句1语句2…… 段名1ENDS; 段1结束; ――――――――――――――――――――――――――――-段名2SEGMENT; 段2开始……段名2ENDS; 段2结束; ―――――――――――――――――――――――――――――……; 其它段; ―――――――――――――――――――――――――――――END; 源程序结束西南民族大学电气信息工程学院源程序的组成——段 一个源程序由若干段组成,如数据段、代码段、堆栈段等; 各段由若干条语句行组成; 指令必须在代码段中,因此源程序至少有1个段; 借助堆栈段,可实现程序正确返回; 根据编程需要,确定是否需要数据段、附加段、堆栈段。西南民族大学电气信息工程学院源程序的组成——语句与机器码一一对应 指令性语句[指令标号:] 指令助记符 [操作数1[,操作数2]] ;注释对源程序进行指示、说明、定义 指示性语句——伪指令 [名字]伪指令助记符 [参数1 [,参数2 ,…, 参数n]] ;注释调用一次,展开为一份对应的代码 宏调用语句 宏名[实参1 [,实参2 , … , 实参n]] ;注释西南民族大学电气信息工程学院 指令[指令标号:] 指令助记符 [操作数1[,操作数2]] ;注释操作符 伪指令 [名字]伪指令助记符 [参数1 [,参数2 ,…, 参数n]] ;注释标识符 宏 宏名[实参1 [,实参2 , … , 实参n]] ;注释操作数宏汇编语句中的字段西南民族大学电气信息工程学院 标识符——由编程人员自行定义的、有特殊意义的字符序列。 标识符的组成 字母a~z(A~Z)、数字0~9、特殊字符(? @ $ _ . ) 不用数字开头 长度小于 32 个字符不同于任何保留字 标识符的作用 用作指令的标号 用作伪指令的名字(如:段名、过程名、宏名……) 用作变量名*西南民族大学电气信息工程学院操作符字段由保留字组成,是语句中不可缺少的部分。 保留字——在指令系统和

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值