首页计算机计算机系统结构计算机组成原理 08 第3章第1讲 指令系统.ppt

08 第3章第1讲 指令系统.ppt

页数:24页文件大小:204.5 KB来源: 计算机组成原理ppt课件

本课件讲解指令的功能定义与格式划分、操作码的三种组织方案,以及立即数、直接、变址、相对、间接、基址与堆栈等寻址方式,并概述TEC-2000 16位机与8位机指令系统的组成。

第3章第1讲两项内容讲次标题页,确定操作数地址与下条指令地址的多种寻址方式
指令系统指令示意图,标注操作数地址、操作码等部件与信号,确定操作数地址与下条指令地址的多种寻址方式
计算机系统由硬件和软件两部分组成讲解页,硬件指由中央处理机、存储器以及外部设备等组成的实际装置
查看本课件的文字版(共 24 页,供检索与复制)

第1页:第3章第1讲两项内容

第3章第1讲两项内容

本页为结构/流程示意图,图中标注的主要部件与信号如下,重点体现确定操作数地址与下条指令地址的多种寻址方式。

  • 操作码

第2页:指令系统指令

指令系统指令

本页为结构/流程示意图,图中标注的主要部件与信号如下,重点体现确定操作数地址与下条指令地址的多种寻址方式。

  • 操作数地址
  • 操作码

第3页:计算机系统由硬件和软件两部分组成

计算机系统由硬件和软件两部分组成

硬件指由中央处理机、存储器以及外部设备等组成的实际装置。软件是为便于用户使用计算机而编写的各种程序,它实际上是由一系列机器指令组成的。

指令是用户使用计算机和计算机运行的最小的功能单位,一台计算机支持(或称使用)的全部指令构成该计算机的指令系统,它对计算机本身的硬件结构的复杂程度和运行性能,对用户完成程序设计的难易程度和工作效率,有非常重要的影响,必须对设计指令系统的工作给以足够的重视,慎重确定。

第4页:对指令系统的要求完备性

对指令系统的要求完备性:指令齐全,编程方便高效性:占内存少,运行省时规整性:指令与运算规则统一兼容性:新旧机指令软件兼容当前的计算机指令系统,从其构成的复杂和完备程度,或者说设计中追求的不同的目标区分,可分为CISC和RISC两类:RISC(Reduced Instruction Set Computer),通常称为精简指令系统的计算机,提供数目较少、格式与功能简单、运行高效的指令,追求的是计算机控制器实现简单,运行高速,更容易在单块超大规模集成电路的芯片内制做出来。CISC(Complex Instruction Set Computer),通常称为复杂指令系统的计算机,是相对于RISC一词而提出来的一种说法。

其特点是:指令条数多,格式多样,寻址方式复杂,每条指令的功能强,优点是汇编程序设计容易些,但计算机控制器的实现困难多,很多指令被使用的机会并不多。

第5页:寻址方式

寻址方式

本页为结构/流程示意图,图中标注的主要部件与信号如下,重点体现确定操作数地址与下条指令地址的多种寻址方式。

  • 操作数地址
  • 操作码

第6页:寻址方式

寻址方式(又称编址方式)指的是确定本条指令的数据地址及下一条要执行的指令地址的方法

不同的计算机系统,使用数目和功能不同的寻址方式,其实现的复杂程度和运行性能各不相同。有的计算机寻址方式较少,而有些计算机采用多种寻址方式。

通常需要在指令中为每一个操作数专设一个地址字段,用来表示数据的来源或去向的地址。在指令中给出的操作数的地址被称为形式地址,使用形式地址信息并按一定的规则计算出来的一个数值才是数据(或指令)的实际地址。

在指令的操作数地址字段,可能要指出:①运算器中的累加器的编号或专用寄存器名称(编号)②输入/输出指令中用到的I/O设备的入出端口地址③内存储器的一个存储单元(或一I/O设备)的地址有多种基本寻址方式和某些符合寻址方式,简介如下:寻址方式。

第7页:计算机的CPU中一般设置有一定数量

计算机的CPU中一般设置有一定数量的通用寄存器,用于存放操作数、操作数地址或中间结果

假如指令地址码字段给出某一通用寄存器的编号(地址),且所需的操作数就在这一寄存器中,这就是寄存器寻址方式;若该寄存器中存放的是操作数在内存储器中所在单元的地址,这就是寄存器间接寻址方式。可通过指令的操作码或另设一个字段,来区分这两种不同的寻址方式。

1、寄存器寻址、寄存器间接寻址例:RegNo.=5,使用5#累加器,此时5#累加器中的内容为7,可记为(R5)=7,对寄存器寻址方式,操作数就是这里的数值7对寄存器间接寻址,从内存7#单元读出来的数才是操作数。

第8页:立即数寻址所需的一个操作数

、立即数寻址所需的一个操作数在指令的地址字段部分直接给出

则Num即为操作数的值。适用于操作数固定的情况,提高了指令的执行速度,当该立即数的值限定为较小值(占用位数少)时,可在第一个指令字中直接给出,否则可在第二个指令字中给出。

第9页:在指令的地址码字段直接给出所需的操作数

在指令的地址码字段直接给出所需的操作数(或指令)在存储器中的地址

则Addr为操作数在存储器中的地址。或转移指令等用到的指令地址。

3、直接寻址例:Addr = 5718H,这里的H表示5718是16进制的值,可能用作下一条指令的地址;也可能用作操作数的地址,若[ 5718H ]= 3,即内存储器5718单元中的内容为3,则操作数就是这里的3。内存储器操作数。

第10页:操作数的地址由指定的变址寄存器

操作数的地址由指定的变址寄存器(由Reg指定)的内容和指令中的地址码(Disp)相加得到

4、变址寻址通用寄存器加法器操作数存储器例:Disp=18H,Reg=5,(R5)=5700H则操作数地址= 5718H便于对数组元素进行处理,是计算机中常用的一种寻址方式。

第11页:原码反码补码表示

操作数(或指令)的地址由程序计数器PC的内容(即当前执行指令的地址)和指令的地址码相加得到。5、相对寻址例:Disp = 48H(PC) = 5600H则实际地址= 5648H1).主要用于转移指令,对浮动程序很有用。

2).位移量可正可负,通常用补码表示。

第12页:指令的地址码字段给出的内容既不是操作数

指令的地址码字段给出的内容既不是操作数,也不是操作数的地址,而是操作数(或指令)地址的地址,这被称为间接寻址方式,多一次读内存储器的操作。6、间接寻址存储器操作数Addr1指令中的Addr可以用其他寻址方式给出,例如变址寻址,这就成为变址寻址与间接寻址的复合寻址方式。

第13页:在计算机中设置一个专用的基址寄存器

在计算机中设置一个专用的基址寄存器,操作数(或指令)的地址通过基址寄存器的内容和指令中的地址码相加得到。7、基址寻址基址寄存器加法器存储器操作数例:Disp= 18H,[BS]= 5700H则操作数地址=5718H主要用于为程序或数据分配存储区,对多道程序或浮动程序很有用,解决了程序在存储器中的定位和扩大寻址空间等问题。

第14页:主存储器

堆栈是内存储器中一块按“后进先出”原则进行读写的存储区,并通过一个专用的寄存器(称为堆栈指针SP)给出堆栈的栈顶(和次栈顶)地址完成数据的读写操作,故不必在指令中用操作数地址字段给堆栈地址。通常在读写操作的前后伴随有计算机自动(不是用户通过指令)修改SP内容的动作,以确保按正确的“后进先出”原则读写堆栈区。

例如:(SP)-1SP和AR,即SP的内容减1存回SP,并送内存地址寄存器,接下来才可以把数据写到堆栈中。完成一次读堆栈操作后,要接着执行(SP)+ 1SP的一次自动修改SP内容的操作。

8、堆栈寻址需要注意的是,指令长度可能是一个字,也可能是两个字或多个字,要看操作数地址字段的位数要求,由具体的情况决定。

第15页:单字指令仅用一个指令字

单字指令仅用一个指令字

双字指令要用两个指令字,此时第二个指令字的内容可能是立即数、一个直接地址或一个变址位移量。操作码条件码目的寄存器源寄存器I/O端口地址条件转移指令的偏移量直接数/内存地址/指令中变址偏移量6位2位4位4位TEC-2教学机的指令格式。

第16页:第一个指令字分为三个主要部分

第一个指令字分为三个主要部分

最高6位是操作码。从这个意义上讲,教学机的基本指令是固定长度的操作码结构,最多支持64条基本指令。

中间的两位,即第9、8两位是条件码。目前我们把它用作条件转移指令的判断条件。

最低的8位有多种用法:给出1或2个寄存器的编号,入/出端口的地址,或用于给出相对转移指令的偏移量。操作码条件码目的寄存器源寄存器I/O端口地址相对转移指令的偏移量直接数/内存地址/指令中变址偏移量8位2位4位4位TEC-2教学机的指令格式。

第17页:单字指令仅用一个指令字

单字指令仅用一个指令字

双字指令要用两个指令字,此时第二个指令字的内容可能是立即数、一个直接地址或一个变址位移量。TEC-2000教学机的指令格式操作码目的寄存器源寄存器I/O端口地址相对转移指令的偏移量直接数/内存地址/指令中变址偏移量8位4位4位。

第18页:第一个指令字分为三个主要部分

第一个指令字分为三个主要部分

最高8位是操作码。从这个意义上讲,教学机的基本指令是固定长度的操作码结构,最多支持256条基本指令。

最低的8位有多种用法:给出1或2个寄存器的编号,或入/出端口的地址,或用于给出相对转移指令的偏移量。操作码目的寄存器源寄存器I/O端口地址相对转移指令的偏移量直接数/内存地址/指令中变址偏移量8位4位4位TEC-2000教学机的指令格式。

第19页:TEC-2000教学计算机系统

TEC-2000教学计算机系统

本页为结构/流程示意图,图中标注的主要部件与信号如下,重点体现教学计算机的硬件组成、软件配置与支持的教学实验。

  • R0

第20页:操作码组织和汇编语句命名8位固定长度

操作码组织和汇编语句命名8位固定长度

本页为结构/流程示意图,图中标注的主要部件与信号如下,重点体现操作码字段的分组规则与汇编语句的命名约定。

  • 操作码
  • IR
  • R1

第21页:TEC-2000 16位机指令系统

教学机基本指令系统表(第21页)
指令格式汇编语句操作数个数CZVS指令分组功能说明
00000000 DRSRADD DR,SR2****ADR ←DR+SR
00000001 DRSRSUB DR,SR2****ADR ←DR-SR
00000010 DRSRAND DR,SR2****ADR ←DR and SR
00000011 DRSRCMP DR,SR2****ADR-SR
00000100 DRSRXOR DR,SR2*•••ADR ←DR xor SR
00000101 DRSRTEST DR,SR2****ADR and SR
00000110 DRSROR DR,SR2*•••ADR ←DR or SR
00000111 DRSRMVRR DR, SR2••••ADR ←SR
0000DEC DR1****ADR ←DR-100001001 DR
0000INC DR1****ADR ←DR+100001010 DR
0000SHL DR1*•••ADR,C ←DR*200001011 DR
0000SHR DR1*•••ADR,C ←DR /201000001 OFFSET JR ADR 1 • • • • A 无条件跳转

第22页:TEC-2000 16位机指令系统

教学机基本指令系统表(第22页)
指令格式汇编语句操作数个数CZVS指令分组功能说明
10000000 0000000JMPA ADR1••••B无条件跳到ADRADR(16位)
10000001 DRSRLDRR DR,[SR]2••••BDR ←[SR]
10000010 I/O PORTIN I/O PORT1••••BR0 ←[I/O PORT]
10000011 DRSRSTRR [DR],SR2••••B[DR] ←SR
00000000PSHF0••••BFLAG入栈
10000101 0000SRPUSH SR1••••BSR入栈
10000110 I/O PORTOUT I/O PORT1••••B[I/O PORT] ←R010000111 DR POP DR 1 • • • • B 出栈到DR
0000MVRD DR, DATA2••••BDR ←DATADATA(16位)
00000000POPF1****BFLAG ←出栈
00000000RET1••••B子程序返回
00000000CALA ADR1••••D调用子程序ADR(16位)

第23页:TEC-2000 8位机指令系统

教学机基本指令系统表(第23页)
指令格式汇编语句操作数个数CZVS指令分组功能说明
0000 DRSRADD DR,SR2****ADR ←DR+SR
0001 DRSRSUB DR,SR2****ADR ←DR-SR
0010 DRSRAND DR,SR2*•••ADR ←DR and SR
0011 DRSRCMP DR,SR2****ADR-SR
0100 DRSRMOV DR,SR2••••ADR ← SR
1001 00DRDEC DR1****ADR ←DR-11010 00DR SHR DR 1 *• • • A DR,C ←DR/21011 01DR SHL DR 1 *• • • A DR,C ←DR*21010 10IO IN IO port 1 • • • • A R0 ← [I/O port]

第24页:TEC-2000 8位机指令系统

教学机基本指令系统表(第24页)
指令格式汇编语句操作数个数CZVS指令分组功能说明
1011 00SRPUSH SR1••••BSR入栈
1011 01DRPOP DR1••••B出栈到DR
1011 10SRSTO SR1••••B[R9 R8] ← SR
1011 11DRLOD DR1••••BDR ← [R9 R8]
1101 DRMVRD DR, DATA2••••BDR ←DATA
1010PSHF0••••BFLAG入栈
1011POPF0****BFLAG ←出栈
1000JZ ADR1••••CZ=1跳到ADR
1001JNZ ADR1••••CZ=0跳到ADR
1010JC ADR1••••CC=1跳到ADR
1011JNC ADR1••••CC=0跳到ADR
1100JR ADR1••••C无条件跳到ADR
1100CALL0••••C调子程序[R11 R10]
1101RET0••••C子程序返回
1111JMP0••••D长跳转到[R11 R10]
顶部目录