- 1
- 0
- 约2.66万字
- 约 78页
- 2016-08-23 发布于重庆
- 举报
微机原理与接口技术4章1
第四章 汇编语言程序设计 主要内容 汇编语言程序的结构 汇编语言语句类型和组成 汇编语言程序设计 4.1汇编语言程序及其开发方法(1) 4.1.1汇编语言及汇编语言程序 机器指令/汇编语言/高级语言 1、机器指令: 计算机最终能理解并执行的是二进制代码表示的机器语言指令。但用机器语言指令编写程序麻烦,不直观。 例如:PUSH AX 机器指令为:2、汇编语言: 以助记符的形式表示的机器语言指令称为汇编语言指令简称汇编语言,它与机器指令是一一对应的。 3 、高级语言: 面向过程(如C, FORTRAN)或对象(如C++, Java)的语言,不依赖于机器,因而有很好的通用性和可移植性. 机器语言指令、汇编语言指令及汇编语言源程序 4.1汇编语言程序及其开发方法(3) 4.1.2汇编语言程序的开发方法 1. 编写汇编语言源程序 源程序文件要以ASM为扩展名.源程序文件的形成(编辑)可以通过任何一个文本编辑器实现: 如DOS中的全屏幕文本编辑器EDIT. 2. 对源程序进行汇编 汇编语言源程序文件必须经过名为汇编程序的软件翻译成二进制目标代码文件,该目标代码文件主要包含源程序中的汇编语言指令代码所对应的机器语言指令代码。 PC机上常用的汇编程序软件是 MASN.EXE。 MASN HELLO.ASM 经过汇编后的源程序,汇编成目标程序文件,后缀为.obj 3.对目标程序进行连接 生成的目标程序,还需要用连接程序软件(LINK.EXE)将其与其他的目标程序及所需的库文件组装成一个完整的可执行程序文件。 LINK HELLO.OBJ 4.1汇编语言程序及其开发方法(4) 4.可执行程序的运行 经汇编、连接生成的可执行程序在操作系统(DOS)下只要输入文件名就可以运行: hello.exe 操作系统装载该文件进入主存,并开始运行。 在DOS下运行程序时,COMMAND.COM把.EXE文件装入内存。装入时在数据段内偏移地址0处构造一个100H字节的程序段前缀PSP,然后是代码段/数据段/堆栈段内容。装入后,自动设置DS和ES寄存器指向程序段前缀,CS、IP、SS、SP寄存器设置为由连接程序传过来的值(所以必须在程序中给DS、ES赋值)。 5.调试程序 DEBUG HELLO.EXE 4.1汇编语言程序及其开发方法(5) 程序结束返回DOS的方法: 程序一开始先把PSP的段地址(由DS指向)压栈,把偏移地址0压栈。程序结束时RET指令使得:栈顶0000H-IP,PSP的段地址-CS,将要执行的指令是PSP里的内容,PSP里的前两个字节是指令INT 20H,是DOS中断调用,实现的功能就是“返回DOS”。 START PROC FAR PUSH DS MOV AX,0 PUSH AX : RET START ENDP 4.2汇编语言源程序的结构(1) 汇编语言的源程序是分段的,由几个段形成一个源程序,每一段有一个段名,以SEGMENT为段开始,以ENDS结束; 源程序最后以END作结束; 一般有DATA段,CODE段,STACK段; 一个段由若干语句组成 4.2汇编语言源程序的结构(2) 一、 汇编语言的语句格式 由汇编语言编写的源程序是由许多语句(也可称为汇编指令)组成的。 在8086/8088汇编语言中,有两类汇编语言语句:一类是执行性语句,另一类是说明性语句。对执行性语句,汇编程序都为之产生机器指令代码;而说明性语句的作用仅仅是告诉汇编程序对汇编程序中的执行性语句应该如何产生代码或如何分配存储空间。 执行性语句可分为两种类型:一般性执行性语句和宏指令。一般性执行性语句对应一条8086/8088的机器指令,每个语句由1~4个部分组成,其格式是: [标号:] 指令助记符 [操作数][;注解] 说明性语句又称为“指示性语句”,通常用来表示源程序的起始或终止信息、分段情况、内存结构、变量说明等信息。 [名字] 伪指令助记符 [参数][;注解] 其中用方括号括起来的部分,可以有也可以没有。每部分之间用空格(至少一个)分开,一行最多可有132个字符 . 例: RET ;无操作数 COUNT: INC CX ;一个操作数 COST DB 3,4,5,6,7;伪指令,5个操作数 MOV AX,[BP十4] ;二个操作数 4.2汇编语言源程序的结构(4) 1.标号(名字): 是给指令或某一存
您可能关注的文档
- 2-16-实验探究验证力的平行四边形定则.ppt
- 微机原理及应用课程复习要点.doc
- 微机原理及接口第二章作业答案.doc
- 微机原理第三章习题.doc
- 微机原理第4章练习题及答案.doc
- 微机原理第五章自测题.doc
- 微机原理答案第一章习题答案.docx
- 微机原理第六章习题答案.doc
- 微机原理试卷6.doc
- 微机原理试卷A答案.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 宝城期货-原油2026年度报告-油海浮沉浪几重,掣鲸博弈破苍穹.pdf VIP
- 学堂在线 雨课堂 学堂云 临床中成药应用 综合考试答案.docx VIP
- 2018年1月13日山东济南事业单位考试《公共基础知识》(客观题部分).docx
- 食品生物技术-绪论.pptx VIP
- 2025年青岛职业技术学院单招笔试英语试题库含答案解析.docx VIP
- 中外建筑史7-近现代建筑.pptx VIP
- 2025年云南省中考生物真题(原卷).pdf
- 高中奥林匹克物理竞赛解题方法集.pdf VIP
- 梁小民西方经济学基础教程(第三版)第01章.ppt VIP
- 小学英语语法代词省公开课一等奖全国示范课微课金奖课件.pptx VIP
原创力文档

文档评论(0)