- 2
- 0
- 约1.86万字
- 约 78页
- 2023-06-25 发布于广东
- 举报
微机电子教程 第四章汇编程序设计; ②这样的程序占用内存空间少、执行速度快。;上机环境; 汇编语言上机过程
D:EDIT ABC.asm
D:MASM ABC;
有语法错,回EDIT下改该程序
D:LINK ABC;
有错,回在EDIT下改程序
D:ABC
运行结果错,回EDIT下改程序
或在DEBUG下调试,找原因。
D:DEBUG ABC.exe
;4.2 汇编语言的程序结构与语句格式; 8086/8088/80286只允许同时使用4种类型的段:代码段(CS)、堆栈段(SS)、数据段(DS)和附加段(ES)。
80386/80486和Pentium系列允许同时使用6种段,除以上4种段外,还可有FS和GS两个附加数据段。
在8086/8088和实地址方式下,每个段的最大长度均为64KB;而在保护方式下,80286允许每个段的最大长度为16MB,80386/80486和Pentium系列允许4GB。
在一个源程序中每种类型的段又可存在若干个,如几个数据段 ;二、源程序与PC DOS的接口
汇编语言源程序经过汇编转变为目标程序,当用链接程序对
其作进行链接和定位时,操作系统完成: ;保证用户程序执行完后返回DOS:
第一种方法:标准序法:
①将用户程序中的主程序定义为FAR过程,其最后一条指令为RET;
当程序执行到RET时,会将栈顶的两个字分别送IP、CS。
②在主程序的开始处将PSP所在段的段地址DS(或ES)保存进栈,
然后再将一个全0的字(PSP的段内偏移地址)压入堆栈。这就是
程序结构中的以下三条指令:
PUSH DS ;保护PSP段地址
MOV AX,0 ;保护偏移0地址
PUSH AX
当用户程序返回时,会返回到DOS,执行INT 21H
注:由于DS、ES由DOS已设置,所以在用户程序的开始处应重新设置
DS、ES。;4、2、2 汇编语言的语句;⑶ 宏指令语句:
是以某个宏名字定义的一段指令序列。汇编时,凡有宏指令语句的地方都将用相应的指令序列的目标代码插入。宏指令语句是一般性指令语句的扩展。; 以字母开头,由字母(A~Z或a~z,汇编程序不区分大小写)、数字(0~9)及部分特殊字符(?、@、$和下划线_等)组成的字符串表示,字符串长度不能超过31个。
标识符不能是汇编语言中有特定意义的保留字,如:CPU的内部寄存器名AH、AL、AX等。;二、语句中的操作数;在数???段或堆栈段中,是存放数据的存放单元的符号地址,
与各种寻址方式有关(存贮器操作数寻址方式);4、表达式操作数
表达式由各种操作数、运算符和操作符组成。
(1)汇编语言中表达式有两类
数值表达式:由数值常量、字符串常量或符号常量等与算术、逻
辑或关系运算符连接而成。在汇编时产生一个数值。
地址表达式:由常量、变量、标号、寄存器(如BX、BP、SI、DI)
的内容以及一些运算符组成。其值表示存储器地址,
一般都是段内的偏移地址,因此它也具有段属性、
偏移量属性和类型属性。如ES:[SI+4];①算术运算符
算术运算符有+、-、×、/和MOD等。它们都可用于数值表达式,运算结果是一个数值。
在地址表达式中,对标号或变量只可以使用加、减运算符。经常使用的是“标号或变量±常量”这种形式。且运算后仍为标号或变量,其类型及段基址属性不变,仅修改了偏移量属性。如,PLACE+2×3是指PLACE字节单元后的第6个存储单元的地址。若PLACE与某存贮单元地址相关,则PLACE+2×3仍与某存贮单元相关。 ;作为指令助记符时,则是在程序运行中执行的,操作对象还可以是寄存器或存储器操作数。
例:AND DX ,PORT AND 0FEH
;
; 4.3 汇编语言的伪指令语句; 2. 符号语句=
格式:符号名 = 表达式
功能与EQU类似, 但可重新定义。
例:EMP=60
EMP=EMP+1
EMP=123X4
; 经过定义的变量有3个属性:TYPE,SEGMENT,OFFSET
若某个变量表示的是一个数组,则其类型属性为变量的单个元素
所占用的字节数。;;(2)预留内存单元,但不赋值,以存放运算结果
例: A DB ?
您可能关注的文档
最近下载
- 核医学教学课件:血液和淋巴显像.ppt VIP
- 重庆市各地方周氏支族源流(1-170支族).doc VIP
- 建筑工程质量管理体系流程图.docx
- 淋巴系统核医学检查课件.ppt VIP
- (高清版)B-T 6003.1-2022 试验筛 技术要求和检验 第1部分:金属丝编织网试验筛.pdf VIP
- (已压缩)TUCST007-2020房屋建筑与市政基础设施工程施工安全风险评估技术标准.docx VIP
- 2026年国家公务员考试申论真题及参考答案(考生回忆版).docx VIP
- 部编版语文二年级上册期中常考七大重点题型专项训练.docx VIP
- 机器人操作系统(ROS)及仿真应用 课件全套 第1--9章 Linux Ubuntu入门基础--- 基于ROS的服务机器人应用实例.ppt
- 压疮的预防及护理技术操作考核评分标准编辑.docx VIP
原创力文档

文档评论(0)