计算机组成原理 -- 指令系统(三)

典型指令:                                         

                                       计算机组成原理 -- 指令系统(三)

  1. 数据传送指令:主要包括取数指令、存数指令、传送指令、成组传送指令、字节交换指令、清寄存器指令、堆栈操作指令等。这类指令主要用来实现主存和寄存器间,或寄存器和寄存器之间的数据传送。
  2. 算术运算指令:包括二进制定点加、减、乘、除指令,浮点加、减、乘、除指令,求反、求补指令,算术位移指令、算术比较指令,十进制加、减运算指令等。这类指令的主要用于定点或浮点的算术运算,大型机中有向量运算指令,直接对整个向量或矩阵进行求和、求积运算。
  3. 逻辑运算指令:包括逻辑加、逻辑乘、按位加、逻辑位移等指令,主要用于无符号数的位操作、代码的转换、判断及运算。
  4. 程序控制指令:也称程序转移指令。是为了处理出现不同结果,需要根据不同结果进行转移而该表程序原来的执行顺序。
  5. 输入输出指令:主要用来启动外围设备,检查测试外围设备的工作状态,并实现外部设备和CPU之间,或外围设备与外围设备之间的信息传送。
  6. 字符串处理指令:是一种非数值处理指令,一般包括字符传送、字符串转换、字符转比较、字符串查找、字符串抽取、字符串替换等。这类指令在文字编辑中对大量字符串进行处理。

 

基本指令系统的操作
指令类型 操作名称 说明
数据传送 MOV        传送 由源向目标传送字,源和目标是寄存器
~ STO         存数 由CPU向存储器传送字
~ LAD         取数 由存储器向CPU传送字
~ EXC         交换 源和目标交换内容
~ CLA         清零 传送全0字到目标
~ SET          置1 传送全1字到目标
~ PUS         进栈 由源向堆栈顶传送字
~ POP         出栈 有堆栈定向目标传送字
算术运算 ADD         加法 计算两个操作数的和
~ SUB         减法 计算两个操作数的差
~ MUL         乘法 计算两个操作数的积
~ DIV           除法 计算两个操作数的商
~ ABS         取绝对值 以其绝对值替代操作数
~ NEG        变负 该变操作数的符号
~ INC          增量 操作数加1
~ DEC        减量 操作数减1
逻辑运算 AND        与 按位完成指定的逻辑操作
~ OR          或  按位完成指定的逻辑操作
~ NOT        求反 按位完成指定的逻辑操作
~ EOR        异或 按位完成指定的逻辑操作
~ TES          测试 测试指令的条件;根据结果设置标志
~ COM        比较 对两个操作数进行逻辑或算术比较;根据结果设置标志
~                  设置控制变量 为保护目的,中断管理,时间控制等设置控制的指令
~ SHI           移位 左(右)位移操作,一端引入常数
~ ROT          循环移 左(右)位移操作,两端环绕
控制指令 JMP          无条件转移 无条件转移;已指定地址装入PC
~ JMPX         条件转移 根据测试条件;将指定地址装入PC,或什么也不做
~ JMPC          转子 将当前程序控制信息放到一个已知位置,转移到指定地址
~ RET            返回 由已知位置内容替换PC和其他寄存器内容