精华内容
下载资源
问答
  • 指令系统

    千次阅读 2018-08-08 08:21:20
    1.指令系统:软件层和硬件层的接口及界面 2.指令系统设计原则:完备性 有效性 规整性 兼容性(向上向下,向左向右) 3.包括:数据传送指令 输入输出指令 算数运算指令 逻辑运算指令 系统控制指令 程序控制指令 4....

    1.指令系统:软件层和硬件层的接口及界面

    2.指令系统设计原则:完备性 有效性 规整性 兼容性(向上向下,向左向右)

    3.包括:数据传送指令 输入输出指令 算数运算指令 逻辑运算指令 系统控制指令 程序控制指令

    4.指令格式:指令是指挥计算机实现某个操作的命令
    操作码和地址码做成指令长度

    取指令:指令地址,指令长度
    指令译码:指令格式 操作码编码 操作数类型
    取操作数:地址码格式 寻址方式 操作数个事和存放方式
    执行:操作类型 标志和条件码
    存结果:结果数据位置
    取下一条指令:下条指令地址

    5.操作码的设计

    定长操作码:译码简单,但有信息多余
    可变操作码:操作码的位数随地址码的减少而增加,被大多数指令集采用,缩短指令长度 减少程序总位数 增加指令字所表示的操作信息

    6.指令格式设计的基本原则:指令尽量短  要有足够的操作码位数 指令编码必须具有唯一的解释  指令字长一个是字节的整数倍 均衡设计指令尽量规整 合理选择地址字段的个数

    7.地址码结构:地址个数越少 指令长度越短 指令功能越简单 所需指令条数越多 增加了程序复杂度和执行时间

    8.符号表示:
    OP:操作数
    Ai:地址码
    PC:程序计数器
    ACC:CPU中的寄存器,累加器

    9.定点数:小数点位置固定的数,可分为定点整数和定点小数
    定点整数的小数点在最右边,范围为0到2的n次方减一
    定点小数的小数点在符号位的后一位。范围是0到一减2的负n次方。

    10.零分为正零和负零,正零和负零的补码相同

    11.对尾数和阶码分贝编码,就可以表示一个浮点数了
    科学计数法十进制表示:小数点前一位是非0数

    12.IEEE 754浮点数标准:符号S   阶码e(整数) 尾数f(小数)
    符号:1表示负数,0表示正数
    规格化尾数最高位总是1,所以隐含表示,省1位,所以尾数精度=尾数位数加1
    单精度尾数:1+23bits    双精度尾数:1+52bits
    阶码:移码

    *移码:将每一个数值加上一个偏置常数(作用:便于浮点数加减运算时进行对阶操作)
    单精度规格化数阶码范围为-126到127

    13.浮点数的精度由尾数F的位数决定
    浮点数的表示范围有基数R和阶数E的位数决定
    阶码的位数和基数越大,表示的浮点数范围越大

    14.0的阶码和尾数都为0,符号位正负皆可
    正负无穷:阶码都为1,尾数为0,符号位为正表示正无穷,为负表示负无穷。

    15.单精度总位数为32位,阶码为8位,阶码编码为+127移码.
    双精度的总位数为64位,阶码为11位,阶码编码为+1023移码

    16.数据的存储方式:字节编址
    数据存放:大端方式,小端方式

    17.由于数据的存放方式不同,任何像音频,视频和图像等文件格式或处理都涉及字节的顺序问题,所以要发生字节交换,


    18.不同的数据存放时,有两种处理方式:按边界对齐和不按边界对齐。不按边界对齐增加了放存次数。

    19.MIPS指令格式:三种格式R,I,J。
    R型op  rs  rt  rd  shant  funct,用于寄存器,两个操作数都是寄存器的运算指令.
    I型:op rs rt immediate 运算指令:一个寄存器,一个立即数,load和store指令,条件分支指令
    J型:op target adress,无条件跳转指令

    op表示操作码;rs表示第一个源操作寄存器,rt表示第二个源操作寄存器,rd表示结果寄存器,shamt表示移位指令的位移量,functR型指令的op字段特定位000000,具体操作有funct字段给定,immediate立即数或load,store指令或分支指令的偏移地址,target adress无条件转移地址的第26位。


    20.汇编:把汇编源程序汇编成二进制机器代码
    反汇编:把二进制代码转化成汇编程序。
     

    展开全文
  • 指令系统4.1 指令系统的基本概念4.1.1 指令的基本格式1) 四地址指令2) 三地址指令3) 二地址指令4) 一地址指令5) 零地址指令4.1.2 定长操作码指令格式4.1.3 扩展操作码指令格式4.1.4 多字长指令格式4.1.5 指令格式的...

    https://gitee.com/fakerlove/computer-organization

    4. 指令系统

    4.1 指令系统的基本概念

    一条指令就是机器语言的一个语句,它是一组有意义的二进制代码,实际上每条指令的各个部分都可以看作是单个数字,将这些数字拼在一起就形成了指令。把指令的数字形式称为机器语言,这样的指令序列叫做机器代码。指令的基本格式如下:

    其中操作码指明了指令的操作性质及功能,地址码则给出了操作数的地址。

    指令的长度是指一条指令中所包含的二进制代码的位数,它取决于操作码字段的长度、操作数地址的个数及长度。指令长度与机器字长没有固定的关系,可以等于机器字长,也可以大于或小于机器字长。通常,把指令长度等于机器字长的指令称为单字长指令,指令长度等于半个机器字长的指令称为半字长指令,指令长度等于两个机器字长的指令称为双字长指令。

    在一个指令系统中,若所有指令的长度固定,则称为定长指令结构。若各种指令的长度随指令功能而异,则称为变长指令结构。定长指令结构系统控制简单,但不够灵活,变长结构指令系统灵活但控制较复杂。

    4.1.1 指令的基本格式

    1) 四地址指令

    其指令格式如下:

    指令含义:(A1) OP (A2) → A3,A4=下条将要执行指令的地址。

    符号含义:OP 为具体的操作,Ai表示地址,(Ai)表示存放于该地址的内容。执行一条四地址的双操作数运算指令,共需访问 4 次主存:第一次取指令本身;第 2 次取第一操作数;第 3 次取第二操作数;第 4 次保存运算结果。

    若指令字长为 32 位,操作码占 8 位,4 个地址码字段各占 6 位,则指令操作数的直接寻址范围为 26=64。

    2) 三地址指令

    其指令格式如下:

    指令含义:(A1) OP (A2) → A3,(PC) + 1 → PC(隐含)

    符号含义:OP 为具体的操作,Ai表示地址,PC 为程序计数寄存器,用于存放下一条指令的地址,从而消除四地址指令中的 A4,形成更短的三地址指令。

    执行一条三地址的双操作数运算指令,也需访问 4 次主存:第一次取指令本身;第 2次取第一操作数;第 3 次取第二操作数;第 4 次保存运算结果。

    若指令字长为 32 位,操作码占 8 位,3 个地址码字段各占 8 位,则指令操作数的直接寻址范围为 28=256。

    3) 二地址指令

    其指令格式如下:

    指令含义:(A1) OP (A2) → A1,(PC) + 1 → PC(隐含)

    符号含义:A1为目的操作数地址,A2为源操作数地址。

    执行一条二地址的双操作数运算指令,共需访问 4 次主存:第一次取指令本身;第 2次取目的操作数;第 3 次取源操作数;第 4 次保存运算结果。并且源操作数地址中原存的内容被破坏了。

    若指令字长为 32 位,操作码占 8 位,两个地址码字段各占 12 位,则指令操作数的直接寻址范围为 212=4K。

    二地址指令有两个操作数,这些操作数并不一定都在主存中,往往有一个或两个在通用寄存器中,这样构成不同的类型,详见后面的二地址指令的分类。当操作数放在通用寄存器中时,每个通用寄存器有一个编号,需要指定相应的寄存器编号即可。

    4) 一地址指令

    其指令格式如下:

    指令含义:(ACC) OP (A1) → ACC,(PC) + 1 → PC(隐含)

    符号含义:ACC 为累加寄存器。

    执行一条一地址的双操作数运算指令,共需访问两次主存:第一次取指令本身;第 2次取第二操作数。

    若指令字长为 32 位,则操作码占 8 位,一个地址码字段则占 24 位,指令操作数的直接寻址范围为 224=16M。

    5) 零地址指令

    其指令格式如下:

    指令含义:无地址码。例如,空操作(NOP)、停机(HLT)、子程序返回(RET)和中断返回(IRET)等,这类指令没有地址码,其操作数的地址隐含在堆栈的栈顶指针 SP 中。

    参加的两个操作数来自于堆栈的栈顶和次堆栈栈顶

    例如,零地址加法指令仅用在堆栈计算机中,操作数和结果都保存在堆栈中,参与加法运算的两个操作数隐含地从堆栈顶部弹出,送到运算器中进行运算,运算的结果再隐含地压入堆栈。所有这些指令都会执行(PC)+1→PC。

    4.1.2 定长操作码指令格式

    指令系统中的每一条指令都有一个唯一的操作码,指令不同,其操作码的编码也不同。所谓定长操作码指令格式是指操作码字段的位数和位置是固定的。

    假定指令系统共有 m 条指令,指令中操作码字段的位数为 N 位,m 和 N 有如下关系式:

    m≤2N,即 N≥log2m

    根据指令格式中的地址码的个数可将指令分为零地址指令、一地址指令、二地址指令、三地址指令和多地址指令等。

    指令字长度等于机器字长度的指令,称为单字长指令。指令字长度等于两个机器字长度的指令,称为双字长指令

    4.1.3 扩展操作码指令格式

    扩展操作码指令格式就是操作码的长度不固定,操作码的长度随地址码个数的减少而增加,不同的地址数的指令可以具有不同长度的操作码。这样在满足需要的前提下,有效地缩短了指令字长。

    在设计操作码指令格式时,必须注意以下两点:

    ☆ 不允许短码是长码的前缀,即短操作码不能与长操作码的前面部分的代码相同。

    ☆ 各条指令的操作码一定不能重复。

    通常情况下,对使用频率较高的指令,分配较短的操作码,而对使用频率较低的指令,

    分配较长的操作码,从而尽可能减少指令译码和分析的时间。

    例题

    【例 6.1】 假设指令字长为 16 位,操作数的地址码为 6 位,指令有零地址和一地址两种格式。

    (1)设操作码固定,零地址指令有 512 种,则一地址指令最多有几种?

    (2)采用扩展操作码技术,零地址指令有 512 种,则一地址指令最多有几种?

    解:

    (1)对于一地址指令,操作码长度=16-6=10,这 10 位操作码可有 $2^{10}=1024 $种操作。由于操作码固定,也就是说零地址和一地址的操作码长度均为 10 位,则除去零地址指令 512种,剩下一地址指令最多 1024-512=512 种。

    (2)采用扩展操作码技术,操作码位数可变,则一地址和零地址的操作码长度分别为10 和 16 位。可见一地址指令操作码每减少一种,就可多构成 262^6种零地址指令操作码。

    设一地址指令有 X 种,则零地址指令最多有(210X)×26(2^{10}-X)×2^6种,

    依题意:

    (210X)×26=512(2^{10}-X)×2^6=512

    所以,X=1016,即此种情况下,一地址指令最多有 1016 种。

    本例中第(1)题操作码指令属于定长操作码指令格式,第(2)题属于扩展

    操作码指令格式。考生应领会两种指令格式的区别。

    4.1.4 多字长指令格式

    由于机器数据字长不同,每台机器处理的数据字长也不统一。为了扩大寻址空间,可以采用两个字长或多个字长来存放一个指令字。

    • 双字指令

      用两个机器字来存放的指令称为双字指令。若第一个指令字的操作数地址字段中存放得下,可把该数据安排在第一个指令字中,则在读出指令的同时也得到相关数据;否则只能将其存放在指令的第二个指令字中。例如,若机器字长为 16 位,设计双字指令格式如下:

    • 三字指令

    • 用三个机器字来存放的指令称为三字指令。

    4.1.5 指令格式的优化与设计

    指令格式的优化设计的主要目标有两个:一是节省程序的存储空间;二是指令格式要尽量规整,以减少硬件译码的复杂程度。

    利用哈夫曼压缩思路,根据每类指令的使用频度,使用频度高的指令的操作码用较短的二进制位来表示,使用频度较低的指令的操作码用较长的二进制位来表示,使得平均二进制位数变短。

    求哈夫曼编码的过程如下:

    构造哈夫曼树。将所有使用频度值作为树的叶子节点,找出两个权值最小的相加,相加后的值作为新节点的权值,放入其中再作比较,继续用两个权值最小的节点相加,形成一个新节点,重复以上过程,直至根节点。

    哈夫曼编码。按照二叉树左 1 右 0 的原则,在哈夫曼树上标出。然后从根节点到叶子节点的路径上的二进制符号即为该叶子节点对应的哈夫曼编码,将其作为该类指令的操作码。

    4.2 指令的寻址方式

    4.2.1 有效地址的概念

    指令的地址码字段并不一定代表操作数的真实地址,把它称为形式地址,记为 A。操作数的真实地址称为有效地址,记为 EA,它是由寻址方式和形式地址共同确定的。

    所谓寻址方式,就是寻找指令或操作数的有效地址的方式,也就是指确定本条指令的数据地址以及下一条将要执行的指令地址的方法。寻址方式分为指令寻址和数据寻址两大类。

    4.2.2 数据寻址和指令寻址

    1)指令寻址

    指令寻址分为顺序寻址和跳跃寻址两种:

    ☆ 顺序寻址。通过程序计数器 PC 加 1,自动形成下一条指令的地址。

    ☆ 跳跃寻址。通过转移类指令实现。例如,对于 JMP 7 指令,无论在什么位置,它执行完后,便无条件地将 7 送至 PC,跳过其他指令,直接执行第 7 条指令。

    2)数据寻址

    数据寻址方式较多,为了区分各种方式,在指令中通常设一字段,用来指明属于哪种寻址方式,由此可知指令的格式如图 6.2 所示。

    4.2.3 常见数据寻址方式

    1) 立即寻址

    立即寻址的方式是:操作数本身设在指令字内,即形式地址 A 不是操作数的地址而是操作数本身,又称之为立即数。数据是采用补码形式存放的,如图 6.3 所示,图中“#”表示立即寻址特征。

    特点:指令在执行阶段不访存,但 A 的位数限制了立即数的范围。

    立即寻址通常用于对某寄存器或主存单元赋初值。

    2) 直接寻址

    直接寻址的方式是:指令字中的形式地址 A 就是操作数的真实地址 EA,即 EA=A。如图 6.4 所示。

    特点:简单,只访问一次主存,但 A 的位数限制了操作数的寻址范围,例如 A 为 8 位,则寻址范围为 28=256 个存储单元,相对主存空间而言,这个范围太小了。

    3) 隐含寻址

    隐含寻址的方式是:操作数隐含在操作码或某个寄存器中。例如,一地址格式的加法指令只给出一个操作数的地址,另一个操作数隐含在累加器 ACC 中,

    特点:有利于缩短指令字长,但需要增加硬件。

    4) 间接寻址

    间接寻址的方式是:指令中的形式地址不直接指出操作数的地址,而是指出操作码有效地址所在的存储单元地址,也就是说有效地址是由形式地址间接提供的,称为间接寻址,即 EA=(A),如图 6.6 所示,它是一次间接寻址,还可以有多次间接寻址。

    例如,若 A 为 8 位,直接寻址范围为 2^8,一次间接寻址的寻址范围可达 28×28=2^16。

    特点:采用间接寻址扩大了寻址范围,但指令在执行阶段需要多次访存,一次间接寻址需要访问主存 2 次,两次间接寻址需要访问主存 3 次,依次类推,n 次间接寻址需要访问主存 n+1 次。

    5) 寄存器寻址

    寄存器寻址的方式是:在指令字中直接给出寄存器的编号,即 EA=Ri,其操作数在由Ri所指的寄存器内。

    特点:可以减少指令字的长度,指令执行阶段不访存,只访问寄存器,速度快,但需要利用寄存器,而计算机中的寄存器个数有限。

    6) 寄存器间接寻址

    寄存器间接寻址的方式是:寄存器 Ri中不是操作数,而是操作数所在主存单元的地址,即 EA=(Ri)。

    特点:与一般间接寻址相比速度更快,但和寄存器寻址相比,指令的执行阶段需要访存(操作数在主存中)。

    7) 基址寻址

    基址寻址的方式是:设有基址寄存器 BR,其操作数的有效地址 EA 等于指令字中的形式地址与基址寄存器 BR 中的内容(称为基地址)相加,即 EA=A+(BR)。

    有时,基址可放在通用寄存器中,这样由用户指出是哪个通用寄存器存放基址,例如,以下指令格式指出基址存放在 Ri通用寄存器中:

    特点:扩大寻址范围(因为基址寄存器的位数可以大于形式地址 A 的位数),适合多道程序设计,但需要增加硬件。

    通常基址寄存器BR中的内容完全由操作系统或管理程序确定,也就是说基址寄存器是面向操作系统的,用户不能随意改变。

    8) 变址寻址

    变址寻址的方式是:其有效地址 EA 等于指令字中的形式地址 A 与变址寄存器 IX 的内容相加之和,即 EA=A+(IX)。IX 是专用的变址寄存器,也可以采用通用寄存器作为变址寄存器。

    特点:扩大寻址范围(前提是变址寄存器的位数大于形式地址 A 的位数),便于数组运算等处理,但需要增加硬件。

    变址寻址和基址寻址的区别是,变址寄存器IX中的内容由用户给定,也就是说变址寄存器是面向用户的。

    9) 相对寻址

    相对寻址的方式是:有效地址是将程序计数器 PC 的内容(即当前指令的地址)与指令字中的形式地址 A 相加而成,即 EA=(PC)+A。

    对于JMP A的转移指令而言,每当CPU从存储器中取出一个字节时,会自动执行(PC)+1→PC,若该转移指令的地址为X,且占 2 个字节,在取出该指令后,PC的值会增 2,从而PC的值变为X+2,这样在执行完该指令后会自动跳转到X+2+A的地址继续执行。

    特点:转移地址不固定,可随 PC 值的变化而定,因而无论程序在主存中的哪些区域都可正确执行,有利于编写浮动程序。

    10) 堆栈寻址

    堆栈寻址的方式是:计算机中设有堆栈,操作数只能从栈顶地址指示的存储单元中存或取,可视为一种隐含寻址。

    特点:无主存访问,访问堆栈时不需要给出要访问堆栈单元的地址,但应用有限。

    名称 用途 缺点 优点 访存次数
    立即寻址 立即寻址通常用于对某寄存器或主存单元赋初值 A 的位数限制了立即数的范围。 指令在执行阶段不访存, 0
    直接寻址 A 的位数限制了操作数的寻址范围 简单 1
    间接寻址 采用间接寻址扩大了寻址范围, 指令在执行阶段需要多次访存, 一次间接寻址需要访问主存 2 次,两次间接寻址需要访问主存 3 次,依次类推n 次间接寻址需要访问主存 n+1 次
    隐含寻址 加法指令,PUSH指令,简化地址结构 但需要增加硬件。 有利于缩短指令字长, 0
    寄存器寻址 缩短指令中的某个地址段的位数 可以减少指令字的长度,指令执行阶段不访存,只访问寄存器,速度快, 但需要利用寄存器,而计算机中的寄存器个数有限。 0
    寄存器间接寻址 1
    基址寻址 适合多道程序设计 扩大寻址范围 但需要增加硬件。 1
    变址寻址 for 循环 扩大寻址范围,便于数组运算等处理, 但需要增加硬件。 1
    相对寻址 有利于编写浮动程序。 转移地址不固定,可随 PC 值的变化而定, 1
    堆栈寻址 0

    PC+1---->PC, PC地址添加的1,取决于指令长度,按字节编址,指令长度为 4B ,PC=PC+4,指令长度为1B,PC=PC+1

    32位机,按字编址,指令长度4B,PC=PC+1,有区别注意

    【例 6.2】 一台计算机字长为 16 位,按字节编址,其指令字长为 16 位,第一个字节(高字节)包括操作码(5 位)和寻址方式 m(3 位),第二个字节(低字节)是地址码。如要执行的指令放在主存 100、101 两个字节中,指令 LOAD m A 表示从主存单元取数,送入累加器 ACC 中。ACC、变址寄存器 IX、程序计数器 PC 均为 8 位,如图 6.7 所示,求在立即寻址、直接寻址、间接寻址、相对寻址和变址寻址方式下指令完成时,ACC 的内容是什么?

    解:(1)在立即寻址方式下,指令中直接给出操作数,放在地址码字段中,A=300,而LOAD m A 指令用于将 A 数据送入 ACC 中,即 A→ACC,所以(ACC)=A=300。

    (2)在直接寻址方式下,EA=A=300,而 LOAD m A 指令用于将(EA)→ACC,所以

    (ACC)=(EA)=(300)=102。

    (3)在间接寻址方式下,A=300,EA=(A)=(300)=102,LOAD m A 指令用于将(EA)→ACC,所以(ACC)=(EA)=(102)=200。

    (4)在相对寻址方式下,A=300,EA=(PC)+A=100+300=400,而 LOAD m A 指令用于将(EA)→ACC,所以(ACC)=(EA)=(400)=500。

    (5)在变址寻址方式下,A=300,EA=(IX)+A=200+300=500,而 LOAD m A 指令用于将(EA)→ACC,所以(ACC)=(EA)=(500)=600。

    11)寄存器种类

    总共有14个16位寄存器,8个8位寄存器。

    通用寄存器:
    • 数据寄存器:

      AH(8位) AL(8位) AX(16位) (AX和AL又称累加器)

      BH(8位) BL(8位) BX(16位) (BX又称基址寄存器,唯一作为存储器指针使用寄存器)

      CH(8位) CL(8位) CX(16位) (计数器,CX用于字符串操作,控制循环的次数,CL用于移位)

      DH(8位) DL(8位) DX(16位) (数据,DX一般用来做32位的乘除法时存放被除数或者保留余数)

    • 指针寄存器:

      SP 堆栈指针 (存放栈顶地址)

      BP 基址指针 (存放堆栈基址偏移)

    • 变址寄存器:

      主要用于存放某个存储单元地址的偏移,或某组存储单元开始地址的偏移,

      即作为存储器(短)指针使用。作为通用寄存器,它们可以保存16位算术逻辑运算中的操作数和运算结果,有时运算结果就是需要的存储单元地址的偏移.

      SI 源地址 (源变址寄存器)

      DI 目的地址 (目的变址寄存器)

    控制寄存器:
    • IP 指令指针

    • FLAG 标志寄存器

      ① 进位标志 CF,记录运算时最高有效位产生的进位值。

      ② 符号标志 SF,记录运算结果的符号。结果为负时置1,否则置0。

      ③ 零标志  ZF,运算结果为0时ZF位置1,否则置0。

      ④ 溢出标志 OF,在运算过程中,如操作数超出了机器可表示数的范围称为溢出。溢出时OF位置1,否则置0。

      ⑤ 辅助进位标志 AF,记录运算时第3位(半个字节)产生的进位值。

      ⑥ 奇偶标志 PF,用来为机器中传送信息时可能产生的代码出错情况提供检验条件。当结果操作数中1的个数为偶数时置1,否则置0。

    段寄存器

    CS 代码段 IP

    DS 数据段

    SS 堆栈段 SP BP

    ES 附加段

    4.2.4 指令类型

    一、按功能划分

    1、数据处理指令:包括算术运算指令、逻辑运算指令、移位指令、比较指令等。

    2、数据传送指令:包括寄存器之间、寄存器与主存储器之间的传送指令等。

    3、程序控制指令:包括条件转移指令、无条件转移指令、转子程序指令、循环指令等。

    4、输入输出指令:包括各种外围设备的读、写指令等。有的计算机将输入输出指令包含在数据传送指令类中。

    5、状态管理指令:包括诸如实现置存储保护、中断处理等功能的管理指令。

    二、向量指令和标量指令:有些大型机和巨型机设置功能齐全的向量运算指令系统。向量指令的基本操作对象是向量,即有序排列的一组数。

    三、特权指令和用户指令:在多用户环境中,某些指令的不恰当使用会引起机器的系统性混乱。如置存储保护、中断处理、输入输出等这类指令,均称为特权指令,不允许用户直接使用。

    转移指令,子程序调用,返回指令用于解决变动程序只能指令执行次序需求

    具体讲解

    1)算术逻辑运算指令

    用于支持二进制加法、减法、比较和求补码等基本的算术运算。通常情况下,根据算术运算的结果设置程序状态字 PSW 的各个状态位,一般有 Z(结果为 0)、N(结果为负)、V(结果溢出)、C(产生进位或借位)4 个状态位。当满足括号内所指出的条件时,相应位置成 1,否则为 0。例如,结果为 0 时,Z=1,否则 Z=0,依次类推。

    2)移位操作指令

    用于支持移位操作。可分为算术移位、逻辑移位和循环移位三种,可以将操作数左移或右移若干位。

    3)数据传送指令

    用于实现寄存器与寄存器、寄存器与存储器(主存)单元、存储器单元与存储器单元之间的数据传送。一次可以传送一个数据或一批数据。

    4)转移类指令

    用于控制程序流的转移,分为无条件转移和条件转移等类型。

    ☆ 无条件转移指令不受任何条件的约束,直接把程序转移到指令所规定的目的地,在那里继续执行。

    ☆ 条件转移指令则根据计算机处理结果来决定程序如何执行,它先测试根据处理结果设置的条件码,然后根据所测试的条件是否满足来决定是否转移。通常情况下,利用算术指令建立的条件码 N、Z、V、C 来控制程序的执行方向,实现程序的分支。

    4.3 CISC 和 RISC 技术

    4.3.1 什么是 CISC 和 RISC

    指令系统的发展有两种截然不同的方向,一种是增强原有指令的功能,设置更为复杂的新指令实现软件功能的硬化;另一种是减少指令种类和简化指令功能,提高指令的执行速度。前者称为复杂指令集计算机(CISC),后者称为精简指令集计算机(RISC)。

    4.3.2 CISC 的特点

    CISC 的中心思想是在指令系统中增加更多、更复杂的指令,以适应不同应用领域的需要。其主要特点如下:

    ☆ 指令系统复杂庞大,指令数目一般为 200~300 条。

    ☆ 指令长度不固定,指令格式多,寻址方式多。

    ☆ 可以访存的指令不受限制。

    ☆ 各种指令使用频度相差很大。

    ☆ 各种指令执行时间相差很大,大多数指令需要多个时钟周期才能完成。

    ☆ 控制器大多数采用微程序控制。

    ☆ 难以用优化编译生成高效的目标代码程序。

    4.3.3 RISC 的特点

    RISC 的中心思想是要求指令系统简化,尽量使用寄存器-寄存器操作指令。其主要特点如下:

    ☆ 选取使用频度较高的一些简单指令复杂指令的功能由简单指令的组合来实现。

    ☆ 指令长度固定,指令格式种类少,寻址方式种类少。

    ☆ 只有 Load/Store(取指/存数)指令访存,其余指令的操作在寄存器之间进行。

    ☆ CPU 中有多个通用寄存器。

    ☆ 控制器采用组合逻辑控制。

    ☆ 采用流水技术,大部分指令在一个时钟周期内完成。

    ☆ 采用优化了的编译程序。

    RISC机一定是流水CPU,而流水CPU不一定是RISC机。

    4.3.4 RISC 和 CISC 的比较

    RISC 和 CISC 的比较如下:

    ☆ RISC 更能充分利用 VLSI 芯片的面积。CISC 机的控制器大多采用微程序控制,其控制存储器在 CPU 芯片内所占的面积为 50%以上,而 RISC 机控制器采用组合逻辑控制,其硬布线逻辑只占 CPU 芯片面积的 10%左右。

    ☆ RISC 更能提高运算速度。RISC 机的指令数、寻址方式和指令格式种类较少,又设有多个通用寄存器,并适合流水线工作,所以运算速度更快,大多数指令在一个时钟周期内完成。

    ☆ RISC 便于设计,可降低成本,提高可靠性。RISC 机指令系统简单,所以机器设计周期短;其逻辑简单,所以可靠性高。

    ☆ RISC 有利于编译程序代码优化,编译程序容易选择更有效的指令和寻址方式。

    ☆ RISC 不易实现指令系统兼容。从指令系统兼容性来看,CISC 大多能实现软件兼容,即高档机包含了低档机的全部指令,并可加以扩充。但 RISC 机简化了指令系统,指令数量少,格式也不同于老机器,因此大多数 RISC 机不能与老机器兼容。

    CISC RISC
    指令系统 复杂 简单
    指令数目 大于200条 小于100条
    指令字长 不固定 固定
    访存储 不加限制 Load/Store
    指令流水线 可以通过一定方式实现 必须实现
    控制方式 微程序 组合逻辑
    展开全文
  • 计算机指令系统

    千次阅读 2020-05-27 12:01:48
    计算机指令系统性的发展,指令系统的性能要求,指令格式,操作数类型,指令和数据的寻址方式。

    指令系统的发展和性能要求

    1.1指令系统的发展

    程序一一用于解决实际问题的一系列的指令;
    指令一一使计算机执行某种操作的命令
    从组成的层次结构来说,计算机的指令可分为如下3类:

    • 微指令:微程序级的命令,它属于硬件;
    • 机器指令(指令):可完成一个独立的算术或逻辑运算;
    • 宏指令:由若干条机器指令组成的软件指令,它属于软件

    指令系统: 一台计算机中所有机器指令的集合,指令系统的格式和功能直接影响机器的硬件结构、软件系统、以及机器的适用范围。

    计算机指令系统的发展过程:
    ● 50年代:只有定点加减、逻辑运算、数据传送、转移等十几至几十条指令。
    ● 60年代后期:增加了乘除运算、浮点运算、十进制运算、字符串处理等指令,指令数目多达一二百条,寻址方式也趋多样化,出现了系列计算机
    ● 70年代末期:复杂指令系统计算机(CISL)、精简指令系统计算机(RSC),早期的X86处理器(486之前)都是CISL指令系统,奔腾系列CPU使用了RSC和CC构架相结合的办法;

    系列计算机:
    基本指令系统、基本体系结构相同的一系列计算机,不过具体的器件、结构和性能都不会完全相同,一般新机种在各方面要优于旧机种。一个系列往往有多种型号,各型号计算机的指令系统是向下兼容的,新机种的指令系统包含旧机种的全部指令,如 Pentiu系列PC机。

    CISC (complex instruction set computer) 采用复杂的的指令系统,来达到增强计算机的功能、提高机器速度的目的
    CISC指令系统的特点:
    1.指令系统复杂庞大,指令数目多
    2.指令格式多,字长不固定,多种寻址方式;
    3.可访存指令不受限制;
    4.各种指令的执行时间相差很大;
    5.大都采用微程序控制器;

    RISC (Reduced instruction set computer) 从简化指令系统和优化硬件设计的角度来提高系统的性能与速度。
    RISC指令系统的主要特点:
    1.选取使用频率高的简单指令;
    2.指令长度固定,指令格式少,寻址方式种类少
    3.采用流水线技术
    4.使用较多的通用寄存器,减少访存;
    5.控制器以组合逻辑控制为主;
    6.采用优化编译技术;

    1.2 指令系统性能的要求
    指令系统的性能决定了计算机的基本功能,它的设计直接关系到计算机的硬件结构和用户的需要。
    一个完善的指令系统应满足如下四方面的要求:
    ①.完备性常用指令齐全,编程方便;
    ②.有效性程序占用内存少,运行速度快;
    ③.规整性指令和数据的使用规则统一,易学易记;
    ④.兼容性:同一系列的低档计算机的程序能够在新的高档计算机上运行;

    指令系统的规整性要求: 规整性包括对称性、匀齐性、指令格式和数据格式的一致性三方面的要求。
    1.对称性:所有的指令都可使用各种寻址方式
    2.匀齐性:一种操作性质的指令可以支持各种数据类型
    3.指令格式和数据格式的一致性:指令长度和数据长度有一定的关系,以方便处理和存取

    1.3 低级语言与硬件结构的关系
    ● 低级语言: 机器语言、汇编语言,是一种面向机器的语言,和具体机器的指令系统密切相关。
    ● 高级语言与低级语言的比较如表所示:

    比较内容 高级语言 低级语言
    1 对机器独立的程度 独立 不独立
    2 编制程序的难易程度
    3 编制程序所需的时间 较长
    4 程序执行时间 较长
    5 编译过程对计算机资源的要求
    对程序员的训练要求 高级语言 低级语言
    通用算法 需要 需要
    语言规则 了解 较多了解
    硬件知识 不需要 需要

    指令格式

    指令的一般格式:
    指令字(简称指令):表示一条指令的机器字。
    指令格式:指令字用二进制代码表示的结构形式,由操作码字段和地址码字段组成。
    在这里插入图片描述
    操作码字段: 表征指令的操作特性与功能
    地址码字段: 通常指定参与操作的操作数的地址。

    2.1 操作码
    操作码字段的位数取决于指令系统的规模;
    操作码的类型:

    • 固定长度的操作码:
      操作码字段为4位,则指令系统中的指令数目为24=16条。
      ◆特征:所有指令长度均相同。
      ◆优点:控制简单,速度快,适用于指令条数不多的场合
    • 可变长度的操作码
      ◆特征:利用操作码扩展技术将操作码扩展到地址码字段,使各类指令的操作码长度不相同;
      ◆优点:充分利用软硬件资源,适用于大规模的指令系统。

    2.2 地址码
    一条指令格式中有几个地址码字段,就称为是几地址指令;

    • 零地址指令:
      在这里插入图片描述
      ①无任何操作数运算。(如NOP、HALT等指令)。
      ②单操作数运算:隐含一个操作数,如Acc。(如CBW指令)
      OP (Acc) → Acc

    • 一地址指令
      在这里插入图片描述
      ①单操作数运算:OP (A1) → A1(如INC指令)
      ②双操作数运算:隐含一个操作数,如Acc
      A(cc) OP (A1)→Acc/A1 (如MUL指令)

    • 两地址指令
      在这里插入图片描述
      功能:(A1) OP (A2) → A1 (如ADD、XOR等指令)

    • 三地址指令
      在这里插入图片描述
      功能:(A1) OP (A2) → A3

    • 多地址指令(如四地址)
      这类指令功能强,一般用高档小型机或中大型机,用于实现成批数据处理,字符串处理、向量或矩阵运算指令等

    两地址指令的分类:
    在这里插入图片描述

    • 根据操作数的物理位置分:
      存储器-存储器(SS)型指令
      A1、A2均为存储单元;
      这类指令的操作时都涉及到内存单元,参与操作的数都放在内存内。
      寄存器-寄存器(RR)型指令
      A1、A2均为寄存器;
      这类指令执行过程中,需要多个通用寄存器或个别专用寄存器,从寄存器中取操作数,把操作数结果存放到另一个寄存器中,执行时不需要访问内存。
      寄存器-存储器(RS)型指令
      A1、A2中一个为寄存器,一个为存储单元;
      执行此类指令时,既要访问内存单元,又要访问寄存器。

    • 指令的操作码扩展技术
      一个指令系统中,若操作码长度固定,且指令格式不同
      指令格式如图:
      在这里插入图片描述
      操作码字段长度取决于指令系统中的指令总数目,地址码较少的指令,编码浪费。

      操作码扩展
      对于不需要某个地址码的指令,把它们的操作码扩充到该地址字段;既充分利用指令字的各字段,又在不增加指令长度的情况下扩展操作码的长度;
      举例:设某指令长16位,包括4位基本操作码字段和3个4位地址码字段。
      在这里插入图片描述
      ① 若全是三地址指令,则最多能有多少条指令?
      操作码为4位的,则指令条数为2<sup>4</sup>=16。

      ② 若三地址指令需15条,两地址指令需15条,单地址指令需15条零地址指令需16条应如何安排?
      可使用操作码扩展技术,缩短固定操作码长度
      在这里插入图片描述
      ① 为了缩短指令的平均长度,应用频率比较高的指令应该分配较短的操作码。
      ② 确保指令码的唯一性。

    在这里插入图片描述
    在这里插入图片描述

    2.3 指令字长度

    • 机器字长
      运算器一次能处理的二进制数的位数。机器指令的长度直接决定着CPU运算的精度直接寻址能力的大小
    • 指令字长
      一个指令字中包含二进制代码的位数;
      指令字长由操作码长度操作数长度个数共同决定。
      ● 指令有半字长单字长双字长多字长等不同的长度类型。
      ● 指令系统可分为等长指令字结构变长指令字结构两种。

    2.4 指令助记符

    • 指令助记符:使用3~4个英文缩写字母来表示的指令操作码
    • 在不同的计算机中,指令助记符的规定是不一样的,指令助记符只是指令操作码字段的一种表示方法;机器内部保存的还是二进制代码形式的机器指令;
      由汇编或编译程序,将助记符翻译成机器代码。
      在这里插入图片描述
      在这里插入图片描述
      指令举例:
      在这里插入图片描述

    操作数类型

    机器指令对数据进行操作,数据通常分为以下四类:

    • 地址数据无符号整数,通过某种运算确定操作数在主存中的有效地址;
    • 数值数据定点整数、小数;浮点数;压缩十进制数
    • 字符数据文本数据或字符串;
    • 逻辑数据由若干二进制位组成,每位的值可以是1或0。

    指令和数据的寻址方式

    4.1指令的寻址方式

    • 1.顺序寻址方式
      当程序执行的流向不发生变化时,指令的寻址方式;由程序计数器记录所要执行指令的地址;一般在每次取指之后,其值加本条指令所占存储单元数。

    • 2.跳跃寻址方式
      当程序转移执行时的指令寻址方式,程序计数器的内容由本条指令给出,而不是顺序改变。

      • 直接寻址方式:指令中给出要转向的有效地址
      • 相对寻址方式:指令中给出要转向单元与当前单元的偏移量
      • 间接寻址方式:指令中给出保存要转向地址的寄存器或存储单元
        在这里插入图片描述

    4.2 操作数的寻址方式
    一种单地址码指令的结构如下图:
    在这里插入图片描述

    • 将指令中的形式地址A变换成操作数有效地址的过程,称为寻址过程。
    • 典型而常用的寻址方式有:隐含寻址、立即寻址、直接寻址、间接寻址、寄存器寻址、寄存器间接寻址、偏移寻址、堆栈寻址。
    隐含寻址 立即寻址
    在这里插入图片描述 在这里插入图片描述
    直接寻址 间接寻址
    在这里插入图片描述 在这里插入图片描述
    寄存器寻址 寄存器间接寻址
    在这里插入图片描述 在这里插入图片描述
    偏移寻址 相对寻址
    在这里插入图片描述 在这里插入图片描述
    变址寻址 基址寻址
    在这里插入图片描述 在这里插入图片描述
    堆栈寻址
    在这里插入图片描述
    • 隐含寻址
      ● 操作数地址隐含在操作码中;
      ● 如8086的MUL指令,被乘数隐含在AX(16位)或AL(8位)中
      ●指令字中少了一个地址字段,可缩短指令字长;

    • 立即寻址
      ● 形式地址A就是操作数;
      ● 优点:指令执行阶段不需要访存,速度快
      ● 缺点:形式地址A字段的位数限制了立即数的范围

    • 直接寻址
      ● 有效地址由形式地址字段A直接给出;
      ● EA=A
      ● 特点:执行阶段访问一次存储器,A的位数决定了该指令操作数的寻址范围;操作数的地址不易修改(必须修改A)

    • 间接寻址
      ● 有效地址由形式地址字段A间接提供,
      ● EA=(A)
      ● 特点:可扩大寻址范围;A字段的长度受指令字长和指令格式的限制;寻址时,可根据需要进行多次间址;可用寻址特制字段区分直接寻址和间接寻址方式

    • 寄存器寻址
      ● 形式地址字段A为寄存器编号
      ● EA=Ri
      ● 特点:执行阶段不访存,只访问寄存器,执行速度快,寄存器个数有限,可缩短指令字长

    • 寄存器间接寻址
      ● 形式地址字段A用于指出存放有效地址的寄存器编号;
      ● OEA=(Ri)
      ● 特点:执行阶段访存;○便于编制循环程序

    • 偏移寻址
      ● 直接寻址和寄存器间接寻址方式的结合
      ● 有效地址EA=A+® A是显式的形式地址字段;OR可以是显式的,也可以隐含的,某个专用的寄存器;
      ● 常用的偏移寻址
      ○ 变址寻址:EA=(变址R)+A,变址R+1变址R
      ○ 基址寻址:EA=(基址R)+A,A+1→A
      ○ 相对寻址:EA=(专用R)+A

    • 变址寻址方式
      ● 形式地址A作为基准地址,
      ● 变址寄存器作为可修改量;变址寄存器可自动增减量
      ● 适用于数组、字符串等成批连续数据的处理;
      ● 变址寄存器:可用通用寄存器充当,一般包含多个,在指令中要用一个字段指明当前所用的变址寄存器;

    • 基址寻址方式
      ● 基址寄存器作为基准地址,形式地址A作为可修改量;
      ● 形式地址相当于位移量,可正可负;一般基址寄存器为专用寄存器
      ● 基址寻址原来用于大型机,用作将用户地址转换成物理地址;可以实现地址的重定位,和扩大直接寻址空间
      ● 用途:
      ○ 大型机中,一般用特权指令来管理;
      ○ 小、微型机中,一般与变址寻址联合使用

    • 相对寻址方式
      ● 寻址特征:是基址寻址的一种变通
      ○ 程序计数器PC提供基准地址;
      ○ 形式地址作为位移量D,专用R可正可负;OEA:(PC )+D:
      ●适用于:所要寻找的操作数与现行指令位置间隔固定的场合

    • 堆栈寻址方式
      ● 隐含寻址方式的一种变形,其隐含的操作数在堆栈段中,由栈顶指针指定
      ● 8086堆栈指令举例
      ○ 入栈指令 PUSH SRC
      SP-2→SP;SRC→[SP]
      ○ 出栈指令 POP DST
      [SP]→DST;SP+2→SP

    例题在这里插入图片描述

    例题:
    在这里插入图片描述

    例题:
    设某机字长16位,直接寻址空间为128字,变址时的位移量为-64~+63,16个通用寄存器都可以作为变址寄存器,请设计一套指令系统,满足下列寻址类型的要求:
    (1)直接寻址的二地址指令3条
    (2)变址寻址的一地址指令6条
    (3)寄存器寻址的二地址指令8条;
    (4)直接寻址的一地址指令12条;
    (5)零地址指令32条。
    ● 直接寻址的二地址指令3条
    在这里插入图片描述
    ○这3条指令的操作码为00、01、10;
    ● 变址寻址的一地址指令6条:
    在这里插入图片描述
    ○这6条指令的操作码为:11000~11101
    ● 寄存器寻址的二地址指令8条:
    在这里插入图片描述
    这8条指令的操作码为11110000~11110111直接寻址的一地址指令12条:

    这12条指令的操作码为:111110000~111111011
    ● 零地址指令32条:
    在这里插入图片描述
    这32条指令的操作码为:
    111111000000000~11111110000111

    例题:
    某计算机数据线和地址线均是8根,有一条相对寻址的无条件转移指令存于内存的20H单元中,指令给出的偏移量是15H,设该指令占用2个字节,请计算:
    (1)取该条指令时PC的内容。
    (2)该指令执行结束时Pc的内容。
    解答:
    (1)取指令时,PC的内容为20H
    (2)转移地址=PC+2+D=20H+2+15H=37H
    该条指令执行结束时PC的内容是37H。

    例题:
    某指令系统指令字长为20位,具有双操作数、单操作数和无操作数3种指令格式,每个操作数地址规定用6位表示,当双操作数指令条数取最大值,而且单操作数指令条数也取最大值时,这3种指令最多可能拥有的指令数各是多少?
    解:按操作码扩展技术来设计,双操作数指令最多28-1条,单操作数指令最多63条,因此无操作数指令条数的最大值为64条
    在这里插入图片描述

    例题
    某机器字长为16位,主存容量是64K字,有专用的变址寄存器,采用单字长单地址指令,共有54条指令。试采用直接、立即、变址、相对四种寻址方式设计指令格式。解答
    在这里插入图片描述
    ○54条指令,故操作码需要6位。因为四种寻址方式,所以寻址特征位取2位,余下的8位作为形式地址D。其指令格式为
    O寻址模式X定义如下:
    X=00直接寻址有效地址E=D(256个单元)
    X=01立即寻址D=操作数
    X=10变址寻址有效地址E=®+D(64K)
    X=11相对寻址有效地址E=(PC)+D(64K)其中R为变址寄存器(16位)、PC为程序计数器(16位)相对寻址和变址寻址中,D可正可负。

    展开全文
  • 指令系统 —— 指令格式

    千次阅读 2019-07-30 11:08:25
    一台计算机的所有指令的集合构成该机的指令系统,也称指令集。 指令的长度是指一条指令中所包含的二进制代码的位数,因为主存一般是按字节编址的,所以指令的长度一般为字节的整数倍 指令长度与机器字长没有固定的...

    一、指令的定义

    指令是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。

    指令的长度是指一条指令中所包含的二进制代码的位数,因为主存一般是按字节编址的,所以指令的长度一般为字节的整数倍

    指令长度与机器字长没有固定的关系,它可以等于机器字长,也可以大于或小于机器字长。根据指令长度与机器长度的大小关系,可以把指令分为

    • 单字长指令
    • 半字长指令
    • 双字长指令

    根据指令的长度是否固定,可以把指令分为

    • 定长指令字结构
    • 变长指令字结构

    根据操作码的长度是否固定,可以把指令分为

    • 定长操作码:n位,可以包含2^n条指令
    • 扩展操作码:操作码长度可变

    二、指令的基本格式

    在这里插入图片描述

    (1)指令分类

    在这里插入图片描述

    (2)示例

    在这里插入图片描述

    为了增加指令操作数的直接寻址范围,我们可以对四地址指令进行优化,将下一个指令的地址按顺序存放在程序计数器 PC 中

    在这里插入图片描述


    三、定常操作码指令格式

    定常操作码指令在指令字的最高位部分分配固定的若干位(定长)表示操作码。一般用 n 位操作码字段的指令系统最大能表示 2^n 条指令

    优点:定长操作码对于简化计算机硬件设计,提高指令译码和识别速度很有利;
    缺点:指令数量增加时会占用更多固定位,留给表示操作数地址的位数受限。

    四、扩展操作码指令格式

    全部指令的操作码字段的位数不固定,且分散地放在指令字的不同位置。在设计扩展操作码指令格式时,必须注意以下两点:

    1. 不允许短码是长码的前缀,即短操作码不能与长操作码的前面部分的代码相同,否则无法区分不同长度的操作码。
    2. 各指令的操作码一定不能重复。

    优点:在指令字长有限的前提下仍保持比较丰富的指令种类
    缺点:增加了指令译码和分析的难度,使控制器的设计复杂化。

    通常情况下,对使用频率较高的指令,分配较短的操作码;对使用频率较低的指令,分配较长的操作码,从而尽可能减少指令译码和分析的时间。

    示例1:

    在这里插入图片描述

    4 位基本操作码如果全部用于三地址指令,则有16条。但至少需要将1111留作扩展操作码来用,即三地址指令为15条。

    1111 1111留作扩展操作码来用,即二地址指令为15条。

    1111 1111 1111留作扩展操作码来用,即一地址指令为15条。

    零地址指令为16条

    故扩展操作码指令格式共可以表示 15+15+15+16=61 条指令

    示例2:

    在这里插入图片描述

    展开全文
  • 计算机指令系统是软件和硬件的接口,本文以模拟器模拟硬件环境,实现汇编语言收尾。
  • 指令:空值计算机完成特定操作的命令 机器指令:指令的二进制代码形式 汇编指令:指令的助记符形式 指令系统:机器所有指令的集合 8086指令系统:向后兼容,应用广泛
  • ARM指令系统

    千次阅读 2017-08-19 22:22:24
    ARM指令系统 3.1 ARM处理器的指令格式 3.1.1 ARM指令集的特点 第3章 ARM指令系统 第3章 ARM指令系统 3.1 ARM处理器的指令格式 3.1.1 ARM指令集的特点 ARM内核属于RISC结构,所以其指令集有着一些独特的...
  • 第五章 指令系统

    千次阅读 2020-06-16 13:15:26
    文章目录指令系统概述指令格式操作码地址码指令长度指令和操作数的寻址方式指令的寻址方式顺序寻址跳跃寻址操作数寻址方式立即数寻址直接寻址间接寻址寄存器寻址寄存器间接寻址相对寻址变址寻址基址寻址堆栈寻址其它...
  • 8086指令系统

    千次阅读 2018-07-16 00:55:37
    8086指令系统 数据传送指令: 1. 通用数据传送: 指令名称指令格式功能 MOV MOV des,sou (sou)–&gt;(des) XCHG XCHG des,sou 交换数据 PUSH PUSH sou 入栈 POP POP sou 出栈 ...
  • CPU的指令集(指令系统

    千次阅读 2019-02-06 20:00:09
    CPU的指令集(指令系统
  • 指令系统——指令格式(详解)

    千次阅读 2020-06-08 20:52:34
    一台计算机的所有指令的集合构成该机的指令系统,也称为指令集。 注:一台计算机只能执行自己指令系统中的指令,不能执行其他系统的指令。 三、指令格式 一条指令就是机器语言的一个语句,它是一组有意义的二进制...
  • 8086指令系统前言一、数据传送指令:二、算术运算指令:三、逻辑运算和移位指令:四、字符串指令:五、控制转移指令:六、处理器控制指令: 前言 8086的指令有6大类,分别是:数据传送指令、算术运算指令、逻辑...
  • 指令系统结构ISA-CA

    千次阅读 2020-01-18 21:58:20
    文章目录指令系统定义作用重要性国际主流指令系统发展自主软硬件需求自主指令系统指令系统的设计指令系统在计算机中的位置设计原则影响指令系统设计的因素:指令系统的演变指令系统分类:指令系统演变-系统管理MIPS...
  • AVR单片机汇编指令系统

    千次阅读 2019-11-21 17:11:54
    AVR单片机指令系统 计算机的指令系统是一套控制计算机操作的代码,称之为机器语言。计算机只能识别和执行机器语言的指令。为了便于人们理解、记忆和使用,通常用汇编语言指令来描述计算机的指令系统。汇编语言指令...
  • 8086CPU指令系统——数据传送类指令

    千次阅读 2019-09-20 14:02:54
    数据传送(Data Transfer)类指令是指令系统中用的最多的一类指令,也是条数最多的一类指令,常用于将原始数据、中间运算结果、最终结果及其它信息在CPU(中央处理器)的寄存器和存储器之间进行传送 ...
  • 指令系统(一)数据传送指令

    千次阅读 2015-12-15 11:50:52
    指令系统概述 指令-控制计算机完成指定操作的命令 机器指令-指令的二进制代码的形式 汇编指令-助记符性形式的指令 指令系统:CPU所有指令及其使用规则的集合 指令系统分类 指令按功能分为7大类 数据传送类 ...
  • 指令系统
  • 第4章:指令系统

    千次阅读 2020-04-03 10:55:50
    是指示计算机执行某种操作的命令,是计算机运行的最小功能单位,一台计算机的所有指令的集合构成该机的指令系统,也称为指令集。 注:一台计算机只能执行自己指令系统中的指令,不能执行其他系统的指令。 指令格式 ...
  • X86-64指令系统

    千次阅读 2017-10-24 23:32:21
    X86-64指令系统概述 X86-64基本指令 X86-64的过程调用
  • 2 指令系统体系结构题库

    千次阅读 2019-02-17 11:16:43
    1、下列关于CISC和RISC的描述错误的是? A、CISC指令长度是不固定的 B、CISC指令的操作数必须预存于寄存器中 ...RISC:Reduced Instruction Set Computer,精简指令系统计算机 减少指令的类型,降低指令复杂度...
  • 《计算机组成原理》— 指令系统

    万次阅读 多人点赞 2017-05-29 10:54:45
    基本知识点:指令系统和指令的基本概念,指令格式,指令操作码扩展技术,各种寻址方式及其特点,RISC 和 CISC 指令系统的特点。 重 点:指令格式,指令操作码扩展技术,各种寻址方式及其特点。 难 点:指令格式,...
  • 指令系统是指计算机所能执行的全部指令的集合,它描述了计算机内全部的控制信息和“逻辑判断”能力。不同计算机的指令系统包含的指令种类和数目也不同。一般均包含算术运算型、逻辑运算型、数据传送型、判定和控制型...
  • 【转】关于微机CPU的指令系统-----指令系统(移位操作指令) 移位操作指令是一组经常使用的指令,它包括算术移位、逻辑移位、双精度移位、循环移位和带进位的循环移位等五大类。 移位指令都有指定移动二进制位数...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,281
精华内容 30,512
热门标签
关键字:

指令系统