1、1微型计算机原理微型计算机原理与汇编语言程序设计与汇编语言程序设计(第二版)(第二版)2121世纪高职高专新概念规划教材世纪高职高专新概念规划教材2 本章教学内容本章教学内容l微型计算机的发展过程和应用特点微型计算机的发展过程和应用特点l微型计算机的特点及性能指标微型计算机的特点及性能指标l微型计算机的硬件结构及功能微型计算机的硬件结构及功能l微型计算机系统组成微型计算机系统组成第第1章章微型计算机概述微型计算机概述 3 1.1 微型计算机的发展及应用微型计算机的发展及应用 1.1.1 计算机的发展历史计算机的发展历史1.第一台电子计算机第一台电子计算机 ENIAC(电子数字积分计算机电子数字
2、积分计算机):):存储容量存储容量小,易出现故障,可靠性差。小,易出现故障,可靠性差。2.冯冯诺依曼结构计算机诺依曼结构计算机l二进制数表示数据和指令。二进制数表示数据和指令。l指令和数据存储在存储器。指令和数据存储在存储器。l运算器、控制器、存储器、输入设备、输出设备等运算器、控制器、存储器、输入设备、输出设备等组成硬件。组成硬件。第第1章章4第第1章章3.计算机内部信息计算机内部信息流流双线表示数据信息流;单线表示控制信息流双线表示数据信息流;单线表示控制信息流。5 1.1.2 微处理器的产生和发展微处理器的产生和发展l将运算器和控制器等集成在大规模集成电路芯片将运算器和控制器等集成在大规
3、模集成电路芯片上作为微处理器(上作为微处理器(CPU)。)。l以微处理器为核心,配置存储器、以微处理器为核心,配置存储器、I/O接口电路接口电路和系统总线等构成微型计算机。和系统总线等构成微型计算机。l20世纪世纪70年代初美国硅谷诞生第一片微处理器。年代初美国硅谷诞生第一片微处理器。第第1章章6l第一代:第一代:4位和位和8 位低档微处理器位低档微处理器l第二代:第二代:8位中高档微处理器位中高档微处理器l第三代:第三代:16位微处理器位微处理器l第四代:第四代:32位微处理器位微处理器l第五代:第五代:32位高档微处理器位高档微处理器l第六代:第六代:64位微处理器位微处理器第第1章章发展
4、经历了发展经历了6代:代:71.1.3 微型计算机的应用微型计算机的应用1.科学计算科学计算2.数据处理数据处理3.计算机辅助技术计算机辅助技术4.过程检测与控制过程检测与控制5.人工智能人工智能6.计算机网络应用计算机网络应用第第1章章81.2 微型计算机的特点与性能指标微型计算机的特点与性能指标 1.2.1微型计算机特点微型计算机特点(1)功能强,可靠性高)功能强,可靠性高(2)价格低廉,结构灵活,适应性强)价格低廉,结构灵活,适应性强(3)体积小,重量轻,使用维护方便)体积小,重量轻,使用维护方便第第1章章91.2.2 常用术语和性能指标常用术语和性能指标(1)位)位(2)字节)字节(3
5、)字)字(4)字长)字长(5)主频)主频(6)访存空间)访存空间(7)指令数)指令数(8)基本指令执行时间)基本指令执行时间(9)可靠性)可靠性(10)兼容性)兼容性(11)性能价格比)性能价格比第第1章章101.3 微型计算机的硬件结构及其功能微型计算机的硬件结构及其功能1.3.1 微型计算机硬件结构及其信息交换微型计算机硬件结构及其信息交换l如图如图1-2所示。所示。l由由微处理器、主存储器、辅助存储器、系微处理器、主存储器、辅助存储器、系统总线、统总线、I/O接口电路、输入接口电路、输入/输出设备输出设备等部件组成。等部件组成。第第1章章11第第1章章121.3.2 微型计算机硬件模块功
6、能分析微型计算机硬件模块功能分析1.微处理器:微机核心部件,负责协调、管理和控微处理器:微机核心部件,负责协调、管理和控制各部件有序工作。制各部件有序工作。2.主存储器:存放计算机工作中需要操作的数据和主存储器:存放计算机工作中需要操作的数据和程序。分随机存储器(程序。分随机存储器(RAM)和只读存储器)和只读存储器(ROM)。)。3.I/O接口电路:完成微机与外部设备间信息交换。接口电路:完成微机与外部设备间信息交换。4.主机板:由主机板:由CPU插座、芯片组、内存插槽、系插座、芯片组、内存插槽、系统统BIOS、CMOS、总线扩展槽、串、总线扩展槽、串/并行接口、各并行接口、各种跳线和辅助电
7、路等组成。种跳线和辅助电路等组成。第第1章章13第第1章章145.辅助存储器:设置在主机外部,存储容量大,辅助存储器:设置在主机外部,存储容量大,价格低,存取速度较慢。价格低,存取速度较慢。6.输入输入/输入设备:负责微机系统与外部进行输入设备:负责微机系统与外部进行通信联系。常用有键盘、鼠标、显示器、打印通信联系。常用有键盘、鼠标、显示器、打印机和扫描仪等。机和扫描仪等。第第1章章151.4 微型计算机系统组成微型计算机系统组成1.4.1 微型计算机系统的基本组成示意微型计算机系统的基本组成示意l由硬件和软件两大部分组成。由硬件和软件两大部分组成。l如图如图1-8所示。所示。第第1章章161
8、71.4.2 微型计算机的常用软件微型计算机的常用软件 计算机软件包括系统运行所需的各计算机软件包括系统运行所需的各种程序、数据、文件有关资料,分系统软种程序、数据、文件有关资料,分系统软件和应用软件。件和应用软件。l系统软件支持应用软件的开发与运行,系统软件支持应用软件的开发与运行,如操作系统和程序设计语言如操作系统和程序设计语言。l应用软件为用户解决某种应用问题。应用软件为用户解决某种应用问题。l软件系统组成结构如图软件系统组成结构如图1-9所示。所示。第第1章章18第第1章章191.4.3 软硬件之间的相互关系软硬件之间的相互关系1.硬件和软件相互依存硬件和软件相互依存2.硬件和软件无严
9、格界线硬件和软件无严格界线3.硬件和软件协同发展硬件和软件协同发展4.固件固件5.软件的兼容性软件的兼容性第第1章章20小结小结本章小结本章小结l微机系统包括硬件和软件。微机系统包括硬件和软件。l硬件由硬件由CPU、存储器、系统总线、接口电、存储器、系统总线、接口电路及路及I/O设备等部件组成。设备等部件组成。l软件由各种程序和数据组成。软件由各种程序和数据组成。l要要熟悉微机系统组成及工作原理,理解硬熟悉微机系统组成及工作原理,理解硬件和软件各主要模块功能和在系统中所处件和软件各主要模块功能和在系统中所处地位。地位。21本章内容结束本章内容结束 谢谢 谢谢 !第第1章章22 本章教学内容本章
10、教学内容l计算机中数制的基本概念及其表示计算机中数制的基本概念及其表示l不同数制之间的相互转换不同数制之间的相互转换l无符号数和带符号数的表示方法无符号数和带符号数的表示方法lASCII码和码和BCD码的相关概念及其应用码的相关概念及其应用 第第2章章计算机中的数据表示计算机中的数据表示 23第第2章章计算机中的信息表示计算机中的信息表示 计计算算机机只只能能识识别别和和处处理理以以二二进进制制编码形式表现的数据。编码形式表现的数据。计算机内部数据分为:计算机内部数据分为:l数值型数据数值型数据l非数值型数据非数值型数据24第第2章章2.1 计算机中的数制及其转换计算机中的数制及其转换 1.数
11、制基本概念数制基本概念l数码数码;l基数基数;l逢基数进位;逢基数进位;l进位计数制进位计数制;l“位权位权”,其值等于基数的若干次幂。,其值等于基数的若干次幂。25第第2章章2.计算机中常用的进位计数制计算机中常用的进位计数制26 3.采用两种方法表达采用两种方法表达(1)在数字后加写英文字母作为标识。)在数字后加写英文字母作为标识。如:如:B表示二进制数;表示二进制数;H表示十六进制数。表示十六进制数。11010011B;2A86H(2)在数字括号外加计数制下标。)在数字括号外加计数制下标。(11010011)2;(2A86)16第第2章章27 2.1.2 数制之间的转换数制之间的转换第第
12、2章章28 2.1.2 数制之间的转换数制之间的转换第第2章章29 2.1.2 数制之间的转换数制之间的转换第第2章章30 2.1.2 数制之间的转换数制之间的转换第第2章章31 2.1.2 数制之间的转换数制之间的转换第第2章章32 2.1.2 数制之间的转换数制之间的转换第第2章章33 2.1.2 数制之间的转换数制之间的转换第第2章章34 2.1.2 数制之间的转换数制之间的转换第第2章章35各种计数制之间的转换方法各种计数制之间的转换方法 第第2章章36第第2章章2.2 计算机中数值数据的表示计算机中数值数据的表示 2.2.1 基本概念基本概念l计算机内部表示二进制数的方法称数值编码。
13、计算机内部表示二进制数的方法称数值编码。l将将数及其符号在机器中数值化,称机器数。数及其符号在机器中数值化,称机器数。l机器数所代表的数称为该机器数的真值。机器数所代表的数称为该机器数的真值。完整表示一个机器数,应考虑三个因素:完整表示一个机器数,应考虑三个因素:l机器数的范围机器数的范围l机器数的符号机器数的符号l机器数中小数点的位置机器数中小数点的位置37第第2章章2.2 计算机中数值数据的表示计算机中数值数据的表示 1.无符号数无符号数机器字长为机器字长为n时,无符号数表示范围:时,无符号数表示范围:0 X 2n1若运算结果超出该范围产生溢出。若运算结果超出该范围产生溢出。8位字长:位字
14、长:00H FFH(0-255)16位字长:位字长:0000H FFFFH(0-65535)38第第2章章定点数表示:定点数表示:39第第2章章浮点数表示:浮点数表示:40第第2章章 2.2.2带符号数的原码、反码、补码:带符号数的原码、反码、补码:(1)原原码码:正正数数符符号号用用”0”表表示示,负负数数符符号号用用“1”表示。表示。41第第2章章(2)反反码码:对对二二进进制制数数逐逐位位求求反反。正正数数反反码码与与原原码相同,负数反码为原码除符号位外各位取反。码相同,负数反码为原码除符号位外各位取反。42第第2章章(3)补码补码:正数补码与原码相同,负数补码为反:正数补码与原码相同,
15、负数补码为反码末位加码末位加1。43第第2章章44第第2章章 补码与真值间转换:补码与真值间转换:45第第2章章 补码与真值间转换:补码与真值间转换:46第第2章章 补码与真值间转换:补码与真值间转换:47第第2章章 2.2.3 带符号数加减运算带符号数加减运算 48第第2章章2.3 字符编码字符编码 1.ASCII码码l ASCII码码(美美国国信信息息交交换换标标准准代代码码):大大小小写英文字母、数字、专用字符、控制字符等。写英文字母、数字、专用字符、控制字符等。l 7位位ASCII码码可可表表示示27128种种字字符符。用用一一个个字字节节(8位位二二进进制制数数)对对字字符符编编码码
16、,最最高高位位为奇偶校验位,判别数码传送是否正确。为奇偶校验位,判别数码传送是否正确。49第第2章章50第第2章章51第第2章章 2.BCD码码l“二二十十进进制制编编码码”,常常用用8421-BCD码码,用用4位位二二进进制制数数表表示示1位位十十进制数进制数压缩压缩BCD码。码。l非非压压缩缩BCD码码采采用用8位位二二进进制制数数表表示一位十进制数。示一位十进制数。52第第2章章53小结小结本章小结本章小结l将数及其符号数值化表示方法称机器数。将数及其符号数值化表示方法称机器数。l完整机器数需考虑数的范围、符号和小数点完整机器数需考虑数的范围、符号和小数点位置。位置。l带符号数有原码、反
17、码和补码三种表示方法。带符号数有原码、反码和补码三种表示方法。lASCII码用一个字节中码用一个字节中7位对字符编码,可表位对字符编码,可表示示128种字符。种字符。lBCD码专门解决二进制数表示十进制数问题。码专门解决二进制数表示十进制数问题。54 本章内容结束本章内容结束 谢谢 谢谢 !第第2章章55 本章教学内容本章教学内容l8086微处理器的内部组成和寄存器结构微处理器的内部组成和寄存器结构l8086微处理器的外部引脚特性和工作方式微处理器的外部引脚特性和工作方式l8086微处理器的存储器和微处理器的存储器和I/O组织组织l8086工作方式及总线操作工作方式及总线操作l8086中断系统
18、及其应用中断系统及其应用l高档微处理器的典型结构和各部件功能高档微处理器的典型结构和各部件功能第第3章章典型微处理器及其体系结构典型微处理器及其体系结构 56第第3章章 3.1 8086微处理器内外部结构微处理器内外部结构 概述概述:l16位位微微处处理理器器,HMOS工工艺艺制制造造,芯芯片片集集成成2.9万只晶体管,万只晶体管,+5V电源;电源;l40条引脚条引脚,双列直插式封装;,双列直插式封装;l16条数据线条数据线,字长,字长16位;位;l20条地址线条地址线,寻址空间,寻址空间1MB(220B););l时钟频率时钟频率510MHz;l基本指令执行时间基本指令执行时间0.30.6s。
19、57 3.1.1 8086微处理器内部结构微处理器内部结构 内部两个逻辑单元:内部两个逻辑单元:l执行部件执行部件EU(Execution Unit)负责指令译码、执行和数据运算。负责指令译码、执行和数据运算。l总线接口部件总线接口部件BIU (Bus Interface Unit)从内存取指令送指令队列;负责内从内存取指令送指令队列;负责内部数据与外部的信息传递和交换。部数据与外部的信息传递和交换。第第3章章58第第3章章59 8086CPU供编程使用有供编程使用有14个个16位位寄存器,按用途分为:寄存器,按用途分为:l通用寄存器通用寄存器8个个l控制寄存器控制寄存器2个个l段寄存器段寄存
20、器4个个第第3章章3.1.2 8086寄存器结构寄存器结构60第第3章章61第第3章章62 FLAG反反映映指指令令执执行行结结果果或或控控制制指指令令执执行行形形式。共有式。共有9个可用标志位。个可用标志位。l6个状态标志个状态标志l3个控制标志个控制标志第第3章章(2)标志寄存器)标志寄存器FLAG63各标志各标志位含义位含义和特点和特点64第第3章章 3.段寄存器段寄存器(4个个16位寄存器位寄存器)65 8086CPU有有40条引脚,分以下条引脚,分以下5类:类:1.地址地址/数据总线(数据总线(16条)条)2.地址地址/状态总线(状态总线(4条)条)3.控制总线(控制总线(9条)条)
21、4.电源线和地线(电源线和地线(3条)条)5.其它控制线(其它控制线(8条)条)第第3章章 3.1.3 8086外部引脚功能外部引脚功能66第第3章章67 3.2.1 存储器组织存储器组织 存储器内部按存储器内部按“字节字节”组织组织,两相邻字节,两相邻字节为一个为一个“字字”。8086将将1MB存储空间分成存储空间分成两个两个512KB存储体存储体.第第3章章3.2 存储器和存储器和I/O组织组织68第第3章章6970l20位地址线寻址位地址线寻址1MB(220B)存储空间;)存储空间;l16位位寄寄存存器器只只寻寻址址64KB(216B);整整个个存存储储空空间间分分成成若若干干逻逻辑辑段
22、段,每每段段最最大大容容量量64KB;lCPU允允许许各各逻逻辑辑段段在在整整个个存存储储空空间间中中浮浮动动,可可紧紧密密相相连连,也也可可相相互互重重叠叠,还还可可分分开开一一段段距离,如图距离,如图3-10所示。所示。第第3章章 2.存储器分段存储器分段71第第3章章72第第3章章3.存储器地址存储器地址l段地址段地址l偏移地址偏移地址l有效地址有效地址l逻辑地址逻辑地址l物理地址物理地址 物理地址物理地址PA=段地址段地址10H偏移地址偏移地址 73第第3章章74第第3章章4.专用和保留的存储器单元专用和保留的存储器单元(1)00000H003FFH(共(共1KB)存放中断向量表存放中
23、断向量表(2)B0000HB0FFFH(共(共4KB)单色显示器的视频缓冲区单色显示器的视频缓冲区(3)B8000HBBFFFH(共(共16KB)彩色显示器的视频缓冲区彩色显示器的视频缓冲区(4)FFFF0HFFFFFH(共(共16B)存放一条无条件转移指令,系统上存放一条无条件转移指令,系统上电或复位时自动跳转到初始化程序电或复位时自动跳转到初始化程序75第第3章章76(1)统统一一编编址址:I/O端端口口地地址址在在存存储储器器中中,每每个个端端口口占占一一个个存存储储单单元元地地址址。CPU访访存存指指令令和和寻寻址方式都可用。址方式都可用。(2)独独立立编编址址:单单独独编编址址构构成
24、成I/O空空间间。采采用用专专门门I/O指指令令(IN和和OUT)和和接接口口控控制制信信号号访访问问端口。端口。第第3章章 3.2.2 I/O端口组织端口组织773.3 8086微处理器的总线周期和操作时序微处理器的总线周期和操作时序第第3章章3.3.1 8284A时钟信号发生器时钟信号发生器 8284A是是Intel公司公司专为专为8086设设计计的的时钟时钟信号信号发发生器,能生器,能产产生生8086所需所需的系的系统时钟统时钟信号,可采用石英晶体或信号,可采用石英晶体或TTL脉冲脉冲发发生器作振生器作振荡荡源。源。78第第3章章79第第3章章3.3.2 8086微处理器的总线周期微处理
25、器的总线周期l8086经外部总线对存储器或经外部总线对存储器或I/O端口端口进行一次信息输入或输出过程称总线进行一次信息输入或输出过程称总线操作。操作。l执行该操作所需要时间称总线周期执行该操作所需要时间称总线周期。l8086总线周期至少由总线周期至少由4个时钟周期组个时钟周期组成。每个时钟周期称成。每个时钟周期称T状态,用状态,用T1、T2、T3和和T4表示。表示。80第第3章章81第第3章章3.3.3 8086微处理器最小微处理器最小/最大工作方式最大工作方式1.最小工作方式最小工作方式l8086的的33引脚接引脚接+5V,系统处于最小工作方式。,系统处于最小工作方式。l系统中只有系统中只
26、有8086一个微处理器。一个微处理器。2最大工作方式最大工作方式l把把8086的的33引脚接地,系统处于最大工作方式。引脚接地,系统处于最大工作方式。l包含有两个或多个微处理器。其中有一个主处理器包含有两个或多个微处理器。其中有一个主处理器8086,其他处理器称协处理器。,其他处理器称协处理器。82第第3章章3.3.4 8086微处理器的操作时序微处理器的操作时序8086主要操作有:主要操作有:l系统复位和启动操作。系统复位和启动操作。l总线操作。总线操作。l暂停操作。暂停操作。l中断响应操作。中断响应操作。l总线保持或总线请求总线保持或总线请求/允许操作。允许操作。83第第3章章3.4 80
27、86中断系统中断系统3.4.1 8086中断系统的结构中断系统的结构 1.中断源中断源(1)一般输入)一般输入/输出设备;输出设备;(2)数据通道;)数据通道;(3)实时时钟;)实时时钟;(4)故障信号;)故障信号;(5)软件中断。)软件中断。84第第3章章2.8086中断系统结构中断系统结构l8086系统有简单而灵活的中断系统系统有简单而灵活的中断系统;l每个中断都有中断类型码供每个中断都有中断类型码供CPU识别识别;l最多可处理最多可处理256种不同中断类型种不同中断类型,对对应类型号为应类型号为0255。l8086中断系统结构如图中断系统结构如图3-19所示所示。85第第3章章86第第3
28、章章3.中断源的识别中断源的识别(1)软件识别)软件识别查询法查询法(2)硬件识别)硬件识别中断矢量中断矢量87第第3章章3.4.2 中断类型与中断向量表中断类型与中断向量表(1)内部中断)内部中断 由由CPU执行某些指令引起。执行某些指令引起。1)除法出错,类型号)除法出错,类型号n=02)单步中断,类型号)单步中断,类型号n=13)INTO溢出中断,类型号溢出中断,类型号n=44)中断指令)中断指令INT n(2)外部中断)外部中断 由由CPU外部硬件电路发出的电信号引起。外部硬件电路发出的电信号引起。1)非屏蔽中断)非屏蔽中断2)可屏蔽中断)可屏蔽中断 88第第3章章8086中断向量表中
29、断向量表l中断服务程序入口地址为中断向量。中断服务程序入口地址为中断向量。l每个中断向量为每个中断向量为4字节,占用字节,占用4个连续存储单元,低个连续存储单元,低16位存中断服务程序入口地址偏移地址(位存中断服务程序入口地址偏移地址(IP),高),高16位存中断服务程序入口位存中断服务程序入口地址段地址(地址段地址(CS)。)。l256种中断类型对应中断向量占用种中断类型对应中断向量占用1KB存储空间。存储空间。l中断向量计算:中断向量计算:中断向量指针中断向量指针=中断类型号中断类型号4。89第第3章章90第第3章章3.4.3 中断响应中断响应1.响应非屏蔽中断请求响应非屏蔽中断请求CPU
30、执行完现行指令后就立即响应。执行完现行指令后就立即响应。2.响应可屏蔽中断中断的条件响应可屏蔽中断中断的条件须满足以下须满足以下4个条件个条件:(1)无总线请求和非屏蔽中断请求)无总线请求和非屏蔽中断请求(2)CPU允许中断,即允许中断,即IF=1(3)CPU执行完现行指令执行完现行指令(4)当前中断级别最高)当前中断级别最高 91第第3章章3.4.4 中断处理过程中断处理过程1.中断请求中断请求2.中断响应中断响应3.中断处理中断处理4.中断返回中断返回92第第3章章3.5 高档微处理器简介高档微处理器简介93第第3章章94第第3章章95小结小结本章小结本章小结l8086从功能结构上可划分为
31、执行部件和总线接口部件从功能结构上可划分为执行部件和总线接口部件。l8086有有14个个16位寄存器,分通用寄存器、段寄存器、指针和标志寄存器。位寄存器,分通用寄存器、段寄存器、指针和标志寄存器。l8086存储器分段管理存储器分段管理,将将1MB存储空间分为若干个存储空间分为若干个64KB不同段,由不同段,由4个段寄存器引导个段寄存器引导。l要理解要理解8086引脚信号功能及应用特点引脚信号功能及应用特点;熟悉熟悉8086总线操作和时序工作原理总线操作和时序工作原理;熟悉;熟悉8086系统最大和最小工作模式特点及应用系统最大和最小工作模式特点及应用;掌握掌握中断中断系统的特点和应用。系统的特点
32、和应用。96 本章内容结束本章内容结束 谢谢 谢谢 !第第3章章97 本章教学内容本章教学内容l指令的概念及其基本格式指令的概念及其基本格式l8086CPU指令系统的寻址方式及指令系统的寻址方式及地址计算方法地址计算方法l8086CPU指令系统功能及其应用指令系统功能及其应用l中断调用指令中断调用指令第第4章章80868086指令系统指令系统98第第4章章4.1.1 指令系统与指令格式指令系统与指令格式l计计算算机机要要执执行行的的各各种种操操作作命命令令称称指指令令。全全部指令集合为该计算机部指令集合为该计算机指令系统指令系统。l指指令令以以二二进进制制编编码码形形式式存存放放在在存存储储器
33、器中中,称称机器指令机器指令,CPU可直接识别。可直接识别。l用用助助记记符符表表示示的的指指令令称称汇汇编编指指令令,具具有有直直观、易理解、好记忆观、易理解、好记忆的特点的特点。4.1 指令基本概念及寻址指令基本概念及寻址指令格式:指令格式:99操作码操作码 操作数操作数,操作数操作数执行何种操作执行何种操作目标操作数目标操作数源操作数源操作数参加操作的数据或数据存放的地址参加操作的数据或数据存放的地址第第4章章100第第4章章l寻找操作数的过程称寻找操作数的过程称寻址寻址;l寻找操作数或操作数地址的方式称寻找操作数或操作数地址的方式称寻址方式寻址方式;l指指令令或或程程序序中中,根根据据
34、给给定定寻寻址址方方式式可可方方便便地地访访问各类操作数。问各类操作数。(1)立即操作数)立即操作数 (2)寄存器操作数)寄存器操作数 (3)存储器操作数)存储器操作数 4.1.2 寻址的概念及操作数类别寻址的概念及操作数类别101第第4章章 4.2.1 立即数寻址立即数寻址 操作数放在给定指令中,紧跟在操作码后。操作数放在给定指令中,紧跟在操作码后。立即数不能作为目标操作数。立即数不能作为目标操作数。4.2 寻址方式及其应用寻址方式及其应用102第第4章章 指指令令中中给给出出寄寄存存器器名名,寄寄存存器器中中内内容容为为操作数操作数。4.2.2 寄存器寻址寄存器寻址103第第4章章1.直接
35、寻址直接寻址 操作数有效地址操作数有效地址EA在指令中给出在指令中给出4.2.3 存储器寻址存储器寻址104第第4章章 2.寄存器间接寻址寄存器间接寻址 EA在在指指定定寄寄存存器器;16位位操操作作数数寻寻址址时时,EA放放在在基址寄存器基址寄存器BX、BP或变址寄存器或变址寄存器SI、DI中中。105第第4章章3.寄存器相对寻址寄存器相对寻址 指指令令中中给给定定基基址址寄寄存存器器或或变变址址寄寄存存器器和和8位位或或16位偏移量,两者之和为操作数有效地址。位偏移量,两者之和为操作数有效地址。106第第4章章 4.基址变址寻址基址变址寻址 EA是基址加变址寄存器内容之和。是基址加变址寄存
36、器内容之和。107第第4章章5.相对基址变址寻址相对基址变址寻址 指指令令中中给给出出基基址址寄寄存存器器、变变址址寄寄存存器器和和8位位或或16位位偏移量,三者之和作为操作数有效地址偏移量,三者之和作为操作数有效地址。108第第4章章 4.2.4 I/O端口寻址端口寻址 8086CPU的的I/O端端口口用用独独立立编编址址方方式式,指指令令系系统统中中设设输输入入指指令令IN和和输输出出指指令令OUT访问端口。访问端口。I/O端口寻址方式端口寻址方式:l直接端口寻址直接端口寻址l寄存器间接端口寻址寄存器间接端口寻址 109 按功能分成六大类:按功能分成六大类:l数据传送类指令数据传送类指令l
37、算术运算类指令算术运算类指令l逻辑运算与移位类指令逻辑运算与移位类指令l串操作类指令串操作类指令l控制转移类指令控制转移类指令l处理器控制类指令处理器控制类指令 第第4章章4.3 8086指令系统及其应用指令系统及其应用110第第4章章 4.3.1 数据传送类指令数据传送类指令 传传送送操操作作数数或或操操作作数数地地址址到到指指定定寄寄存存器器或或存储单元。存储单元。根据传送内容分根据传送内容分3组:组:(1)通用数据传送指令)通用数据传送指令(2)地址传送指令)地址传送指令(3)标志寄存器传送指令)标志寄存器传送指令111第第4章章112第第4章章 MOV指令传送数据时指令传送数据时注意注
38、意:(1)段寄存器)段寄存器CS及立即数不能作为目标操作数;及立即数不能作为目标操作数;(2)两个存储单元间不允许直接传送数据;)两个存储单元间不允许直接传送数据;(3)立即数不能直接传送到段寄存器;)立即数不能直接传送到段寄存器;(4)两个段寄存器间不能直接传送数据;两个段寄存器间不能直接传送数据;(5)传送数据的类型必须匹配;)传送数据的类型必须匹配;(6)MOV指令不影响标志指令不影响标志位。位。113第第4章章 4.3.2 算术运算算术运算类指令类指令114第第4章章 4.3.3 逻辑运算逻辑运算与移位类与移位类指令指令逻辑运逻辑运算指令包括算指令包括AND、OR、XOR、NOT和和T
39、EST指指令。令。115第第4章章 4.3.4 串操串操作类作类指令指令116第第4章章 4.3.5 控制转移类指令控制转移类指令117第第4章章循环控制指令循环控制指令118第第4章章4.3.6 处理器控制类指令处理器控制类指令119第第4章章 4.4 中断调用指令中断调用指令1.INT软中断指令软中断指令指令格式:指令格式:INT n2.IRET中断返回指令中断返回指令指令格式:指令格式:IRET3.溢出中断指令溢出中断指令INTO120第第4章章4.5 系统功能调用系统功能调用4.5.1 DOS功能调用功能调用lDOS使用中断类型号使用中断类型号20H3FH,提供磁盘读,提供磁盘读写、程
40、序退出、系统功能调用等。写、程序退出、系统功能调用等。lDOS功能调用利用功能调用利用INT 21H中断指令实现。中断指令实现。l要完成系统功能调用,按如下步骤:要完成系统功能调用,按如下步骤:将入口参数送指定寄存器;将入口参数送指定寄存器;子程序功能号送子程序功能号送AH寄存器;寄存器;使用使用INT 21H指令。指令。4.5.2 BIOS中断调用中断调用l为为用户提供用户提供主要主要外设控制功能,外设控制功能,如如系统系统加电加电自检、引导装入及对键盘、磁盘自检、引导装入及对键盘、磁盘、显示器、显示器、打印机、异步串行通信口等控制。打印机、异步串行通信口等控制。lBIOS调用入口地址在调用
41、入口地址在中断向量表中,中断向量表中,通过通过中断中断指令指令INT n可直接可直接调用调用。121第第4章章122小结小结本章小结本章小结l操作数按位置有立即数、寄存器、存储器操作数。操作数按位置有立即数、寄存器、存储器操作数。l寻找操作数有效地址的方式称寻址方式。寻找操作数有效地址的方式称寻址方式。8086系统有立即数寻址、寄存器寻址、直接寻址、寄系统有立即数寻址、寄存器寻址、直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址等相对基址变址寻址等7种基本寻址方式。种基本寻址方式。lI/O端口寻址方式有直接端口寻址和寄存器间接
42、端口寻址方式有直接端口寻址和寄存器间接端口寻址两种。端口寻址两种。l8086指令系统按功能分数据传送类、算术运算指令系统按功能分数据传送类、算术运算类、逻辑运算类、串操作类、控制转移类、处理类、逻辑运算类、串操作类、控制转移类、处理器控制类、中断类等指令。器控制类、中断类等指令。123 本章内容结束本章内容结束 谢谢 谢谢 !第第4章章124 本章教学内容本章教学内容l汇编语言和汇编程序的基本概念汇编语言和汇编程序的基本概念l汇编语言源程序的书写规则、语句格式及汇编语言源程序的书写规则、语句格式及程序分段程序分段l伪指令语句的格式、功能及应用伪指令语句的格式、功能及应用l汇编语言源程序的建立、
43、汇编、连接、调汇编语言源程序的建立、汇编、连接、调试及运行试及运行第第5章章汇编语言的基本表达及其运行汇编语言的基本表达及其运行 125第第5章章5.1 汇编语言和汇编程序基本概念汇编语言和汇编程序基本概念5.1.1 汇编语言汇编语言l汇编语言是面向汇编语言是面向CPU指令系统的程序设计语言指令系统的程序设计语言;l采用助记符表示操作码和操作数采用助记符表示操作码和操作数;l用汇编语言编写的程序能直接利用硬件系统特性,用汇编语言编写的程序能直接利用硬件系统特性,对位、字节、字寄存器、存储单元、对位、字节、字寄存器、存储单元、I/O端口等进端口等进行处理行处理;l汇编语言源程序输入计算机后须借助
44、于汇编程序的汇编语言源程序输入计算机后须借助于汇编程序的翻译,变成机器语言目标程序,然后经链接生成可翻译,变成机器语言目标程序,然后经链接生成可执行文件才能执行。执行文件才能执行。126第第5章章5.1.2 汇编汇编程序程序l汇编语言源程序翻译成目标程序的过程称汇编,完汇编语言源程序翻译成目标程序的过程称汇编,完成汇编任务的程序称汇编程序。成汇编任务的程序称汇编程序。l宏汇编宏汇编MASM包含全部基本汇编功能,还增加宏指包含全部基本汇编功能,还增加宏指令、结构、记录等高级汇编功能。令、结构、记录等高级汇编功能。l在编写源程序时,要严格遵守汇编语言程序的书写在编写源程序时,要严格遵守汇编语言程序
45、的书写规范。规范。127第第5章章5.2 汇编语言源程序书写格式汇编语言源程序书写格式 5.2.1 汇编语言源程序的分段结构汇编语言源程序的分段结构 汇编源程序一般由数据段、附加段、堆栈段和代码段组成。(1)数据段在内存中建立适当容量的工作区,存放常数、变量等数据。(2)附加段也用来在内存中建立工作区,存放数据。(3)堆栈段在内存中建立堆栈区,以便在中断、子程序调用时使用。(4)代码段内容是程序要执行的指令。128129第第5章章5.2.2 汇编语言源程序的语句类型和语句格式汇编语言源程序的语句类型和语句格式1语句类型语句类型(1)指令语句)指令语句(2)伪指令语句)伪指令语句(3)宏指令语句
46、)宏指令语句2语句格式语句格式 名字名字 操作符操作符 操作数操作数 ;注释;注释130第第5章章 5.3 8086汇编语言中的表达式和运算符汇编语言中的表达式和运算符131第第5章章132第第5章章 5.4 伪指令语句伪指令语句伪指令是给汇编程序的命令,在汇编过程中由汇伪指令是给汇编程序的命令,在汇编过程中由汇编程序进行处理。根据伪指令功能,分为以下几类:编程序进行处理。根据伪指令功能,分为以下几类:l数据定义伪指令数据定义伪指令l符号定义伪指令符号定义伪指令l段定义伪指令段定义伪指令l过程定义伪指令过程定义伪指令l宏处理伪指令宏处理伪指令l模块定义与连接伪指令模块定义与连接伪指令l处理器方
47、式伪指令处理器方式伪指令l条件伪指令条件伪指令l列表伪指令列表伪指令l其他伪指令其他伪指令1335.4.1 数据定义伪指令数据定义伪指令l数据定义伪指令用来定义变量的类型数据定义伪指令用来定义变量的类型;l将所需数据放入指定存储单元将所需数据放入指定存储单元,也可用符号也可用符号“?”只只给变量分配空间而不赋值给变量分配空间而不赋值;l常用数据定义伪指令有常用数据定义伪指令有DB、DW、DD、DQ和和DT等。等。l数据定义伪指令一般格式:数据定义伪指令一般格式:变量名变量名 伪指令伪指令 操作数操作数,操作数,操作数;注释;注释第第5章章134第第5章章135第第5章章136第第5章章5.4.
48、2 符号定义伪指令符号定义伪指令 为表达式赋符号名,或定义新类型属性。为表达式赋符号名,或定义新类型属性。(1)EQU(等值)伪指令(等值)伪指令(2)(等号)伪指令)(等号)伪指令(3)LABLE(标号)伪指令(标号)伪指令137第第5章章 5.4.3 段定义伪指令段定义伪指令(1)SEGMENT/ENDS伪指令伪指令 格式:格式:段名段名 定位类型定位类型 组合类型组合类型 类别类别 (段内语句系列)(段内语句系列)段名段名 ENDS(2)ASSUME伪指令伪指令 格式:格式:ASSUME 段寄存器名:段名段寄存器名:段名,段寄存器名:,段寄存器名:段名段名,138第第5章章 5.4.4
49、过程定义伪指令过程定义伪指令 子子程程序序以以过过程程形形式式出出现现,调调用用和和返返回回采采用用CALL和和RET指令指令完成。完成。格式:格式:过程名过程名 PROC NEAR/FAR (过程中的语句系列)(过程中的语句系列)RET (过程中的语句系列)(过程中的语句系列)过程名过程名 ENDP139第第5章章 5.4.5 结构定义伪指令结构定义伪指令(1)结构定义)结构定义格式为:格式为:结构名结构名 STRUC (数据定义语句序列)(数据定义语句序列)结构名结构名 ENDS(2)结构预置)结构预置格式:格式:结构变量名结构变量名 结构名结构名 字段值表字段值表(3)结构引用)结构引用
50、 结构变量名结构变量名结构字段名结构字段名140第第5章章 5.4.6 模块定义与连接伪指令模块定义与连接伪指令(1)NAME伪指令伪指令(2)END伪指令伪指令(3)PUBLIC伪指令伪指令(4)EXTRN伪指令伪指令141第第5章章 5.4.7 定位伪指令定位伪指令ORG和程序计数器和程序计数器$(1)ORG伪伪指指令令:设设定定起起始始位位置置,指指定某语句或某变量偏移地址。定某语句或某变量偏移地址。(2)程程序序计计数数器器$:字字符符“$”出出现现在在程程序序表表达达式式中中,用用来来表表示示位位置置计计数数器器的当前值。的当前值。142第第5章章 5.5 汇编语言程序上机过程汇编语