西安电子科技大学:《微机原理与接口技术》课程教学资源(PPT课件讲稿)第四章 汇编语言程序设计(主讲:王晓甜)

第四章 汇编语言 程序设计 成毛子种大字任课教师王晚甜 X|D粪 N UNIVERSITY xtwang@mailxidian.edu.cn
第四章 汇编语言 程序设计 xtwang@mail.xidian.edu.cn 任课教师:王晓甜

本章要点 xtwang@mail.xidian.edu.cn 汇编语言程序设计基础 2>源程序的汇编、链接与调试 分支程序的设计 4 循环程序的设计 5 子程序的设计 6 综合程序的设计 历埤毛孑技大
xtwang@mail.xidian.edu.cn 本章要点 1 汇编语言程序设计基础 2 源程序的汇编、链接与调试 3 分支程序的设计 4 循环程序的设计 5 子程序的设计 6 综合程序的设计

1汇编语言程序设计基础 xtwang@mail.xidian.edu.cn 算法 所谓算法,简单地说就是计算机能够实现的有限的解题 步骤。我们知道,计算机只能进行最基本的算术运算和逻 辑运算,要完成较为复杂的运算和控制操作,必须选择合 适的算法,这是正确编程的基础 若题目涉及到某种运算,则必须写出适合程序设计的正 确算法,若题目要完成的功能未涉及到运算,也要写出编 程思想。 历埤毛孑技大
xtwang@mail.xidian.edu.cn 1.汇编语言程序设计基础 算法 所谓算法,简单地说就是计算机能够实现的有限的解题 步骤。我们知道,计算机只能进行最基本的算术运算和逻 辑运算,要完成较为复杂的运算和控制操作,必须选择合 适的算法,这是正确编程的基础。 若题目涉及到某种运算,则必须写出适合程序设计的正 确算法,若题目要完成的功能未涉及到运算,也要写出编 程思想

1汇编语言程序设计基础 xtwang@mail.xidian.edu.cn 4.4.1程序设计的基本过程 、程序设计的一般步骤 汇编语言程序设计基本上与高级语言程序设计一样,一般步骤 1.分析问题并抽象出数学模型。 2.确定最佳算法。 3.画出程序结构框图和流程图。 4.合理分配内存工作单元和寄存器,并了解O接口地址。 5.编程并调试。(有时需要用注释行说明程序,便于阅读和修改。 二、评价程序质量的标准 令模块化设计方法 1.合理组织数据,发挥存贮器、Reg的作用。“自顶向下,逐 2.程序逻辑结构好,便于二次开发 步细化” 3.可读性强。 ◇结构化编码方法 4.高可靠性和可维护性。 顺序、分支、循 环三种基本结构 5.效率高(代码少)
xtwang@mail.xidian.edu.cn 1.汇编语言程序设计基础 4.4.1 程序设计的基本过程 一、程序设计的一般步骤 汇编语言程序设计基本上与高级语言程序设计一样,一般步骤: 1.分析问题并抽象出数学模型。 2.确定最佳算法。 3.画出程序结构框图和流程图。 4.合理分配内存工作单元和寄存器,并了解I/O接口地址。 5.编程并调试。(有时需要用注释行说明程序,便于阅读和修改。) 二、评价程序质量的标准 1.合理组织数据,发挥存贮器、Reg的作用。 2.程序逻辑结构好,便于二次开发。 3.可读性强。 4.高可靠性和可维护性。 5.效率高(代码少)。 ◆模块化设计方法 ➢“自顶向下,逐 步细化” ◆结构化编码方法 ➢顺序、分支、循 环三种基本结构

1汇编语言程序设计基础 xtwang@mail.xidian.edu.cn 编写程序 采用汇编语言编写程序应注意以下几个问题: (1)必须详细了解CP∪的编程模型、指令系统、 寻址方式及相关伪指令; (2)必须进行存储空间和工作单元的合理分配; (3)多次使用的程序段可采用子程序或宏指令; (4)尽可能用标号或变量来代替绝对地址和常数; 历忠毛子件技大
xtwang@mail.xidian.edu.cn 1.汇编语言程序设计基础 编写程序 采用汇编语言编写程序应注意以下几个问题: (1)必须详细了解CPU的编程模型、指令系统、 寻址方式及相关伪指令; (2)必须进行存储空间和工作单元的合理分配; (3)多次使用的程序段可采用子程序或宏指令; (4)尽可能用标号或变量来代替绝对地址和常数;

§1.1汇編语言基本元橐
6 §1.1 汇编语言基本元素

1.1.1元编语言的语坷格式 由汇编语言编写的源程序是由许多语句(也可称 为汇编指令)组成的。每个语句由1~4个部分组成, 其格式是: 标识符]指令助记符{操作数I;注解 其中用方括号括起来的部分,可以有也可以 没有。每部分之间用空格(至少一个)分开,一行最 多可有132个字符
7 由汇编语言编写的源程序是由许多语句(也可称 为汇编指令)组成的。每个语句由1~4个部分组成, 其格式是: [标识符] 指令助记符 [操作数][;注解] 其中用方括号括起来的部分,可以有也可以 没有。每部分之间用空格(至少一个)分开,一行最 多可有132个字符。 1.1.1 汇编语言的语句格式

(1)标识符:给指令成某一存值单元地所起的名字。 标识符由下列字符组成:(以字母或圆点开头) 字母:A~Z,a~G;数字:09;特殊字符:?.@_S 数字不能作标识符的第一个字符,而仅能 作标识符的第一个字符,标识符最长为31个字符。 标识符后跟冒号时表示标号,代表该行指令的起 始地址,标号可以被转移、调用指令直接引用 标识符后不带冒号时表示变量 伪指令前的标识符不加冒号
8 (1)标识符:给指令或某一存储单元地址所起的名字。 标识符由下列字符组成:(以字母或圆点开头) 字母: A~Z, a~z; 数字: 0~9; 特殊字符: ? . @ _ $ 数字不能作标识符的第一个字符,而. 仅能 作标识符的第一个字符,标识符最长为31个字符。 标识符后跟冒号时表示标号,代表该行指令的起 始地址, 标号可以被转移、调用指令直接引用。 标识符后不带冒号时表示变量。 伪指令前的标识符不加冒号

(2)指令助记符 表示不同操作的指父,可以是80868088的指令助 记符,也可以是伪指令。 (3)操作数 起指令抛行的对象。依指令的要求,可能有一个 两个、没有或者多个。 例如:RET;无操作数 COUNT:NCCX;一个操作数 MOV CX,DI;两个操作数 ADD AX,[BP十4;第二个操作数为表达式 (4)注释 该项可有可无,是为源程序所加的注解,用于提高 程序的可读性
9 (2)指令助记符 表示不同操作的指令,可以是8086/8088的指令助 记符,也可以是伪指令。 (3)操作数 是指令执行的对象。依指令的要求,可能有一个、 两个、没有或者多个。 例如: RET ;无操作数 COUNT: INC CX ;一个操作数 MOV CX,DI ;两个操作数 ADD AX,[BP十4] ;第二个操作数为表达式 (4)注释 该项可有可无,是为源程序所加的注解,用于提高 程序的可读性

1.1.2元编语言术符 汇编语言运算符:是编程序在编砂计算的 与运算指令不同,指令是在程序运行时计算的 1、算术运算符、逻辑运算符、关系运算符 如:+、一、×、/、AND、OR、LT等 MOV AX, DI+BX ADD AX. FIRST+1 MOV AX,((choice LT 20)AND 5) OR((choice GE 20)AND 6)
10 汇编语言运算符:是汇编程序在汇编时计算的, 与运算指令不同,指令是在程序运行时计算的。 1、算术运算符、逻辑运算符、关系运算符 如:+、-、×、/ 、 AND、OR、LT等 MOV AX, [DI+BX] ADD AX, FIRST+1 MOV AX, ((choice LT 20) AND 5) OR ((choice GE 20) AND 6 ) 1.1.2 汇编语言运算符
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 厦门大学计算机科学系:《大数据技术原理与应用》课程教学资源(PPT课件)第12章 数据可视化.ppt
- 《计算机操作系统》课程教学资源(PPT讲稿)Windows 2003的安全.ppt
- 《计算机图形学》课程教学资源(PPT课件讲稿)Chapter 5 Attributes of Graphics Primitives.pptx
- 《计算机原理及应用》课程教学资源(PPT课件讲稿)第9章 单片机I/O接口扩展技术.pptx
- 《Access 2013数据库技术及应用》课程教学资源(PPT课件讲稿)第12章 VBA模块设计.ppt
- 清华大学:智能弹性重叠网关键技术研究(PPT讲稿,指导老师:李衍达).ppt
- 中国科学技术大学:《数据结构及其算法》课程PPT教学课件(Data Structure and Algorithm)第4章 栈和队列(主讲:刘东).pptx
- 北京科技大学:《物联网工程》课程教学资源(PPT课件讲稿)课程介绍.ppt
- 《电脑组装与维护实例教程》教学资源(PPT课件讲稿)第4章 输入输出设备介绍及选购.ppt
- 深圳大学:Learning 3D mesh segmentation and labeling(PPT讲稿).ppt
- 沈阳理工大学:《大学计算机基础》课程教学资源(PPT课件讲稿)第3章 办公软件 3.2 电子表格软件Excel 2010.ppt
- 对外经济贸易大学:《电子商务概论》期末考试试卷(部分含答案).pptx
- 清华大学:Pass-Join(A Partition based Method for Similarity Joins).pptx
- 《信息安全概论》课程教学资源(PPT课件讲稿)第九章 计算机软件的安全性.ppt
- 合肥工业大学:《数据库系统》课程教学资源(PPT课件讲稿)数据库编程 ACCESS、MYSQL、Oracle(张国富)第一章 绪论.ppt
- 白城师范学院:《数据库系统概论 An Introduction to Database System》课程教学资源(PPT课件讲稿)第四章 数据库安全性.pptx
- 清华大学:A Heterogeneous Accelerator Platform for Multi-subject Voxel-based Brain Network Analysis(PPT讲稿).pptx
- 南京理工大学:《数据挖掘与处理 Data Mining and Data Processing》课程教学资源(PPT课件讲稿)第一章 数据科学与数据挖掘(张正军).ppt
- 香港浸会大学:《Data Communications and Networking》课程教学资源(PPT讲稿)Chapter 2 Protocol Architecture - TCP/IP model and OSI Model.ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第十章 文件、外部排序与外部搜索.ppt
- 计算机维护与维修(PPT课件讲稿)第十二章 笔记本电脑维护维修.ppt
- 《C语言程序设计》课程电子教案(PPT教学课件)第三章 分支结构.ppt
- 电子科技大学:《面向对象程序设计语言C++》课程教学资源(PPT课件讲稿)第五章 构造数据类型.ppt
- 武汉科技大学中南分校:Windows 2000/XP网络组建与系统管理(系统安装,李燕).ppt
- 《The C++ Programming Language》课程教学资源(PPT课件讲稿)Lecture 06 OOP with Templates.ppt
- 厦门大学:《分布式数据库》课程教学资源(PPT课件讲稿)专题一 分布式数据库介绍.ppt
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第6章 Data-Level Parallelism in Vector, SIMD, and GPU Architectures.pptx
- 清华大学:无线网和移动网(PPT课件讲稿)Mobile and wireless network.pptx
- 广西医科大学:《计算机网络 Computer Networking》课程教学资源(PPT课件讲稿)Chapter 02 Network Classification.pptx
- 《电脑组装与维护实例教程》教学资源(PPT课件讲稿)第5章 多媒体设备介绍及选购.ppt
- 《网络算法学》课程教学资源(PPT课件讲稿)第三章 实现原则.ppt
- 《数据结构》课程教学资源:实践教学大纲.doc
- 《数据结构》课程教学资源(PPT课件讲稿)第七章 图 Graph.ppt
- 四川大学:《操作系统 Operating System》课程教学资源(PPT课件讲稿)Chapter 3 Process Description and Control 3.4 Process Control 3.5 Execution of the Operating System 3.6 Unix SVR4 Process Management 3.7 Linux Process management system calls.ppt
- 大连理工大学:《计算机网络》课程教学资源(PPT课件讲稿)Chapter 2 应用层 application layer.ppt
- 3D Reconstruction from Images:Image-based Street-side City Modeling.ppt
- 《数据结构》课程教学资源(PPT课件讲稿)第七章 图及其应用.ppt
- 香港城市大学:基序检测的随机化算法(PPT讲稿)Randomized Algorithm for Motif Detection.ppt
- 《计算机组装与维护》课程教学资源(PPT课件讲稿)第9章 BIOS设置(设置BIOS).ppt
- 《Introduction to Java Programming》课程PPT教学课件(Sixth Edition)Chapter 16 Applets and Multimedia.ppt