《汇编语言与接口技术》复习提纲[修订].docx 下载本文

内容发布更新时间 : 2024/6/15 16:25:04星期一 下面是文章的全部内容请认真阅读。

<<汇编语言与接口技术>> (总结)复习提纲

第一部分汇编语言及程序设计

一.基本知识

1. 汇编语言常用的名词术语

指令代码指令机器指令程序汇编指令 汇编语言 汇编程序 汇编语 言源程序 汇编 反汇编 偏移地址 有效地址 物理地址 过程循环 过程 标号 变量名的属性

指令:计算机能接受的最小命令,例如:力n,减,乘,除,转移等

代码指令:与某条指令对应的二进制代码,或指令的数据表示

机器指令程序:代码指令依照某种算法并按照一定语法规则而作有序的排列 汇编指令:汇编语言规定的基本符号,每条机器指令都对应一条符号指令 汇编语言:用符号表示指令的操作码和地址码的程序设计语言,而向机器的 语言,亦称符号语言

汇编程序:把汇编指令翻译成机器指令的系统程序

汇编语言源程序:依据一定的算法并按照语法规则,把汇编指令作冇序的排 列 汇编:将汇编语言译成机器语言 反汇编:将机器语言译成汇编语言 地址

冇效地址冇效地址EA是16位无符号数,表示操作数所在单元到段首距离 即逻辑地址的偏移地址 实际地址

物理地址等于有效地址+段地址存储器中存储单元对应实际地址称物理地 址

过程P254

循环:分类:单重循环和多重循环循环次数已知和未知简单循环和变址循 环

循环程序结构:要有准备、重复、修改、控制四个部分

编制步骤与方法:先编写工作不分,再准备,修改和控制若是多重循 环,先内层循环,后外层

重复前缀

宏定义:用一对伪操作MACRO括起来的一组有独立功能的程序代码(功 能是:

括起一段程序代码,以便调用)

宏引用:在源程序中对经宏定义后的宏指令的调用,用宏指令名实现 宏扩展:是对宏调用的展开,由汇编程序实现。具体耍求是用宏定义体取代 宏

指令名,而且实元取代宏定义中的形式参数/哑元/变元 过程标号

变量名的属性:段属性SEGMENT 位移属性OFFSET 类型属性TYPE (DB1个

字节DW2个字节DD4个字节)

中断:使中央处理器暂时挂起当前正在进行的工作并转向某紧急事件的服 务与

处理程序(该服务与处理程序称为中断服务程序),在执行完中 断服务程序后再返回到被中止的原冇工作处的过程。

或者指计算机的CPU暂吋屮止它正在执行的主程序,转去执行请求 中断的那个外设或事件的中断服务(处理)程序,待处理完毕后,又返 回主程序,紧接被中断处继续执行,这样的一个过程称为中断。

中断源:引起中断的原因或发出中断请求的来源,称为中断源,包拈外设中断 源、故障屮断源、软件屮断源、为调试而设计的中断源

中断矢量表:中断服务程序的地址称为中断矢量,将全部中断矢量集中在1张 表中,这张表称为中断矢量表。

中断向量:屮断源的识别标志,可用来形成相应的屮断服务程序的入口地址 或存放中断服务程序的首地址)称为中断向量。

2. 常用数制 二进制B八进制Q 十进制D | ?六进制H

补码的表示止数的反码补码都等于原码;反码相当于原码符号位不变,其他的 取反;补码是反码加1 BCD码的表示 31D的BCD码是0011 0001

3. 寄存器:名称种类及应用:

通用寄存器8个:数据寄存器(用于存放数据,16位或8位)AX/BX/CX/DX/变

址、指针寄存器(用于存放地址,16位)BP/SP/SUDI

BX——基址寄存器

BP——基址指针寄存器(指明SS屮有效地址) SP——堆栈指针寄存器(指明SS中有效地址) SI——源变址寄存器(字符串操作指令中) DI——目的变址寄存器(字符串操作指令屮)

段寄存器4个:存放段地址,段首址,段基址。16位 取16的倍数,

20位物理地址=段地址X16d+偏移地址(段内地址) CS——代码段寄存器 DS——数据段寄存器 ES——特别段寄存器 SS——堆栈段寄存器

段地址的首地址必须

控制寄存器2个?

IP—指令指针寄存器(存放指令在内存中的偏移地址,并计算卜?一条指令的地 址,与CS合用。指令的物理地址为:CSX10H+IP)

F (Flag) ——状态标志寄存器(记录一条指令执行后的结果状态,入全为0,进 位,溢出等等。)包括:AF——辅助进位标志(低四位向高四位进位或借位)CF ——进位或借位标志

32位/16位: 4. 位)

寻址方式寻址方式种类(32位、16操作数类型 存储器的存放规则

寻址方式种类:固定寻址、立即寻址(注意高字节存放的高地址,低字节存放在 低地址)、寄存器直接寻址(实质指它存放的内容)、存储器直接寻址、寄存器间 接寻址、变址寻址

操作数类型:立即操作数、寄存器操作数、内存操作数 寄存器的存放规则:

5. 代码指令格式:从组成的字节看,由1-6个字节组成 从功能上看共分四个域(字段)8个 操作码操作数地址码

6. 源程序的书写格式及正常结束P63 源程序的书写格式:完整段定义 正常结束

7. 指令系统:操作数搭配的7个规则(p39)

1. 两个操作数要求字长匹配一致。

2?两个操作数不能同为M,不能同为段R (PUSH、POP、MOVS、CMPS除外)。 3. 目的操作数不能取DATAo

4. 十六进制数以字母开头时,需要在前面加0,以示与符号、助记符、变量名、 标

号等区别。

5. 存储器操作数可以是字节、字、双字,类型不确定,需要用PTR说明。 6. 绝大部分指令不用段R (MOV、PUSH、POP除外)。

7. 传送指令绝大部分不影响标志位(除SAHF、POPF外)。主耍是算术、逻辑

运算指令影响标志位。

2. 常用数制二进制八进制 十进制 十六进制 补码的表示BCD码的表示 3. 寄存器:名称种类及应用(32位、16位) 8. 常用伪指令 -l.Mov Ax , Bx 经过汇编后变成机器代码指令

机器代码指令经过反汇编后 Mov Ax, Bx ?如何用16位的地址访问期间1M空间

I)S*10II + EA 实际地址 段地址 冇效地址

Data Segment A DB ......

OFFSET A是相对Data的偏移地址

B Proc B Endp

?用MACRO/ENDM括起一段程序 ____ 宏定义 在用到的地方写上宏名—宏调用 如:A MACRO B Proc

ENDM B Endp

汇编时,宏定义体占用内存空间多,运算快. 而CALL节省空间,占用时间多

因为CALL B之前把下-?条指令的有效地址入栈,再转去执行B,执行完又把断 点出栈,继续执行主程序?所以花时间,速度慢. 2. 二进制八进制十进制十六进制的相互转换.

3. 寄存器分为三大类:通用寄存器、段寄存器 控制寄存器Flag

4. 7种寻址方式:种类;立即数、寄存器寻址不需要访问内存,变量名是访问存;熟练掌握常用寻址方式。 一?1 ?汇编指令(如卜?所示)

标号: 操作码 数据1,数据2;注释 AGAIN: Mov ax, bx

伪指令(如下所示) 名称操作码 AA Segment

注:标号一定要有,表示转移地址JMP AGAIN,而名称不一定有

4.程序结束,返回DOS指令

Mov AH, 4Ch

Int 21H

5. 汇编常用指令:

ADDSUB、 MOV 、 .DIV、 SHR

SI 、 ROL、

、 SAR、 RCL等等 6. 常用伪指令 IL、

SAL、

Segment/ENDS

DB/DW

PROC/ENDP EQU

MACRO/ENDM ASSUME $

END

二程序设计

1. 传送程序

按传送内容分:

MOV PUSH POP XCIIG XLAT ;传送数据

2. 算术运算程序(+ - * /)

二进制运算:盲接执行相应指令(冇符号数、无符号数)

3. 程序设计的技巧(第3?3、3.4、3.5、3. 6节)(3.5.3除外)

(第3. 4节)分支程序(例3. 7除外) 比较无符号数的大小 号数的大小

标号:比较指令无条件转移 条件转移 (第3.5节)循环程序(3.5.3除外)

迭代指令:LOOP 概念:单重循环 多重循环 简单、变址

(第3. 6节)子程序设计(3. 6. 5除外) E(第十三章)过程过程的定义、构成、应用 三DOS的内部调用

01H 02H 09H OAH

01:从键盘输入一个字符并回显在屏幕上 02:显示一个字符 09:显示字符串

0A:输入字符到缓冲区(ds:dx=缓冲区首址)

比较有符

四.题型

改正指令简答

阅读程序设计主要程序段/完整程序 第二部分接口技术

一.内容

概念、术语、原理、工作方法;芯片内部结构、外部引脚 二应用

1.CPU外部引脚、最小组态;(引脚定义见课本P100) 2?输入输出数据传送方式:无条件、查询、屮断、DMA;