资源预览内容
第1页 / 共67页
第2页 / 共67页
第3页 / 共67页
第4页 / 共67页
第5页 / 共67页
第6页 / 共67页
第7页 / 共67页
第8页 / 共67页
第9页 / 共67页
第10页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识封面封面1第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 第一章第一章 汇编语言基础知识汇编语言基础知识 1.1 计算机系统概述计算机系统概述(硬件、软件、语言类型)(硬件、软件、语言类型) 1.2 数据表示数据表示(数制、编码、符号数、二进制运算)(数制、编码、符号数、二进制运算) 1.3 Intel80x86系列微处理器系列微处理器(8086P4) 1.4 PC微型计算机系统微型计算机系统(PC机的软硬件)机的软硬件) 1.5 8086微处理器微处理器(8086的结构)的结构) 1.6 8086的寻址方式的寻址方式(8086寻找操作数的方式)寻找操作数的方式) 要点及习题分析要点及习题分析2第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.1 计算机系统概述计算机系统概述 1.1.1 计算机的硬件计算机的硬件1.1.2 计算机的软件计算机的软件 1.1.3 计算机程序设计语言计算机程序设计语言返回第一章返回第一章3第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.1.1 计算机的硬件计算机的硬件 对汇编语言程序员来说,计算机硬件的结构如下对汇编语言程序员来说,计算机硬件的结构如下图所示图所示(CPU、存储器、接口(外设):存储器、接口(外设): 运算器运算器控制器控制器寄存器寄存器主存储器主存储器系统总线系统总线I/O接接口口输输 入入 设设 备备输输 出出 设设 备备辅辅助助存存储储器器CPU外总线外总线4第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1. 中央处理单元中央处理单元 由三由三部分组成。部分组成。 控制器:取指令,经译码分析后发出各种控制命令控制器:取指令,经译码分析后发出各种控制命令,如取数、存数、运算等。如取数、存数、运算等。 运算器:完成各种算术运算和逻辑运算。运算器:完成各种算术运算和逻辑运算。 寄存器(或寄存器阵列):由多个寄存器(或寄存器阵列):由多个8位、位、16位寄存位寄存器组成,提供各种操作所需要的数据。器组成,提供各种操作所需要的数据。5第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 2. 存储器存储器 1)存放程序和数据;可重复读取;新数据覆盖原数据。存放程序和数据;可重复读取;新数据覆盖原数据。 2)主存:半导体,快,成本高,容量小;主存:半导体,快,成本高,容量小; 辅存:软硬磁盘、光盘;辅存:软硬磁盘、光盘; 3)RAM:可读可写,易失性存储器;可读可写,易失性存储器; ROM:只读,非易失性存储器;只读,非易失性存储器; 4)由大量存储单元组成:单位、内容、地址、容量、)由大量存储单元组成:单位、内容、地址、容量、B(BYTE)、 KB、MB、GB、TB等。等。 6第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 3.外部设备和接口外部设备和接口设备类型:人机交互设备类型:人机交互 机器间通信机器间通信 外存(可看做外存(可看做I/O设备)设备)接口:接口:接口的必要性:格式转换、电平转换接口的必要性:格式转换、电平转换 接口的组成:三个(组)寄存器;通过寄存接口的组成:三个(组)寄存器;通过寄存器交换数据;器交换数据; 对接口的访问:端口对接口的访问:端口- 端口号端口号-端口地端口地址、址、I/O地址;地址;返回返回1.11.17第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.1.2 计算机软件计算机软件1. 系统软件系统软件 面向计算机、由厂家提供;其作用为管面向计算机、由厂家提供;其作用为管理和维护、充分发挥其功能、为用户提供一个方便使理和维护、充分发挥其功能、为用户提供一个方便使用的系统。如操作系统,诊断系统,程序设计语言等用的系统。如操作系统,诊断系统,程序设计语言等2. 应用软件应用软件 面向问题、由公司或用户编写面向问题、由公司或用户编写集成开发环境:开发工具包括文本编辑、翻译程序、集成开发环境:开发工具包括文本编辑、翻译程序、调试程序、连接程序等,在调试程序、连接程序等,在DOS时代,其各自是独立时代,其各自是独立的;现在将其集成为一个软件,即为的;现在将其集成为一个软件,即为“集成开发环境集成开发环境”。返回返回1.11.18第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.1.3计算机的程序设计语言计算机的程序设计语言 1.机器语言机器语言 低级语言低级语言 2.汇编语言汇编语言程序设计语言程序设计语言 3.高级语言高级语言 C/C+、JAVA、 DELPHI9第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.机器语言机器语言指令指令机器指令;机器指令;机器指令的组成:操作码、操作数;机器指令的组成:操作码、操作数;指令系统指令系统; 机器语言:指令系统及使用指令系统编写机器语言:指令系统及使用指令系统编写程序的规则。程序的规则。机器语言特点机器语言特点:计算机唯一能够直接识别的语言。计算机唯一能够直接识别的语言。目标程序:用机器语言描述的程序。目标程序:用机器语言描述的程序。机器语言的致命缺点:难以使用。如机器语言的致命缺点:难以使用。如100+2568086机器语言程序:机器语言程序:B8 64 00 05 00 01 A3 00 2010第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 2.汇编语言汇编语言汇编指令:用便于记忆、并能描述指令功能的符号表汇编指令:用便于记忆、并能描述指令功能的符号表示机器指令示机器指令汇编指令(符号指令)。汇编指令(符号指令)。助记符:表示指令操作码的符号,一般用英语单词或助记符:表示指令操作码的符号,一般用英语单词或缩写。指令的操作数也用符号表示。缩写。指令的操作数也用符号表示。汇编语言:汇编指令及使用汇编指令编写程序的规则。汇编语言:汇编指令及使用汇编指令编写程序的规则。(其他语言要素第三章介绍)(其他语言要素第三章介绍)汇编语言汇编语言(源源)程序:使用汇编语言编写的程序。程序:使用汇编语言编写的程序。汇编语言的特点:汇编指令与机器指令一一对应,但汇编语言的特点:汇编指令与机器指令一一对应,但相对机器语言易于理解、掌握,当我们用低级语言编相对机器语言易于理解、掌握,当我们用低级语言编写程序时使用汇编语言而不用机器语言。写程序时使用汇编语言而不用机器语言。汇编和汇编程序:翻译过程汇编和汇编程序:翻译过程 翻译程序。翻译程序。11第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 3.高级语言高级语言机器语言和汇编语言以外的程序设计语言统称高级机器语言和汇编语言以外的程序设计语言统称高级语言。其特点是更加接近自然语言和惯用的数学表达语言。其特点是更加接近自然语言和惯用的数学表达形式,与计算机硬件结构无关,因而便于使用,便于形式,与计算机硬件结构无关,因而便于使用,便于交流和推广。交流和推广。总之,高级语言编程效率高,但运行效率低。总之,高级语言编程效率高,但运行效率低。高级语言可分成编译型和解释型高级语言,分别使高级语言可分成编译型和解释型高级语言,分别使用编译程序和解释程序将源程序翻译成机器语言程序,用编译程序和解释程序将源程序翻译成机器语言程序,然后交计算机执行。然后交计算机执行。12第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 4.汇编语言程序设计的意义汇编语言程序设计的意义学习汇编语言的意义:学习汇编语言的意义:1)与硬件密切相关,是学习硬件类课程的先行课)与硬件密切相关,是学习硬件类课程的先行课和基础课。和基础课。2)有利于理解计算机的工作原理。)有利于理解计算机的工作原理。3)可直接而有效地控制硬件。)可直接而有效地控制硬件。4)执行效率高,占用空间小。)执行效率高,占用空间小。5)特殊应用只能使用汇编语言,如加密解密等。)特殊应用只能使用汇编语言,如加密解密等。应该指出的是:在计算机速度大大提高和存储器容应该指出的是:在计算机速度大大提高和存储器容量大大增加的今天,高级语言的使用更为广泛和普遍量大大增加的今天,高级语言的使用更为广泛和普遍(特别是编写大型程序)。(特别是编写大型程序)。返回第一章返回第一章13第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.2数据表示数据表示1.2.1 数制数制1.2.2 编码编码1.2.3 有符号数的表示方法有符号数的表示方法1.2.4 二进制运算二进制运算返回第一章返回第一章14第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.2.1 数制数制 数制涉及三个问题数制涉及三个问题: :计数符号计数符号 基数和权基数和权 计数规则计数规则(1 1)计数符号计数符号 这是用于书写数值的符号,所有计数符号的集合这是用于书写数值的符号,所有计数符号的集合称作数符集。称作数符集。k k进制的数符集中必然包含进制的数符集中必然包含k k个符号。比个符号。比如:如: 二进制的数符集中有两个符号:二进制的数符集中有两个符号:0 0和和1 1;八进制的数符集中有八进制的数符集中有8 8个符号:个符号:0,1,2,3,4,5,6,70,1,2,3,4,5,6,7;十十进进制制的的数数符符集集中中有有1010个个符符号号:0,1,2,3,4,5,6, 0,1,2,3,4,5,6, 7,8,97,8,9;十十 六六 进进 制制 的的 数数 符符 集集 中中 有有 1616个个 符符 号号 :0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,FA,B,C,D,E,F。15第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识数制的三个问题:数制的三个问题: 1. 二进制数二进制数 (2)基数和权基数和权 如如果果把把用用k进进制制书书写写的的一一个个整整数数从从右右往往左左依依次次记记作作第第0位位、第第1位位、第第n位位,则则第第i位位上上的的数数符符ai所所代代表表的的含含义义是是aiki。在在此此,我我们们把把k称称为为一一个个数数制制的的基基数数,而而把把ki称称为为k进进制制数数第第i位位的的权权。(如如888,每每个个8的位权都不相同)的位权都不相同)(3)计计数数规规则则 简简单单地地说说,就就是是“逢逢k进进1,借借1当当k”。.1. 二进制数二进制数 1 1 0 1 1 0 1 1 . 1 0 1 B= 1x27+126+025+124+123+022+121+1 20+12-1+02-2+12-3 二二进进制制数数是是计计算算机机内内部部采采用用的的,并并唯唯一一能能够够直直接被计算机识别的数。接被计算机识别的数。16第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识2. 十六进制数十六进制数2. 十六进制数十六进制数 8a0f.6bH=8163+10 162+0 161+15 160+6 16-1+11 16-2 引入十六进制数的目的是为了描述二进制数。引入十六进制数的目的是为了描述二进制数。 数的书写方法:数的书写方法: 1)二进制数尾部加二进制数尾部加B(b)。 2)十六进制数尾部加十六进制数尾部加H(h);如记数符号如记数符号a,b,c, d,e,f打头,头部应加打头,头部应加0,如,如0A8F5H;记数符号记数符号 a,b,c,d,e,f 不区别大小写,与不区别大小写,与ABCDEF等效。等效。 3)十进制数尾部加)十进制数尾部加D(d),但通常可以省略。但通常可以省略。17第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识3.数制间转换数制间转换3.数制间转换数制间转换 1)十进制数转换二进制数;)十进制数转换二进制数; 2)十进制数转换十六进制数;)十进制数转换十六进制数; 3)二进制数十六进制数互相转换;)二进制数十六进制数互相转换; 返回返回1.21.218第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.2.13 数制转换:十进制数制转换:十进制二进制(整数)二进制(整数) 将将整数部分不断除以整数部分不断除以2,记下每次得到的余数,记下每次得到的余数,直到商为零;直到商为零;余数倒排,即最后得到的余数排在最余数倒排,即最后得到的余数排在最高位,第一个余数排在最低位。例如将十进制数高位,第一个余数排在最低位。例如将十进制数13转转换成二进制数:换成二进制数: 2 1 3 余数余数 2 6 1 2 3 0 2 1 1 0 113D=1101B19第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.2.13 数制转换:十进制数制转换:十进制二进制(小数)二进制(小数) 小数部分转换:乘小数部分转换:乘2取整,顺序排列得到的整数。取整,顺序排列得到的整数。例如将例如将0.8125转换成二进制数:转换成二进制数:0.8125整数整数 2 1 .6250 2 1 .25 2 0 .50 2 1 .00 0.8125D=0.1101B(有时会有转换误差有时会有转换误差 ,如,如0.3D) 返回数制转换返回数制转换20第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.2.13 数制转换:十进制数制转换:十进制十六进制十六进制十进制数转换成十六进制数,方法同十进制数转十进制数转换成十六进制数,方法同十进制数转换成二进制数,只不过换成二进制数,只不过“除除2取余取余”变为变为“除除16取余取余”,“乘乘2取整取整” 变为变为“乘乘16取整取整”。同理,如果要。同理,如果要将十进制数转换为其它数制的数(如八进制数),也将十进制数转换为其它数制的数(如八进制数),也采用同样的方法。采用同样的方法。二进制数、十六进制数转换成十进制数教材未介二进制数、十六进制数转换成十进制数教材未介绍,只要将二进制数、十六进制数按位权展开相加即绍,只要将二进制数、十六进制数按位权展开相加即可,如将可,如将8A.B5H转换成十进制数:转换成十进制数:8A.B5H=8161101601116-1+516-2 =128100.68750.0195=138.707D返回数制转换返回数制转换21第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识二进制数互相转换十六进制数二进制数互相转换十六进制数返回数制转换返回数制转换 5 5 A.5 H A.5 H 22第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.2.2 编码编码计算机中的数采用二进制数,字母、符号等也只计算机中的数采用二进制数,字母、符号等也只能采用二进制代码(能采用二进制代码(0,1)的排列组合表示(编码)。)的排列组合表示(编码)。(两种编码:两种编码:BCD码、码、ASCII码)码)1. BCD 码(码(8421码、二码、二十进制数)十进制数)解决十进制数在计算机内部如何表示。解决十进制数在计算机内部如何表示。BCD码规码规定用四位二进制数表示一位十进制数。定用四位二进制数表示一位十进制数。对多位十进制数,只要把每一位十进制数分别表对多位十进制数,只要把每一位十进制数分别表示为四位二进制数即可。示为四位二进制数即可。十进制十进制 BCD码码 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001十进制十进制 BCD码码 28 0010 1000 956 1001 0101 0110 23第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识2. ASCII码码2. ASCII码码解决字母、符号在计算机内部如何表示。解决字母、符号在计算机内部如何表示。基本基本ASCII码(标准码(标准ASCII码)用七位二进码)用七位二进制数表示一个符号(共制数表示一个符号(共128个);个);书写:用两位十六进制数书写,如书写:用两位十六进制数书写,如41H-A;种类:种类:1)控制字符(前)控制字符(前32个和最后一个):个和最后一个): 0D- 回车,回车,0A- 换行;换行; 2)其他为打印字符(可显示字符);)其他为打印字符(可显示字符);应记住的应记住的ASCII码:码:30H39H,41H,61H 扩展扩展ASCII码用八位二进制数表示一个符号(共码用八位二进制数表示一个符号(共256个)。个)。返回返回1.21.224第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.2.3 有符号数表示方法有符号数表示方法0.无符号数、有符号数、机器数、真值无符号数、有符号数、机器数、真值 1.原码原码 正数原码:符号位为正数原码:符号位为0,数值位照抄。,数值位照抄。 负数原码:符号位为负数原码:符号位为1,数值位照抄。,数值位照抄。 例例:X=+25=+00011001B X原原=00011001B X= -25= -00011001B X原原=10011001B2.反码反码 正数反码:符号位为正数反码:符号位为0,数值位照抄。,数值位照抄。 负数反码:符号位为负数反码:符号位为1,数值位取反。,数值位取反。 例:例: X=+25=+00011001B X反反=00011001B X= -25= -00011001B X反反=11100110B 原码和反码表数范围相同,都是原码和反码表数范围相同,都是-127+127。25第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识3. 补码补码3. 补码补码 为了将减法运算变成加法来做,有符号数在计算为了将减法运算变成加法来做,有符号数在计算机内一律采用补码表示。机内一律采用补码表示。 正数补码:符号位为正数补码:符号位为0,数值位照抄。,数值位照抄。 负数补码:符号位为负数补码:符号位为1,数值位取反加一。,数值位取反加一。 例:例:X=+25=+00011001B X补补=00011001B X= -25= -00011001B X反反=11100110B X补补=11100111B 下面是原码、反码和补码的小结。下面是原码、反码和补码的小结。下面是原码、反码和补码的小结。下面是原码、反码和补码的小结。原码、反码、补码总结:原码、反码、补码总结: 1)正数的原码反码补码相同;负数的原码)正数的原码反码补码相同;负数的原码反码补码各不相同,但符号位都是反码补码各不相同,但符号位都是1。 2)设字长为八位,原码反码的表数范围为)设字长为八位,原码反码的表数范围为-127+127,补码的表数范围为,补码的表数范围为-128+127。 3)已知某负数的补码,求该负数的真值,)已知某负数的补码,求该负数的真值,方法如下:方法如下:符号位不动,其余位求反加一,得符号位不动,其余位求反加一,得到的是该负数的原码;到的是该负数的原码;根据原码即可写出该负数的真值。根据原码即可写出该负数的真值。 例:例:X补补=11111100B X原原=10000011B+1=10000100B X= -0000100= - 4 返回返回1.21.226第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.2.4二进制运算(含十六进制运算)二进制运算(含十六进制运算)1.算术运算算术运算与十进制运算相同,只不过是逢与十进制运算相同,只不过是逢2进进1,借,借1当当2。 加法加法 减法减法 乘法乘法 0+0=0 00=000=0 0+1=1 01=101=0 1+0=1 10=110=0 1+1=10 11=011=12.十六进制算术运算:与十进制运算相同,但十六进制算术运算:与十进制运算相同,但逢逢16进进1,借,借1当当16;注意运算结果如为注意运算结果如为A A,B B,C C,D D,E E,F F,不能写成不能写成1010,1111,1212,1313,1414,1515。例例1:计算:计算85AH+924H 8 5 A + 9 2 4 1 17 E例例2:计算:计算800H 1 8 0 0 0 0 1 7 F F不可以写成不可以写成14逢逢16 进进127第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识3.逻辑运算逻辑运算3.逻辑运算逻辑运算与运算(与运算(ANDAND;):): 10=0 10=011=111=100=000=001=001=0或运算(或运算(OROR;):): 10=1 10=111=111=100=000=001=101=1非运算(非运算(NOTNOT; 或或 ):): 0 0=1=1( 0 =1 0 =1) 1 1= 0 = 0 ( 1=1= 0 0)异或运算(异或运算(XORXOR;) 10=1 10=111=011=000=000=001=101=1注意:逻辑运算是按位运算。注意:逻辑运算是按位运算。 28第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 4.用补码作减法(补充讲义)用补码作减法(补充讲义)我们用实例说明计算机在执行减法指令时,是如何我们用实例说明计算机在执行减法指令时,是如何把减法变成加法来做的(设字长为把减法变成加法来做的(设字长为8位)。位)。例例1:(+5)(+5)(+4)(+4)即即(+00000101(+00000101)()(+00000100+00000100)机器中机器中+5和和+4都用补码表示。都用补码表示。 对减数求补对减数求补(求反加一),得到求反加一),得到(-4-4)的补码:的补码:11111100 (+5)的补码加)的补码加(-4-4)的补码:的补码: 0 0 0 0 0 1 0 1 + 1 1 1 1 1 1 0 0 1 0 0 0 0 0 0 0 1将结果将结果00000001看作补码,其真值即为看作补码,其真值即为+1。进位被自动舍弃进位被自动舍弃29第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识用补码作减法(用补码作减法(2)例例2 (+5)(+5)(-4) (-4) 即即(+0000101)(+0000101)(-0000100(-0000100)机器中机器中+5和和- 4都用补码表示。都用补码表示。(-4)补补=11111100 对减数求补,得到的是对减数求补,得到的是+4的补码:的补码:00000100将将+5的补码加的补码加+4的补码的补码 0 0 0 0 0 1 0 1 + 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 将结果看成补码,其真值即为正确结果将结果看成补码,其真值即为正确结果+9。例例3:(- 5- 5)- -(+4+4)和)和 (- 5- 5)- -(- 4- 4)步骤同上。步骤同上。总之:总之:被减数和减数都用补码表示;被减数和减数都用补码表示; 机器对减数先求补,而后做加;机器对减数先求补,而后做加; 将计算结果看作补码。将计算结果看作补码。返回第一章返回第一章30第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.3 Intel 80x86系列微处理器系列微处理器1.8086/8088/801868086:1978年推出年推出;内外数据总线内外数据总线16位位;地址总线地址总线 20位;寻址范围位;寻址范围1MB;主频主频5MHz.8088:1979年推出;外部数据总线年推出;外部数据总线8位;其余基本同位;其余基本同8086,被称为准,被称为准16位位CPU。80186:增强了增强了8086的功能的功能,但作为计算机的但作为计算机的CPU没有没有被使用过,只作过某些板卡的控制器。被使用过,只作过某些板卡的控制器。31第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识802862.80286(16位位CPU) 1982年推出;内外数据总线年推出;内外数据总线16位;地址总线位;地址总线 24位;位;寻址范围寻址范围16MB;主频主频5MHz20MHz。 80286支持两种工作方式:实模式支持两种工作方式:实模式 和和 保护模式。保护模式。 实模式:相当于一个快速实模式:相当于一个快速8086。 保护模式:提供虚拟存储管理和多任务的硬件控保护模式:提供虚拟存储管理和多任务的硬件控制。物理寻址范围制。物理寻址范围16MB,虚拟存储器寻址范围可达虚拟存储器寻址范围可达1GB。指令系统除包含指令系统除包含8086/80186指令外,新增指令外,新增15条条保护方式指令保护方式指令32第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识803863.80386(32位位CPU) 1985年推出年推出;内外部数据总线内外部数据总线32位;地址总线位;地址总线32位,位, 物理寻址范围物理寻址范围4GB,虚拟存储器寻址范围可达虚拟存储器寻址范围可达64TB。主主频为频为16/25/33MHz。 386除支持除支持286的两种工作方式外,新增虚拟的两种工作方式外,新增虚拟8086模式。虚拟模式。虚拟8086模式的特点:模式的特点: 1)既具有保护功能,又能执行实模式下的既具有保护功能,又能执行实模式下的8086代码,代码,且可以实现多任务。(可同时运行多个且可以实现多任务。(可同时运行多个DOS程序)程序) 2) 可以在虚拟可以在虚拟8086模式和保护模式下快速、反复转模式和保护模式下快速、反复转换。指令系统除兼容原换。指令系统除兼容原16位位CPU指令外,全面升级为指令外,全面升级为32位指令,并新增多条指令。位指令,并新增多条指令。33第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识80486pentium4.80486 (32位位CPU) 1989年推出;特点:年推出;特点:将高速缓存、协处理器与将高速缓存、协处理器与CPU集成在一个芯片上;集成在一个芯片上;部分采用了部分采用了RISC技术;技术; 采用了指令流水线技术;采用了指令流水线技术;大幅度提高了大幅度提高了CPU的主的主频,可达频,可达100MHz。5.Pentium/MMX Pentium(32位或准位或准64位位CPU) Pentium:1993年推出;内部数据总线年推出;内部数据总线32位,外部数位,外部数据总线据总线64位位;主频主频60MHz200MHz ;采用超标量技术。采用超标量技术。MMX Pentium:1996年推出;主频最高年推出;主频最高233MHz;新增新增57条多媒体指令,提高了多媒体软件执行速度。条多媒体指令,提高了多媒体软件执行速度。 下面简单介绍下面简单介绍RISC技术和流水线技术。技术和流水线技术。RISC技术:精简指令系统计算机技术。技术:精简指令系统计算机技术。其特点是:其特点是:CPU的指令系统不含复杂指令,指令的指令系统不含复杂指令,指令长度固定,指令格式种类少,寻址方式少,指令长度固定,指令格式种类少,寻址方式少,指令数量少(只选择使用频度很高的指令),因此,数量少(只选择使用频度很高的指令),因此,使计算机结构变得更加简单、有效,结合流水线使计算机结构变得更加简单、有效,结合流水线等其他技术,使一个时钟周期完成一条指令,从等其他技术,使一个时钟周期完成一条指令,从而大大提高了计算机的速度。如年研制而大大提高了计算机的速度。如年研制成的成的RSCI 型型CPU,只有只有31条指令,其性能却条指令,其性能却比当时最先进的商品化微处理器比当时最先进的商品化微处理器MC68000和和Z8000快倍。快倍。流水线技术:计算机中的流水线技术和工厂中的流水流水线技术:计算机中的流水线技术和工厂中的流水装配线类似。装配线类似。将执行一条指令需完成的操作分成若将执行一条指令需完成的操作分成若干子操作;干子操作;每个子操作由专门部件完成;每个子操作由专门部件完成;各子操各子操作并行工作。由于子操作并行工作,提高了计算机的作并行工作。由于子操作并行工作,提高了计算机的执行速度。(但要注意,完成一条指令所需要的时间执行速度。(但要注意,完成一条指令所需要的时间并没有变。)(并没有变。)(“每周期完成一条指令每周期完成一条指令”和和“完成一完成一条指令需要一个周期条指令需要一个周期”不同。)(超标量)不同。)(超标量)装配线装配线34第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识Pentium propii/piiip4.Pentium ProP P Pentium Pro:1995年年推出;推出;Pentium的增强型芯的增强型芯片,主要用于服务器片,主要用于服务器. P II:1997年推出;在年推出;在Pentium Pro 的基础上增的基础上增加了加了MMX指令。指令。 P III:1999年推出;在年推出;在P II的基础上增加了的基础上增加了70条条SSE指令。指令。 P 4:2000年推出;新增年推出;新增76条条SSE2指令。指令。 另外,从另外,从P II 时代开始,时代开始,Intel为了占领低端市场,为了占领低端市场,推出了推出了Celeron(赛扬)微处理器,目前,最新型的赛扬)微处理器,目前,最新型的Celeron(赛扬赛扬)微处理器是所谓微处理器是所谓C4,与与P4引脚兼容。引脚兼容。 返回第一章返回第一章35第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.4 PC微型计算机系统微型计算机系统1. PC 机的机的硬件硬件基本配置:主机、键盘和鼠标、基本配置:主机、键盘和鼠标、显示器、软盘驱动器、硬盘驱动显示器、软盘驱动器、硬盘驱动器和光盘驱动器等。器和光盘驱动器等。2. 主存空间的分配主存空间的分配常规内存:容量常规内存:容量1MB; 00000H0FFFFFH。 保留内存:显示缓冲保留内存:显示缓冲 区和扩展区和扩展ROM;基本内存:基本内存:DOS占占 用、用户区。用、用户区。扩展内存扩展内存640640K K384K384K保留内存保留内存基本内存基本内存常常规规内内存存36第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识PC机的软件机的软件 扩展内存扩展内存(XMS):对对80286以上的以上的CPU来说来说1MB以上的存储空间称为扩展内存以上的存储空间称为扩展内存,可供用户程序使用。可供用户程序使用。3. PC机的软件(学习汇编语言使用的软件)机的软件(学习汇编语言使用的软件) 编辑程序,如编辑程序,如DOS的的EDIT。 汇编程序,如汇编程序,如MASM 6.X。 连接程序连接程序LINK。 调试程序调试程序DEBUG。返回第一章返回第一章37第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.5 8086微处理器微处理器1.5.1 8086的功能结构的功能结构1.5.2 8086的寄存器组的寄存器组1.5.3 存储器组织与段寄存器存储器组织与段寄存器 1.存储器组织(位、字节、地址、字单元存储器组织(位、字节、地址、字单元) 2.分段管理(分段、逻辑地址、物理地址分段管理(分段、逻辑地址、物理地址) 3.段寄存器(段寄存器、段超越段寄存器(段寄存器、段超越.)返回第一章返回第一章38第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.5.1 8086的功能结构的功能结构指令译码指令译码总总线线接接口口单单元元执执行行单单元元ABUSDBUSCBUS内部数据总线内部数据总线内部数据总线内部数据总线返回返回1.51.539第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.5.2 8086寄存器组寄存器组 寄存器是寄存器是CPU内部临时存放数据的部件。内部临时存放数据的部件。 8个通用寄存器,个通用寄存器,4个段寄存器,个段寄存器,1个指令指针寄存个指令指针寄存器,器,1个标志寄存器。以上寄存器均为个标志寄存器。以上寄存器均为16位寄存器。位寄存器。 1. 8086通用寄存器通用寄存器 (1) AX累加器。累加器。 (2) BX基地址寄存器。基地址寄存器。 (3) CX计数寄存器。计数寄存器。 (4) DX数据寄存器。数据寄存器。 (5) SI源变址寄存器。源变址寄存器。 (6) DI目的变址寄存器。目的变址寄存器。 (7) BP栈基地址寄存器。栈基地址寄存器。 (8) SP栈顶指针。栈顶指针。(9) IP指令指针寄存器(专用寄存器)。指令指针寄存器(专用寄存器)。 通用寄存器中的通用寄存器中的 4 个数据寄个数据寄存器可以分成存器可以分成8个个8位寄存器使用:位寄存器使用:AXAH,AL BX BH,BLCXCH,CL DX DH,DL40第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识标志寄存器标志寄存器2.标志寄存器标志寄存器 标标志志寄寄存存器器又又称称作作程程序序状状态态字字(Program Status Word,简简记记作作PSW),共共16位位,一一般般把把每每一一位位分分别别使使用用,8086/8088使使用用其其中中的的9位位,用用于于存存放放当当前前程程序序执执行行的的状状况况和和运运算算结结果果的的特特征征,各各标标志志位位的的分分布布如如图图2.3所所示。示。 D15 d14 d13 d12 d11 d10 d9 d8 D7 D6 D5 D4 D3 D2 D1 D0OFDFIFTFSFZFAFPFCF41第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识标志寄存器标志寄存器 9个个标标志志位位可可分分为为两两组组:状状态态标标志志(条条件件标标志志),记记载载算算术术运运算算或或者者逻逻辑辑运运算算结结果果的的特特征征;另另一一组组是是控控制制标标志志位位,记记载载CPU当当前前工工作作状状态态(控控制制CPU执执行行指指令的方式),包括令的方式),包括TF、IF、DF等等3个标志位。个标志位。1 1状态标志(状态标志(条件标志)条件标志) (1)CF进位标志。进位标志。 (2)ZF零标志。零标志。 (3)SF符号标志。符号标志。 (4)OF溢出标志。(设置,与溢出标志。(设置,与CF的区别)的区别) (5)PF奇偶标志。(低奇偶标志。(低8位,偶数时为位,偶数时为1) (6)AF辅助进位标志。辅助进位标志。 42第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识控制标志位控制标志位2控制标志位控制标志位 (1)TF单步中断允许标志。单步中断允许标志。 (2)I F外部可屏蔽中断允许外部可屏蔽中断允许 标志。标志。 (3)DF方向标志。方向标志。 返回返回1.51.5目录目录43第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.5.3 存储器组织与段寄存器存储器组织与段寄存器 1.数据的存储格式数据的存储格式A F H5 A H3 4 H1 2 H5 6 H7 8 H 0006H0005H0004H0003H0002H0001H0000H地地址址位位(bit)、字节字节(Byte)、字:字长字:字长:一个字包含的位数一个字包含的位数; 8086,286,386.的字长的字长;存储器的基本单位,地址、内容;存储器的基本单位,地址、内容;字、双字的存放字、双字的存放:遵循低字节占低遵循低字节占低地址,高字节占高地址。字单元、地址,高字节占高地址。字单元、双字单元的地址。地址对齐双字单元的地址。地址对齐字单元字单元0002h=1234h双字单元双字单元0002H=78561234H字节单元字节单元0002h=34h内容内容44第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识存储器的分段管理存储器的分段管理12.存储器的分段管理存储器的分段管理为何分段:为何分段:8086的地址总线宽度为的地址总线宽度为20位,寻址位,寻址范围范围220=1MB,但一个地址寄存器只有但一个地址寄存器只有16位,无法直位,无法直接形成接形成20位地址,故把位地址,故把1M空间分成许多空间分成许多“段段”,用一,用一个寄存器表示某段在个寄存器表示某段在1M空间内的起始地址空间内的起始地址(段地址段地址),用另一个寄存器表示表示段内某单元相对本段起始地用另一个寄存器表示表示段内某单元相对本段起始地址的址的偏移地址偏移地址。(用两个。(用两个16位寄存器形成位寄存器形成20位地址)位地址)地址的表示方法:地址的表示方法:段段(基基)地址:偏移地址地址:偏移地址为能用为能用16位寄存器表示段的起始地址位寄存器表示段的起始地址(xxxxxH),并不是任意一个单元的地址都能作段的起始地址,只并不是任意一个单元的地址都能作段的起始地址,只有那些形式为有那些形式为xxxx0H的地址才能作段的起始地址,该的地址才能作段的起始地址,该起始地址存入起始地址存入16位寄存器时,将位寄存器时,将0省略即可。偏移地省略即可。偏移地址为址为16位,可直接放入位,可直接放入16位寄存器。位寄存器。45第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识分段管理分段管理2逻辑地址和物理地址逻辑地址和物理地址逻辑地址:存储单元地址的表达形式。逻辑地址:存储单元地址的表达形式。 即即 段地址段地址:偏移地址偏移地址物理地址:存储单元在物理地址:存储单元在1M空间内的实际地址。空间内的实际地址。已知逻辑地址,求物理地址已知逻辑地址,求物理地址如如 205AH:3B06H 2 0 5 A 0 H + 3 B 0 6 H 2 4 0 A 6 H段地址乘以段地址乘以16(也就(也就是将保存段地址时省略是将保存段地址时省略的的0补回。)补回。) 位对齐,加偏移地址位对齐,加偏移地址物理地址物理地址46第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识分段管理分段管理3地址的唯一性地址的唯一性一个存储单元的物理地址是唯一的,但逻辑地址一个存储单元的物理地址是唯一的,但逻辑地址并不是唯一的,例如并不是唯一的,例如4106H:400AH,42AEH :258AH,3507H :0FFFAH都表示同一个存储单元,其物都表示同一个存储单元,其物理地址为理地址为4506AH。涉及分段的其他问题涉及分段的其他问题 a)1M内存空间总共可以分多少个段?内存空间总共可以分多少个段?xxxx0h b)每个段最大可以包括多少个存储单元?每个段最大可以包括多少个存储单元? c)xxxxH:0000H是段内哪一个单元?其物理地是段内哪一个单元?其物理地址是多少?址是多少?47第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 3.段寄存器段寄存器8086专门存放段地址的寄存器称为段寄存器,共专门存放段地址的寄存器称为段寄存器,共有有4个:个: CS代码段段寄存器;代码段段寄存器; DS数据段段寄存器;数据段段寄存器; ES附加段段寄存器附加段段寄存器 ; SS堆栈段段寄存器。堆栈段段寄存器。段寄存器的作用:程序的不同部分放入相应段;段寄存器的作用:程序的不同部分放入相应段;段超越:取指令时,段地址只能是段超越:取指令时,段地址只能是CS; 堆栈操作时,段地址只能是堆栈操作时,段地址只能是SS; 读取数据时,默认的段寄存器为读取数据时,默认的段寄存器为DS, 但也可以指定使用其他段寄存器。但也可以指定使用其他段寄存器。 48第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识段寄存器使用规定段寄存器使用规定S SE SD SD SS SC S 默默 认认 段段 寄寄 存存 器器有效地址有效地址EAD IS I有效地址有效地址EAS PI P偏偏 移移 地地 址址CS,ES,SS无无CS,ES,SSCS,ES,SS无无无无可可 超超 越越 的的段段 寄寄 存存 器器BP作基址时作基址时串的目的操作数串的目的操作数串的串的源操作数源操作数一般数据访问一般数据访问堆栈操作堆栈操作取指令取指令访访 问问 存存 储储 方方 式式注意:虽然有些操作允许段超越,但除了编写注意:虽然有些操作允许段超越,但除了编写COM程序,程序,一般一般情况下不使用段超越,特别是堆栈段只用于堆栈操作。情况下不使用段超越,特别是堆栈段只用于堆栈操作。 段寄存器使用规定段寄存器使用规定49第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识使用段寄存器涉及的其他问题使用段寄存器涉及的其他问题使用段寄存器涉及的其他问题使用段寄存器涉及的其他问题按前述,可以使用的段寄存器只有按前述,可以使用的段寄存器只有4个,且每个个,且每个段最大空间为段最大空间为64KB,好象限制很死,但实际使用时却好象限制很死,但实际使用时却很灵活:很灵活:v程序可以只有一个代码段程序可以只有一个代码段( (COMCOM程序)程序)。v段与段之间可以相互独立,也可以相互重叠,段与段之间可以相互独立,也可以相互重叠,取决于各段的大小。取决于各段的大小。v如果必要,一个段的实际容量可以大于如果必要,一个段的实际容量可以大于64K,只要在程序运行时,动态修改相应段寄存器的只要在程序运行时,动态修改相应段寄存器的值(程序有多个代码段或多个数据段)。值(程序有多个代码段或多个数据段)。.64K64K段寄存器指向段寄存器指向修改段寄存器值修改段寄存器值使其指向新地址使其指向新地址段段大于大于64K示意图示意图返回返回1.51.550第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识1.6 8086的寻址方式的寻址方式1.6.1 8086机器代码格式机器代码格式1.6.2 立即数寻址方式立即数寻址方式1.6.3 寄存器寻址方式寄存器寻址方式1.6.4 存储器寻址方式存储器寻址方式1.1.寄存器间接寻址寄存器间接寻址2.2.寄存器相对寻址寄存器相对寻址3.3.基址变址寻址基址变址寻址4.4.直接寻址直接寻址5.5.基址变址相对寻址基址变址相对寻址返回第一章返回第一章51第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.6.1 8086机器代码格式机器代码格式指令的组成(机器指令角度):操作码指令的组成(机器指令角度):操作码 操作操作数(二进制代码的排列组合)(操作数:无数(二进制代码的排列组合)(操作数:无,1,2)汇编指令格式:汇编指令格式: 操作码助记符操作码助记符 目的操作数,源操作数;注释目的操作数,源操作数;注释操作码助记符:每条指令必有。操作码助记符:每条指令必有。操作数:指令操作的对象或操作对象的地址。操作数:指令操作的对象或操作对象的地址。 MOV AX,2050H MOV AX,2050H(详细的机器指令格式省略)详细的机器指令格式省略) 返回返回1.61.652第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.6.2 立即数寻址方式立即数寻址方式寻址方式:寻找操作数地址的方式,即寻找操作寻址方式:寻找操作数地址的方式,即寻找操作数,而后完成指令。数,而后完成指令。这种寻址方式直接把参与操作的数据写在指令中,这种寻址方式直接把参与操作的数据写在指令中,是指令的一部分,该数据称为立即数。计算机寻找操是指令的一部分,该数据称为立即数。计算机寻找操作数时,只要读取指令的操作数字节;操作数可以是作数时,只要读取指令的操作数字节;操作数可以是各种数制下的数值(相当于各种数制下的数值(相当于8位或位或16位二进制数),位二进制数),也可以是带单引号的字符也可以是带单引号的字符。例如:例如: MOVAX,2050H MOVAL,05H MOVAL,AB8H50H20H操作码操作码立即数立即数53第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识指令举例指令举例观察指令:观察指令:MOV 05H,ALMOV BL,324DMOV CH,2050HMOV DL,25注意:注意:1. 立即数永远不能作目的操作数。立即数永远不能作目的操作数。2. 源操作数和目的操作数要互相匹配。源操作数和目的操作数要互相匹配。返回返回1.61.6目录目录54第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.6.3 寄存器寻址寄存器寻址执行速度最快的寻址方式。执行速度最快的寻址方式。MOVAX,BXMOVS P,AXMOVD I,2050HMOVD L,CH错误指令:错误指令:MOVA L,BXMOVS P, CH返回返回1.61.6目录目录55第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.6.4 存储器寻址方式存储器寻址方式程序运行时用到的数据决大部分存放在内存中,程序运行时用到的数据决大部分存放在内存中,如何寻找内存中的数据就是存储器寻址方式。共如何寻找内存中的数据就是存储器寻址方式。共5种。种。1. 直接寻址直接寻址这种寻址方式是在指令中直接规定操作数所在单这种寻址方式是在指令中直接规定操作数所在单元的偏移地址。(在汇编语言中,这个偏移地址通常元的偏移地址。(在汇编语言中,这个偏移地址通常以变量的形式出现,在指令中就直接写变量的名字。)以变量的形式出现,在指令中就直接写变量的名字。) MOV AX,2050H ;AXDS162050HMOV DX,ES:2050H ;使用段超越使用段超越 ;DXES162050H段超越指令格式段超越指令格式区别区别MOV AX,2050H56第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识直接寻址方式示意图直接寻址方式示意图 ( MOV AXMOV AX,2050H 2050H )14921492H HDSDS1492014920H H + 2050H + 2050H16970H16970H20H50HA1H.AAH55H代代码码段段数数据据段段操操 作作 码码偏移地址偏移地址1697016970H HAHAHALAL1616执执 行行 结结 果果AX=55AAH57第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识2. 寄存器间接寻址寄存器间接寻址偏移地址(或有效地址)通过寄存器间接给出,偏移地址(或有效地址)通过寄存器间接给出,可用的寄存器为可用的寄存器为BXBX、BPBP、SISI、DIDI。MOV AXMOV AX,BXBX;AXDS16AXDS16BXBXMOV ALMOV AL,BXBX;ALDS16ALDS16BXBXMOV AXMOV AX,SISI;SIDS16SIDS16SISIMOV AXMOV AX,DIDI;AXDS16AXDS16DIDIMOV AXMOV AX,BPBP;AXAXSSSS1616BPBP MOV AXMOV AX,ESES:BXBX;AXES16AXES16BXBXMOV AXMOV AX,DSDS:BPBP;AXDS16AXDS16BPBP字字 操操 作作字节操作字节操作段寄存器使用段寄存器使用SSSS段超越段超越58第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识3. 寄存器相对寻址寄存器相对寻址 指令规定一个寄存器和一个有符号的指令规定一个寄存器和一个有符号的8 8位或位或1616位偏位偏移量,有效地址等于移量,有效地址等于寄存器内容加偏移量寄存器内容加偏移量。可用的寄。可用的寄存器仍然是存器仍然是BXBX、BPBP、SISI、DIDI。计算物理地址时,当指计算物理地址时,当指令规定的寄存器是令规定的寄存器是BPBP时,默认的段寄存器用时,默认的段寄存器用SSSS,其他其他三个寄存器用三个寄存器用DSDS;可以段超越。可以段超越。MOV AXMOV AX,DI+06HDI+06H; AXDS16 AXDS16DIDI0606MOV AXMOV AX,06HDI 06HDI ; 同上同上MOV CLMOV CL,BP+0205HBP+0205H;CLSS16CLSS16BPBP205H205HMOV DXMOV DX,205HBP205HBP;同上,但是是字操作。同上,但是是字操作。59第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识4. 基址变址寻址基址变址寻址用一个基址寄存器与一个变址寄存器的值相加,用一个基址寄存器与一个变址寄存器的值相加,计算结果作为操作数的偏移地址。基址寄存器与变址计算结果作为操作数的偏移地址。基址寄存器与变址寄存器的搭配如下寄存器的搭配如下:BX SIBX SI BP DI BP DIMOV AXMOV AX,BX+SIBX+SI;AXDS*16+BX+SIAXDS*16+BX+SIMOV AXMOV AX,BP+DIBP+DI;AXSS*16+BP+DIAXSS*16+BP+DIMOV AXMOV AX,BPDIBPDI;另一种写法。另一种写法。注意:注意:允许段超越。允许段超越。 BX+BPBX+BP或或 SI+DISI+DI是非法搭配。是非法搭配。60第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识5.基址变址相对寻址基址变址相对寻址在基址变址寻址方式基础上,增加一个在基址变址寻址方式基础上,增加一个8 8位或位或1616位偏移量,三者之和为偏移地址。位偏移量,三者之和为偏移地址。MOV AXMOV AX,BX+SI+06BX+SI+06;AXDS16+BX+SI+06AXDS16+BX+SI+06MOV AXMOV AX,2050HBP+SI2050HBP+SI;AXSS*16+AXSS*16+ 备注:备注: 在直接寻址中,地址可以用符号代替,如在直接寻址中,地址可以用符号代替,如 “MOV AXMOV AX,WORD_ADDR”WORD_ADDR”,相当于相当于“MOV AXMOV AX, xxxxHxxxxH”, “WORD_ADDR”, “WORD_ADDR”称为变量或符号地址,第称为变量或符号地址,第三章介绍。三章介绍。 偏移量可以是变量或符号数,也在第三章介绍。偏移量可以是变量或符号数,也在第三章介绍。如果一条指令有两个操作数,源操作数和目的如果一条指令有两个操作数,源操作数和目的操作数的寻址方式可能相同,也可能不同,如指令操作数的寻址方式可能相同,也可能不同,如指令“MOV AXMOV AX,BX”BX”,源操作数为寄存器间接寻址,源操作数为寄存器间接寻址,目的操作数为寄存器寻址。目的操作数为寄存器寻址。61第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识讲解指令系统时使用的符号讲解指令系统时使用的符号r8: 8位通用寄存器位通用寄存器 AH/AL/BH/BL/CH/CL/DH/DLr16:16位通用寄存器位通用寄存器AX/BX/CX/DX/SI/DI/BP/SPreg:代表代表 r8 或或 r16seg:段寄存器段寄存器 CS/DS/ES/SSm8:存储器中的一个存储器中的一个8位操作数(含位操作数(含5种寻址方式)种寻址方式)m16:存储器中的一个存储器中的一个16位操作数(含位操作数(含5种寻址方式)种寻址方式)mem:代表代表 m8 或或 m16imm:8位或位或16位立即数位立即数dest:目的操作数目的操作数 src:源操作数源操作数 disp:代表代表8位或位或16位偏移量位偏移量62第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识mem操作数的各种形式操作数的各种形式 20502050H;VAR_ADDRH;VAR_ADDR BX;BP; BX;BP;sisi;didi BX+ BX+dispdisp;BP+;BP+dispdisp;sisi+ +dispdisp;didi+ +dispdisp dispdispBX; BX; dispdispBP; BP; dispdispSI; SI; dispdispDI DI BX+SI;BX+DI;BP+SI;BP+DI BX+SI;BX+DI;BP+SI;BP+DI BXSI;BXDI; BXSI;BXDI; BX+SI+ BX+SI+dispdisp;BX+DI+;BX+DI+dispdisp; BP+SI+ BP+SI+dispdisp;BP+DI+;BP+DI+dispdisp; ; 其他写法其他写法dispdisp bxbx+ +sisi d dispisp bxbxsisi 63第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识要点及习题分析:本章要点要点及习题分析:本章要点1.数制:二进制数、十六进制数及其相互转换。数制:二进制数、十六进制数及其相互转换。2.有符号数的表示方法:原码、反码、补码。有符号数的表示方法:原码、反码、补码。3.8086寄存器组:通用寄存器、专用寄存器、状态标寄存器组:通用寄存器、专用寄存器、状态标志的设置及含义。志的设置及含义。4.存储器管理:分段、逻辑地址和物理地址、段寄存存储器管理:分段、逻辑地址和物理地址、段寄存器、段超越。器、段超越。5.8086寻址方式:寻址方式:7种方式特别是对存储器操作数的种方式特别是对存储器操作数的5种寻址方式,也就是寻址种寻址方式,也就是寻址mem数的各种表达形式。数的各种表达形式。返回第一章返回第一章 64第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识习题分析习题分析1.5 1.5 将下列十六进制数转换为二进制数和十进制数。将下列十六进制数转换为二进制数和十进制数。 0 0FFH FFH 0EFH 0EFH 10H 10H 0ABH 0ABH1.6 1.6 将下列十进制数转换为将下列十进制数转换为BCDBCD码。码。 24 68 255 2458 24 68 255 24581.7 1.7 将下列将下列BCDBCD码转换为十进制数。码转换为十进制数。 10010001001101100000100010000001 100100010011011000001000100000011.8 1.8 将下列十进制数分别用将下列十进制数分别用8 8位二进制数的原码、反位二进制数的原码、反码和补码表示。码和补码表示。 -127 -57 -128 68 -127 -57 -128 6865第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.10 1.10 写出写出09,09,AZ,aAZ,az z以及回车和换行的以及回车和换行的ASCIIASCII码。码。 1.11 1.11 计算机中有一个计算机中有一个“01100001”“01100001”编码,如果把它编码,如果把它认为是无符号数,它是十进制何数?认为它是认为是无符号数,它是十进制何数?认为它是BCDBCD码,码,是十进制何数?是十进制何数? 认为它是认为它是ASCIIASCII码,表示什么字符?码,表示什么字符? 1.15 1.15 罗列罗列80868086的的8 8个个8 8位寄存器和位寄存器和1616位寄存器,并说位寄存器,并说明各自的作用。明各自的作用。 1.16 1.16 状态标志和控制标志有何区别?状态标志和控制标志有何区别? 1.17 1.17 举例说明举例说明CFCF和和OFOF的区别。的区别。 1.18 1.18 什么是什么是“小端方式小端方式”?对字和双字存储单元,?对字和双字存储单元,什么是它们的对齐地址?为什么要对齐地址?什么是它们的对齐地址?为什么要对齐地址? 1.19 1.19 将下列逻辑地址转换成物理地址。将下列逻辑地址转换成物理地址。 0 0FFFFFFFF:0 0B8210 0B821:45674567 补充题:设物理地址为补充题:设物理地址为9696FF8HFF8H,偏移地址任意,则段偏移地址任意,则段地址可取地址可取:8600:8600H 8800H 900H 96FFH9700HH 8800H 900H 96FFH9700H66第第 一一 章章 汇汇 编编 语语 言言 基基 础础 知知 识识 1.20 80861.20 8086有哪有哪4 4种逻辑段?各段用途?种逻辑段?各段用途? 1.21 1.21 数据的默认段是哪个段?是否允许其他段存放数据的默认段是哪个段?是否允许其他段存放数据?如果允许,有何要求数据?如果允许,有何要求? 1.22 1.22 什么是操作码、操作数?有哪三种给出操作数什么是操作码、操作数?有哪三种给出操作数的方法?什么是寻址方式?的方法?什么是寻址方式? 1.23 1.23 何谓有效地址何谓有效地址EAEA?操作数如在主存中,有哪些操作数如在主存中,有哪些寻址方式可以存取它?寻址方式可以存取它? 1.24 1.24 指出下列指令中源操作数的寻址方式,设指出下列指令中源操作数的寻址方式,设BX=2000HBX=2000H,DI=40HDI=40H,给出给出DXDX的值或有效地址的值或有效地址EAEA的值。的值。 movmov dxdx,1234h ,1234h movmov dxdx,1234h ,1234h mov dxmov dx, ,bx bx movmov dxdx,bxbx movmov dxdx,bxbx+1234h+1234h movmov dxdx,bxbx+ +didi mov dxmov dx,bxbx+ +didi+1234h+1234h返回第一章返回第一章 67
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号