请分别介绍以下指令的功能:数据传送类指令、运算类指令、移位操作指令、字符串处理指令、输入/输出指令、程序控制指令。
(1)数据传送类指令用于实现寄存器与寄存器、寄存器与存储器单元以及两个存储器单元之间的数据传送操作。它包括通用数据传送指令和堆栈及堆栈操作指令。(2)运算类指令包括算术运算指令和逻辑运算指令。算术运算指令指加、减、乘、除、比较和求补等最基本的运算指令;逻辑运算指令指与、或、非、异或和测试等指令。(3)移位操作指令分为算术移位、逻辑移位和循环移位三种,可以实现对操作数左移或右移一位或若干位。(4)字符串处理指令是一种非数值处理指令,一般包括字符串传送、字符串转换、字符串比较、字符串查找、字符串匹配、字符串的抽取和替换。(5)输入/输出指令主要用来实现CPU与外部设备之间的信息交换、包括输入/输出数据、CPU向外设发控制命令或外设向CPU报告工作状态等。(6)程序控制指令用于控制程序的执行顺序,并使程序具有测试、分析和判断的能力。它主要包括转移指令、子程序调用和返回指令等。