




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、西西 南南 交交 通通 大大 学学信息科学与技术学信息科学与技术学院院20201616年年3 3月月 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案第第3 3章章 指令系统指令系统3.1 3.1 指令格式指令格式3.2 3.2 指令类型指令类型3.3 3.3 寻址技术寻址技术3.4 3.4 堆栈与堆栈操作堆栈与堆栈操作3.5 3.5 指令系统实例指令系统实例 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案第第3 3章章 指令系统指令系统本章重点:本章重点: 1. 1. 理解指令的基本格式和基本操作种类,理解扩展操理解指令的基本格式和基本操作种类,
2、理解扩展操作码方法;作码方法; 2. 2. 掌握基本数据寻址方式和有效地址的确定方法,搞掌握基本数据寻址方式和有效地址的确定方法,搞清楚每一种基本寻址方式的特点;清楚每一种基本寻址方式的特点; 3. 3. 存储器堆栈的概念及堆栈的进、出栈操作存储器堆栈的概念及堆栈的进、出栈操作 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统4程程 序:序: 由一系列由一系列有序有序指令构成。指令构成。 指令系统:指令系统:一台计算机能执行的一台计算机能执行的全部的全部的指令的集合。指令的集合。 指指 令:令: 执行某种基本操作的命令(如:加、减)。执行
3、某种基本操作的命令(如:加、减)。 指令系统是软件和硬件的主要界面。指令系统是软件和硬件的主要界面。 是设计计算机硬件的一个基本依据,是设计计算机硬件的一个基本依据, 是软件设计者则编制程序的基础。是软件设计者则编制程序的基础。 第第3 3章章 指令系统指令系统指令是计算机硬件能够识别并直接执行的操作命令,指令是计算机硬件能够识别并直接执行的操作命令,指示计算机硬件完成指定的基本操作。指示计算机硬件完成指定的基本操作。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统53.1 3.1 指令格式指令格式3.1.1 3.1.1 机器指令的基本
4、格式机器指令的基本格式 OP: OP: 操作码字段操作码字段,指出所要进行的操作;,指出所要进行的操作; A: A: 地址码字段,地址码字段,指出操作数和操作结果的地址。指出操作数和操作结果的地址。 OPA指令的长度指令的长度: : 1) 1) 定长定长. . 指令系统中所有的指令其长度都一样。指令系统中所有的指令其长度都一样。 2) 2) 变长变长. . 各指令的长度可以不同。各指令的长度可以不同。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统63.1.2 3.1.2 地址码结构地址码结构 单地址指令单地址指令 如如: : AC(A
5、C)OP(A) AC(AC)OP(A) ACAC为累加器为累加器, ,隐含方式隐含方式 AOP(A)AOP(A) OPA 零地址指令零地址指令: : 操作数在栈顶和次栈顶中,或隐含指定。操作数在栈顶和次栈顶中,或隐含指定。 地址码字段可以是单地址、双地址、三地址或零地址等格式。地址码字段可以是单地址、双地址、三地址或零地址等格式。 多地址指令多地址指令 如如: : A A3 3(A(A1 1)OP(A)OP(A2 2) ) OPA1A2A3 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统7例:例:完成完成 ( (X)+(Y) ZX)+(
6、Y) Z的操作的操作 用一条三地址指令即可用一条三地址指令即可-ADD X,Y,ZADD X,Y,Z; 用二条二地址指令实现用二条二地址指令实现-ADD X,YADD X,Y; (X)+(Y) X(X)+(Y) XMOV Z,XMOV Z,X; (X) Z(X) Z 用用三条一地址指令实现三条一地址指令实现- LDA XLDA X; (X) (X) AC LDA AC LDA 意为意为Load ACLoad AC ADD YADD Y; (AC) + (Y) (AC) + (Y) AC AC STA ZSTA Z; (AC) (AC) Z STA Z STA意为意为Store ACStore
7、AC 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统8 地址段地址段A Ai i的长度的长度( (N)N)与存储器容量与存储器容量( (M)M)的关系:的关系: M=2M=2N N 存在问题:存在问题: 地址段位数增长地址段位数增长指令过长;指令过长; 程序设计的灵活性差。程序设计的灵活性差。 需要采用好的需要采用好的寻址技术寻址技术! OP A内存地址内存地址 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统93.1.3 3.1.3 指令的操作码指令的操作码OPA 1. 1. 规
8、整型规整型( (定长操作码、变长指令码定长操作码、变长指令码) ) n n位操作码最多可表示位操作码最多可表示2 2n n 种计算机指令种计算机指令. . 特点:特点:操作码字段规整,译码简单、迅速。操作码字段规整,译码简单、迅速。 指令的长度随操作数个数的不同而变化。指令的长度随操作数个数的不同而变化。 (适于大、中、小型机)(适于大、中、小型机) 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统10例:例:IBM 370IBM 370机的指令机的指令格式格式 指令指令可分为几种不同的长度可分为几种不同的长度, ,不论指令的长度为多少位
9、,不论指令的长度为多少位,其中其中操作码字段一律都是操作码字段一律都是8 8位位。OPOPOPOPOPD2D1D1D2D2R1R1R1R2R2L1B1B2B2B2X2B1I28888844444444444881212121212RR型RX型RS型SI型SS型 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统11 2.2.非规整型非规整型( (变长操作码、定长指令码)变长操作码、定长指令码) 可采用扩展操作码技术。可采用扩展操作码技术。 1111 0000 xxxx xxxx 1111 0001 xxxx xxxx 8 8 位位操操作作码
10、码 . . 1 15 5 条条二二地地址址指指令令 1111 1110 xxxx xxxx 0000 xxxx xxxx xxxx 0001 xxxx xxxx xxxx 位位操操作作码码 . . 1 15 5 条条三三地地址址指指令令 1110 xxxx xxxx xxxx 1111 1111 0000 xxxx 1111 1111 0001 xxxx 1212 位操作码位操作码 . . 1515 条一地址指令条一地址指令 1111 1111 1110 xxxx 1111 1111 1111 0000 1111 1111 1111 0001 1616 位操作码位操作码 . . 1616 条零
11、地址指令条零地址指令 1111 1111 1111 1111 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统12例:例:PDP-11PDP-11机的指令机的指令格式格式OPRR846261316OPS844OPOPOPOPOPOP1616SDD1683DDXSS66666610单字长(16位)二字长(32位)三字长(48位)地址地址1地址2 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统133.2 3.2 指令类型指令类型 数据传送类指令数据传送类指令 将数据从一个地方传送到另一
12、个地方将数据从一个地方传送到另一个地方 运算类指令运算类指令 实现算术和逻辑运算实现算术和逻辑运算 程序控制类指令程序控制类指令 控制程序执行的顺序和方向,包括转移、循环、子控制程序执行的顺序和方向,包括转移、循环、子程序调用、返回、自中断等。程序调用、返回、自中断等。 输入输出类指令输入输出类指令 ( (非必备非必备) ) 完成主机与外围设备之间的信息传递,包括输入完成主机与外围设备之间的信息传递,包括输入/ /输输出数据,主机向外设发控制命令或了解外设的工作状态出数据,主机向外设发控制命令或了解外设的工作状态等。等。 与机器的用途、性能的总体要求有关。与机器的用途、性能的总体要求有关。 通
13、用型计算机其基本的操作种类有:通用型计算机其基本的操作种类有: OPA 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统143.2 3.2 指令类型指令类型 其它种类指令还有:其它种类指令还有: 串操作指令串操作指令 包括串传送、串比较、串查找等。包括串传送、串比较、串查找等。 数据转换指令数据转换指令 包括数值转换(十进制包括数值转换(十进制二进制)、数据类型转二进制)、数据类型转换(定点数换(定点数浮点数)等。浮点数)等。 处理机控制指令处理机控制指令 包括包括PSWPSW操作、开操作、开/ /关中断、空操作、等待指令等。关中断、空操
14、作、等待指令等。 特权指令特权指令 供操作系统或系统软件使用,在多用户、多任务的供操作系统或系统软件使用,在多用户、多任务的计算机系统中用于系统资源的分配和管理。计算机系统中用于系统资源的分配和管理。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统153.2 3.2 指令类型指令类型 3.3.数据交换指令数据交换指令 常见的有字节交换、字交换、高低半字节之间交换等。常见的有字节交换、字交换、高低半字节之间交换等。 常用助记符:常用助记符:XCHGXCHG3.2.1 3.2.1 数据传送类指令数据传送类指令 1. 1.一般传送指令一般传送
15、指令 ( (复制)复制) 把数据从源地址复制到目的地址中去。把数据从源地址复制到目的地址中去。 常用助记符:常用助记符:MOV MOV ,LOAD(LD) LOAD(LD) ,STORESTORE 类型:寄存器类型:寄存器寄存器寄存器 寄存器寄存器主存主存 主存主存寄存器寄存器 主存主存主存主存2.2.堆栈操作指令堆栈操作指令 进栈进栈PUSHPUSH、出栈、出栈POPPOP,在程序中它俩往往成对出现。,在程序中它俩往往成对出现。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统163.2.2 3.2.2 运算类指令运算类指令1.1.算术
16、运算类指令算术运算类指令 , , , , ,加加1,1,减减1 1,向量运算等。,向量运算等。 ADD,SUB,MUL,DIV,INC,DEC,. ADD,SUB,MUL,DIV,INC,DEC,. (各种运算不一定都具备)(各种运算不一定都具备) 2. 2.逻辑运算类指令逻辑运算类指令 与、或、取反、异或等与、或、取反、异或等 (ANDAND,OROR,NOTNOT,XORXOR,.).)。 注:注:算逻运算除了产生运算结果外,还产生一些状态信息记录在算逻运算除了产生运算结果外,还产生一些状态信息记录在状态寄存器状态寄存器PSWPSW的标志位中。的标志位中。 例如:进位、溢出、全零、正负和奇
17、偶标志等。例如:进位、溢出、全零、正负和奇偶标志等。3.3.移位类指令移位类指令 算术移位算术移位( ( 2, 2, 2)2) 还有逻辑移位、循环移位等。还有逻辑移位、循环移位等。 C0C 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统171.1.转移指令转移指令 (1) (1)无条件转移无条件转移 功能:功能:PCA PCA (PCPC为程序计数器)为程序计数器) (2) (2)条件转移条件转移 如:如:JC A (JC A (进位位标志进位位标志C=1C=1时转时转) )3.2.3 3.2.3 程序控制类指令程序控制类指令2.2.子
18、程序调用指令子程序调用指令 CALL SUB_A CALL SUB_A3.3.返回指令返回指令 RET RET 返回主程序返回主程序 RETI RETI 中断返回中断返回 主主子子 转子时要先保存好转子时要先保存好当前的当前的PCPC值值( (通常是通常是PCPC值压入堆栈值压入堆栈),),然后再然后再PCSUB_APCSUB_A; 返回时要恢复返回时要恢复PCPC,把栈中原把栈中原PCPC的值弹出送的值弹出送给给PCPC。 JMPA 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统183.2.4 3.2.4 输入输出类指令输入输出类指令
19、实现实现CPUCPU与与I/OI/O设备之间的信息传送。设备之间的信息传送。 CPUIRPCR0R1MMI/O设备设备I/O接口接口注:输入、输出都是对注:输入、输出都是对CPUCPU而言的。而言的。 例如输入,指从例如输入,指从I/OI/O到到CPUCPU的数据传送。的数据传送。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统19 在在I/OI/O设备独立编址的计算机中,指令系统设有专门的输入设备独立编址的计算机中,指令系统设有专门的输入/ /输出指令(输出指令(IN/OUTIN/OUT););而在而在I/OI/O设备与内存统一编址的
20、计算机中,设备与内存统一编址的计算机中,输入输出由传送指令来实现,不设专门的输入输入输出由传送指令来实现,不设专门的输入/ /输出指令。输出指令。3.2.4 3.2.4 输入输出类指令输入输出类指令输入指令如:输入指令如: IN A, IN A,端口地址端口地址 ; ; A A是是CPUCPU中的寄存器中的寄存器输出指令如:输出指令如: OUT OUT 端口地址端口地址, ,A A ; ; A A是是CPUCPU中的寄存器中的寄存器 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统20思考题:思考题: 第第3 3章习题章习题 1 1,2
21、2,5 5,6 6作业:作业:第第3 3章习题章习题 3 3,4 4 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统213.3 3.3 寻址技术寻址技术寻址:寻址:1)1)指令寻址指令寻址 2) 2)数据寻址数据寻址 指令寻址:寻找下一条将要执行的指令地址。指令寻址:寻找下一条将要执行的指令地址。 通常采用顺序寻址通常采用顺序寻址( (顺序执行顺序执行) )或跳跃寻址或跳跃寻址( (转移转移) )数据寻址:寻找操作数的地址。数据寻址:寻找操作数的地址。 (本章重点)(本章重点)寻址与存储单元的编址有关寻址与存储单元的编址有关 西南交通大
22、学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统223.3.1 3.3.1 编址编址1.1.编址单位编址单位常见的编址单位有:常见的编址单位有: 按字编址:编址单位按字编址:编址单位= =计算机字长计算机字长 按字节编址:编址单位按字节编址:编址单位=1=1个字节个字节 按位编址:编址单位按位编址:编址单位=1=1bitbit2.2.指令中地址码的位数指令中地址码的位数主存容量越大,所需的地址码位数越长;主存容量越大,所需的地址码位数越长;编址单位越小,所需的地址码位数越长编址单位越小,所需的地址码位数越长。 西南交通大学信息科学与技术学院 “计算
23、机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统233.3.2 3.3.2 基本的数据寻址方式基本的数据寻址方式 数据寻址方式:数据寻址方式:由指令中形式地址确定有效地址的方法。由指令中形式地址确定有效地址的方法。 OP A存储器地址存储器地址( (有效地址有效地址) ) OP M A形式地址形式地址寻址方式寻址方式 以单操作数为例以单操作数为例 无寻址技术时:无寻址技术时: 有寻址技术时:有寻址技术时: 形式地址:形式地址:指令中地址字段给出的地址。指令中地址字段给出的地址。 (通常不能直接用来访问存储器)(通常不能直接用来访问存储器) 有效地址:有效地址:形式地址经过一定
24、的计算而得到的能直接访问存形式地址经过一定的计算而得到的能直接访问存储器的地址。储器的地址。 形式地址形式地址 寻址方式寻址方式 有效地址有效地址 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统24 采用寻址方式的原因:采用寻址方式的原因: 操作数地址表示多样化需要;操作数地址表示多样化需要; 压缩操作数地址字段的长度。压缩操作数地址字段的长度。 CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数在操作数在CPU的寄存器中的寄存器中操作数在操作数在指令中指令中操作数在内操作数在内存单元中存单元中操作数在操作数在I/O接口寄存器
25、中接口寄存器中 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统25CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数在操作数在指令中指令中 (1)(1)立即寻址(立即寻址(Immediate AddressingImmediate Addressing) 指令中的地址字段存放的就是操作数。指令中的地址字段存放的就是操作数。 (取指令的同时取出数据)(取指令的同时取出数据) OP M 操作数操作数 寻址方式寻址方式 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统26 (2
26、) (2)寄存器寻址寄存器寻址(Register Addressing)(Register Addressing) 操作数在某一通用寄存器(在操作数在某一通用寄存器(在 CPUCPU)中。)中。 OP M Ri 操作数 Ri . . CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数在操作数在寄存器中寄存器中 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统27 (3) (3)直接寻址直接寻址(Direct Addressing)(Direct Addressing) 形式地址即有效地址形式地址即有效地址 EAEA。 适合于访问
27、固定主存单元或外部设备接口中的寄存器;适合于访问固定主存单元或外部设备接口中的寄存器; 地址码字段较长。例如,地址码字段较长。例如,64K64K 寻址空间需寻址空间需 1616 位。位。 OP M EA EA 操作数 内存内存 CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数操作数在内存在内存中中 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统28 ( (4 4) )间接寻址间接寻址(Indirect Addressing)(Indirect Addressing) 形式地址是有效地址的地址。形式地址是有效地址的地址。 EA
28、 = (A) EA = (A) 需访问两次主存才能取出操作数。需访问两次主存才能取出操作数。 OP . M A A 操作数 内存内存 EA EA CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数在操作数在内存中内存中 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统29(b)操作数间接地址OPIR主存储器有效地址一级间址OPIR主存储器有效地址操作数110二级间址三级间址(a)一级间接寻址一级间接寻址 三级间接寻址三级间接寻址EA=(A) EA=EA=(A) EA=((A)(A))S=(A) S=(A)S=(A) S=(A)
29、特点:特点: 扩大了寻址范围,可用指令的短地址访问大容量的主存空间;扩大了寻址范围,可用指令的短地址访问大容量的主存空间; 访问速度较慢。访问速度较慢。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统30 ( (5 5) )寄存器间接寻址寄存器间接寻址(Register Indirect Addressing)(Register Indirect Addressing) 寄存器中存放操作数的有效地址。寄存器中存放操作数的有效地址。 EA = EA = (R Ri i) ) 形式地址短,但可访问较大的内存空间。形式地址短,但可访问较大的内
30、存空间。 OP M Ri EA Ri . . EA 操作数操作数 内存内存 CPUIRPCR0R1MMI/O设备设备I/O接口接口操作数在操作数在内存中内存中 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统31 (6) (6)变址寻址变址寻址( (Indexed Addressing)Indexed Addressing) 有效地址有效地址 = = 变址寄存器的内容变址寄存器的内容 + + 形式地址形式地址( (位移量位移量) )。 EA = (Rx) + A EA = (Rx) + A 适用于对数据块操作适用于对数据块操作 操作数OP
31、 RXA主存储器ALURX变址值XEAIR 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统32CPUIRPCR0RxMMI/O设备设备I/O接口接口 E EA A = = ( (R Rx x) ) + + A A 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统33 (7) (7)基址寻址基址寻址( (Based Addressing)Based Addressing) 有效地址有效地址 = = 基址寄存器的内容基址寄存器的内容+ +形式地址形式地址( (位移量位移量) )。 EA
32、 = (Rb) + DEA = (Rb) + D 操作数OP RbD操作数主存储器ALURb基址值IR+D-D基址值 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统34 变址寻址与基址寻址的区别:变址寻址与基址寻址的区别: 变:变:通常由变址寄存器提供修改量,通常由变址寄存器提供修改量, 形式地址为基准地址,形式地址为基准地址, 面向用户面向用户( (例如向量运算例如向量运算) ); 基:基:基址寄存器提供基准地址,基址寄存器提供基准地址, 形式地址为位移量,形式地址为位移量, 面向操作系统面向操作系统( (例如程序的动态重定位)例如程
33、序的动态重定位)。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统35 EA=(PC)+D EA=(PC)+D 位移量位移量D D指出的是操作数和现行指令之间的相对位置。指出的是操作数和现行指令之间的相对位置。相对寻址相对寻址操作数OPD下条指令主存储器ALUPC指令地址IR操作数+D-DOP | D 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统36页面寻址页面寻址 将主存空间分页,可解决地址码位数与主存访问范围的矛盾。将主存空间分页,可解决地址码位数与主存访问范围的矛盾。 例
34、:某机主存为例:某机主存为6464K K,将其划分为将其划分为256256页,则页面地址从页,则页面地址从0000H HFFHFFH; 每页有每页有6464K/256=256K/256=256单元,页内单元序号从单元,页内单元序号从0000H HFFHFFH。第第0页页256个单元个单元第第1页页256个单元个单元000000FF010001FF020064K个单元个单元页内地址页内地址页面地址页面地址 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统37页面寻址又可以分成三种不同的方式:页面寻址又可以分成三种不同的方式:页面寻址页面寻址
35、1 1)基页寻址)基页寻址 EA = 0AEA = 0A 操作数操作数S S在零页面中。实际上就是直接寻址。在零页面中。实际上就是直接寻址。2 2)当前页寻址)当前页寻址 EA=(PC) EA=(PC)H HAA 操作数操作数S S与指令本身处于同一页面中。与指令本身处于同一页面中。3 3)页寄存器寻址)页寄存器寻址 页面地址取自页寄存器,页面地址取自页寄存器,与形式地址相拼接形成有效地址。与形式地址相拼接形成有效地址。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统38页面寻址页面寻址0页1页2页255页0页内地址页内地址操作数操作数
36、操作数页面号当前页面PCPCHPCL页寄存器地址0000H00FFH0100H01FFH0200H02FFHFF00HFFFFH0页内地址页面号主存储器(a)(b)(c)(d)主存主存主存页面寻址又可以分成三种不同的方式:页面寻址又可以分成三种不同的方式: 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统39指令寄存器指令寄存器主存储器主存储器OPA0页页1页页N-1页页指令指令所在页所在页指令指令所在页所在页操作数操作数PCHPCLPCH程序计数器程序计数器页内地址页内地址页面地址页面地址EA操作数操作数APCH操作数操作数38382F
37、852F2F38255页页64K以当前页寻址为例:以当前页寻址为例: 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统40存储器堆栈:内存中一个连续的存储区,按后进先出方式存取。存储器堆栈:内存中一个连续的存储区,按后进先出方式存取。 SPSP为栈顶指针为栈顶指针 基本操作:基本操作: 1) 1) 压入压入 2) 2) 弹出弹出 (10)(10)其它寻址其它寻址 位寻址:位寻址:能寻址到位,一般用于专门的位操作指令。能寻址到位,一般用于专门的位操作指令。 块寻址:块寻址:对连续的数据块进行寻址。对连续的数据块进行寻址。 一般要指明块首址和
38、块长一般要指明块首址和块长( (或或) )末址。末址。 堆栈寻址:堆栈寻址:由堆栈指针由堆栈指针SPSP隐含指定,不需要指令给出地址码。隐含指定,不需要指令给出地址码。 SPd1内存内存d2 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统411) 显式:在指令中设置专门的寻址方式字段。显式:在指令中设置专门的寻址方式字段。寻址方式的表示方式寻址方式的表示方式2) 隐式:由指令的操作码隐含约定址方式。隐式:由指令的操作码隐含约定址方式。 OP M A形式地址形式地址寻址方式寻址方式 OP A形式地址形式地址使用约定的使用约定的寻址方式寻址
39、方式一条指令中的各地址码可采用不同的寻址方式。一条指令中的各地址码可采用不同的寻址方式。 例如:例如:MOV AX,BXMOV AX,BX寄存器寻址寄存器寻址寄存器间接寻址寄存器间接寻址 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统42思考题:思考题: 第第3 3章习题章习题 7, 8, 167, 8, 161717作业:作业: 第第3 3章习题章习题 10, 1210, 12 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统433.3.4 3.3.4 变型或组合寻址方式变型或组
40、合寻址方式1.1.自增型寄存器间址和自减型寄存器间址自增型寄存器间址和自减型寄存器间址(1)(1)自增寻址自增寻址 ( (Ri)+Ri)+ EA=(Ri)EA=(Ri) Ri(Ri)+d Ri(Ri)+d 先确定先确定EAEA后递增后递增RiRi. .操作数内存内存Ri寻址后寻址后(2)(2)自减寻址自减寻址 -( -(Ri)Ri) Ri(Ri)-d Ri(Ri)-d EA=(Ri) EA=(Ri) 先递减先递减RiRi后确定后确定EAEA. . 操作数内存内存Ri寻址后寻址后 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统44(1)(
41、1)先变址后间址(前变址方式)先变址后间址(前变址方式) EA=(A+(Rx)EA=(A+(Rx), 操作数操作数 S=(A+(Rx)S=(A+(Rx)。 (2)(2)先间址后变址(后变址方式)先间址后变址(后变址方式) EA=(A)+(Rx)EA=(A)+(Rx), 操作数操作数 S=(A)+(Rx)S=(A)+(Rx)。 2.2.扩展变址方式扩展变址方式 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统45 EA =(Rb)+(Rx)+DEA =(Rb)+(Rx)+D其中:其中:RbRb为基址寄存器,为基址寄存器,RxRx为变址寄存器
42、,为变址寄存器,D D为位移量。为位移量。位移量位移量D D在指令一旦确定后不能再修改;在指令一旦确定后不能再修改;基址和变址寄存器中的内容可以改变。基址和变址寄存器中的内容可以改变。 3.3.基址变址寻址基址变址寻址 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统46常见寻址方式小结常见寻址方式小结寻址方式寻址方式通俗解释通俗解释(1)立即寻址立即寻址操作数在指令操作数在指令( (的地址字段的地址字段) )中。中。(2)寄存器寻址寄存器寻址操作数在操作数在 CPU 的某一寄存器中。的某一寄存器中。(3)寄存器间址寄存器间址操作数在内存
43、,其地址在操作数在内存,其地址在 CPU 的某一寄存器中。的某一寄存器中。(4)直接寻址直接寻址操作数在内存,其地址由指令直接给出。操作数在内存,其地址由指令直接给出。(5)间接寻址间接寻址操作数在内存, 指令中给出操作数地址的地址操作数在内存, 指令中给出操作数地址的地址 (操(操作数的地址也在内存) 。作数的地址也在内存) 。(6)变址、基址、变址、基址、相对寻址相对寻址操作数在内存,其内存地址为操作数在内存,其内存地址为 Rx或或 Rb 或或 PC 的值的值 + 指令中给的位移量。指令中给的位移量。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章
44、指令系统指令系统47本章重点:本章重点: 1. 1. 理解指令的基本格式和基本操作种类,理解扩展操理解指令的基本格式和基本操作种类,理解扩展操作码方法;作码方法; 2. 2. 掌握基本数据寻址方式和有效地址的确定方法,搞掌握基本数据寻址方式和有效地址的确定方法,搞清楚每一种基本寻址方式的特点;清楚每一种基本寻址方式的特点; 3. 3. 存储器堆栈的概念及堆栈的进、出栈操作存储器堆栈的概念及堆栈的进、出栈操作 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统483.4 3.4 堆栈与堆栈操作堆栈与堆栈操作 堆栈:堆栈:“后进先出后进先出”(
45、”(LIFO)LIFO)的存储区的存储区。3.4.1 3.4.1 堆栈结构堆栈结构 寄存器堆栈寄存器堆栈( (硬堆栈)硬堆栈) 存储器堆栈存储器堆栈( (软堆栈软堆栈) ) 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统49寄存器0寄存器1寄存器2寄存器k-1压入弹出栈顶b0bn-2bn-11.1.寄存器堆栈寄存器堆栈( (硬堆栈)硬堆栈) 可由可由移位寄存器移位寄存器组构成。(从图中纵向看)组构成。(从图中纵向看) 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统50 从主存中划
46、出一段区域来从主存中划出一段区域来作堆栈,栈底固定,栈顶浮动作堆栈,栈底固定,栈顶浮动。 由由堆栈指针寄存器堆栈指针寄存器SPSP指示指示当前栈顶的位置当前栈顶的位置。2.2.存储器堆栈存储器堆栈( (软堆栈软堆栈) ) 自底向上生成堆栈,栈底地址大于栈顶地址,通常栈指针自底向上生成堆栈,栈底地址大于栈顶地址,通常栈指针始终指向栈顶的满单元。始终指向栈顶的满单元。栈底栈底高地址高地址低地址低地址堆栈区堆栈区栈顶栈顶 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统51进栈操作(压入):进栈操作(压入): (SPSP)1SP 1SP 修改栈
47、指针修改栈指针 (A A)(SPSP) 将将A中的数据压入堆栈中的数据压入堆栈A现栈顶单元3.4.2 3.4.2 堆栈操作堆栈操作1 1FFFFFF2000SP原栈顶单元2000 2000 H H1 1FFF HFFF H 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统52出栈操作(弹出):出栈操作(弹出): (SPSP) A A 将栈顶内容弹出,送入将栈顶内容弹出,送入A A中中 (SPSP)+ 1 SP + 1 SP 修改栈指针修改栈指针2000SP1 1FFFFFFA1FFF原栈顶单元现栈顶单元1 1FFFFFF20003.4.2
48、 3.4.2 堆栈操作堆栈操作 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统53堆栈的应用:堆栈的应用:在一般计算机中,堆栈主要用来暂存中断断点、子程序调用时的在一般计算机中,堆栈主要用来暂存中断断点、子程序调用时的返回地址、状态标志及现场信息等,也可用于子程序调用时参数的传返回地址、状态标志及现场信息等,也可用于子程序调用时参数的传递等。递等。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统543.5 3.5 指令系统实例(侧重于指令系统实例(侧重于8086/80888086
49、/8088寻址方式)寻址方式) 3.5.0 3.5.0 与与8086/80888086/8088相关的预备知识相关的预备知识 1. 8086/80881. 8086/8088的结构的结构 总线接口部件总线接口部件( (BIU)执行部件执行部件( (EU) 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统553.5.0 3.5.0 与与8086/80888086/8088相关的预备知识相关的预备知识 2. 8086/80882. 8086/8088存储器的分段管理存储器的分段管理 分段管理的目的是使指令可以访问较大的内存空间。分段管理的目的
50、是使指令可以访问较大的内存空间。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统563.5.0 3.5.0 与与8086/80888086/8088相关的预备知识相关的预备知识 3. 3. 段寄存器段寄存器CSCS:代码段寄存器代码段寄存器DSDS:数据段寄存器数据段寄存器SSSS:堆栈段寄存器堆栈段寄存器ESES:附加段寄存器附加段寄存器 通常将需执行的程序各部分通常将需执行的程序各部分( (指令代码、数据、堆栈等指令代码、数据、堆栈等) )分别放在指分别放在指定的某个段中。当定的某个段中。当CPUCPU访问某个主存单元访问某个主存单
51、元( (如取指令或存取操作数如取指令或存取操作数) )时,时,就必须指明(或默认使用)哪个段寄存器提供该单元的段基值,并给出就必须指明(或默认使用)哪个段寄存器提供该单元的段基值,并给出该单元在这个段内的偏移量。该单元在这个段内的偏移量。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统573.5.1 8086/80883.5.1 8086/8088指令系统特征指令系统特征操作码:操作码:定长操作码,变长指令码。定长操作码,变长指令码。地址码:地址码:寄存器、立即、寄存器间址、基址、变址等寻址。寄存器、立即、寄存器间址、基址、变址等寻址。
52、 二地址指令系统。(一条指令里最多有两个地址)二地址指令系统。(一条指令里最多有两个地址)对于操作数在内存的寻址方式,对于操作数在内存的寻址方式,有效地址有效地址EA EA 物理地址!物理地址! 形式形式地址地址有效地址有效地址EA (16位位)物理地址物理地址(20位)位)段首址段首址 (20位位)+对于二地址指令:其中一个寻址方式可选,对于二地址指令:其中一个寻址方式可选, 另一个另一个只能是寄存器寻址只能是寄存器寻址。 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统583.5.2 3.5.2 寻址方式寻址方式 以二地址指令为例,指
53、令格式为以二地址指令为例,指令格式为 例如:例如: ADD BXADD BX,5 5 基本寻址方式基本寻址方式 汇编符号例子汇编符号例子 寻找操作数寻找操作数( (的地址的地址) )的过程的过程 寄存器寻址寄存器寻址 ADD ADD BXBX,5 EA = BX,5 EA = BX,即数据在寄存器中即数据在寄存器中 寄存器间址寄存器间址 ADD ADD BXBX,AX EA =,AX EA =(BXBX) 立即寻址立即寻址 ADD BX,ADD BX,5 5 操作数在指令中操作数在指令中 直接寻址直接寻址 ADD ADD 100100,AX EA = 100,AX EA = 100 间接寻址间
54、接寻址 - - 变变( (基基) )址寻址址寻址 ADD ADD BX+20BX+20,AX EA = (BX+20),AX EA = (BX+20) 自相对自相对 LOOP LOOP L1 L1 EA = (IP)+ EA = (IP)+ 位移量位移量 OPOPA1A1 A2A2 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统59 例:例: MOV AL,AH MOV AL,AH ; AL ; AL (AH) (AH) 8 8位位 SUB AX,BX SUB AX,BX ; AX ; AX (AX) - (BX) (AX) - (BX) 16 16位位 INC CX INC CX ; CX ; CX (CX) + 1 (CX) + 1 16 16位位 西南交通大学信息科学与技术学院 “计算机组成原理计算机组成原理B”教案 第第3 3章章 指令系统指令系统603.5.3 3.5.3 双操作数指令代码格式双操作数指令代码格式 MOD,R/MMOD,R/M:可指定多种寻址方式。例如可指定多种寻址方式。例如MOD=11MOD=11时为时为REGREG寻址(依据寻址(依据R/MR/M,W W)。)。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 玻璃吊桥led施工方案
- 弧形闸门专项施工方案
- 燃气工程改造施工方案
- 斜井隧道施工方案
- 水库钻孔注浆施工方案
- 涵洞水管架空施工方案
- 承接彩灯施工方案
- 小麦岛内部施工方案
- 电梯梯井施工方案
- 橡胶地面景观施工方案
- 引领学生了解物理科学的前沿与进展
- 初中八年级下学期班主任工作计划样文
- (完整word版)英语四级单词大全
- 无人机在物流配送的优化方案
- 智慧物流方案设计与实施赛题答案
- 双重血浆置换
- 全面深化改革体会研讨发言
- 产品质量检验确认单
- 数控机床故障诊断与维护实验指导书-实验报告
- 毕业设计(论文)-CK6140数控车床主传动系统设计
- T-CHAS 20-2-11-2022 医疗机构药事管理与药学服务 第2-11部分:临床药学服务 治疗药物监测
评论
0/150
提交评论