1、第第2 2章章 数据操控数据操控2.1 计算机体系结构计算机体系结构2.2 机器语言机器语言2.3 程序执行程序执行2.4 算术算术/逻辑指令逻辑指令2.5 与其他设备的通信与其他设备的通信2.6 其他体系结构其他体系结构章节要求主菜单主菜单练习练习章节要求:本章学习计算机如何操纵数据以及如何与外围本章学习计算机如何操纵数据以及如何与外围设备(如打印机和键盘)通信。为此,我们将研究设备(如打印机和键盘)通信。为此,我们将研究计算机体系结构的基础,学习计算机是如何利用称计算机体系结构的基础,学习计算机是如何利用称为机器语言指令的编码指令来进行编程工作的。为机器语言指令的编码指令来进行编程工作的。
2、本章知识只要求学生了解,不作其他的硬性要本章知识只要求学生了解,不作其他的硬性要求。求。主菜单主菜单2.1 计算机体系结构硬件硬件软件软件中央处理器中央处理器运算器运算器控制器控制器存储器存储器内存内存外存外存ROMRAM输入输出设备输入输出设备系统软件系统软件应用软件应用软件磁盘磁盘光盘光盘软盘软盘硬盘硬盘键盘、鼠标、显示器、键盘、鼠标、显示器、打印机、投影仪、扫打印机、投影仪、扫描仪、摄像头、麦克描仪、摄像头、麦克风、音箱风、音箱计算机系统计算机系统主菜单主菜单2.1.1 中央处理器 CPU CPU:算术/逻辑单元、控制单元和寄存器组(通用寄存器、专用寄存器)Arithmetical/Lo
3、gical Unit(ALU)运算器运算器寄存器组寄存器组控制器控制器小而快速的存储单元小而快速的存储单元临时保存数据和指令临时保存数据和指令协调计算的步骤协调计算的步骤计算(算术和逻辑运算)计算(算术和逻辑运算)主菜单主菜单2.1.2 存储程序概念冯存储程序概念冯.诺依曼结构诺依曼结构 1、计算机由运算器、控制器、存储器、输、计算机由运算器、控制器、存储器、输入设备、输出设备五大部分组成;入设备、输出设备五大部分组成;2、以二进制形式将程序和数据存储在存储、以二进制形式将程序和数据存储在存储器中;器中;3、采用、采用“存储程序存储程序”以便计算机能保存指以便计算机能保存指令和数据以及能够自动
4、依次执行指令。令和数据以及能够自动依次执行指令。主菜单主菜单冯冯.诺依曼思想诺依曼思想控制信号流控制信号流数据流数据流主菜单主菜单2.2 机器语言 机器语言(machine language)为了应用存储程序概念,CPU被设计成可以识别二进制模式编码的指令。这组指令以及编码系统统称为机器语言。机器指令(machine instruction)使用机器语言表达的指令称为机器指令。主菜单主菜单2.2.1 指令系统 精简指令集计算机RISC CPU只需执行最小的一组机器指令集。效率高、速度快。苹果、IBM、摩托罗拉PowerPC系列 复杂指令集计算机CISC CPU能执行大量复杂的指令。容易编程。英
5、特尔奔腾系列主菜单主菜单机器指令的类型 数据传输类 包含请求在各个位置之间传输数据的指令。算术/逻辑类 告诉控制单元请求在算术/逻辑单元内实现一个活动。控制类 包含指导程序执行而非数据操作的指令。主菜单主菜单2.2.2 一种演示用的机器语言 机器指令的编码形式 操作码:指明该指令要求的是什么运算;操作数:提供关于操作码指定运算的更详细的信息。主菜单主菜单2.3 程序执行 指令寄存器(instruction register)存储正在执行的指令;程序计数器(program counter)包含下一个待执行指令的地址。主菜单主菜单2.3.1 程序执行的一个例子指令编码指令编码 翻译翻译 156C
6、把地址为把地址为6C的存储单元里的位模式载入寄存器的存储单元里的位模式载入寄存器5 166D 把地址为把地址为6D的存储单元里的位模式载入寄存器的存储单元里的位模式载入寄存器6 5056 把寄存器把寄存器5和和6的内容相加结果存入寄存器的内容相加结果存入寄存器0 306E 把寄存器把寄存器0的内容存放到地址为的内容存放到地址为6E的存储单元中的存储单元中 C000 停止停止主菜单主菜单存储 地址地址 单元单元 A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 6E A8 C0 A9 00主菜单主菜单过程1、程序计数器指出了存放第一条指、程序计数器指出了存
7、放第一条指令的内存地址令的内存地址(M1)A0A1。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M1R0R5R62、计算机取出、计算机取出M1中的指令,将它放中的指令,将它放到指令寄存器中。到指令寄存器中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M1156CR0R5R63、计算机执行指令寄存器中的指令,、计算机执行指令寄存器中的指令,将内容取到将内容取到ALU的寄存器的寄存器R5中。中。M1 156CM2 166DM3 50
8、56M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M1156CR0100R5R64、程序计数器指向存有下一条指令的、程序计数器指向存有下一条指令的内存地址内存地址(M2)A2A3。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M2R0100R5R6主菜单主菜单5、计算机取出、计算机取出M2中的指令,将它放到中的指令,将它放到指令寄存器中。指令寄存器中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄
9、存器M2166DR0100R5R66、计算机执行该指令,将内容取出并、计算机执行该指令,将内容取出并送到送到ALU的寄存器的寄存器R6中。中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M2166DR0100R5200R67、计算机取出、计算机取出M3中的指令,将它放到中的指令,将它放到指令寄存器中。指令寄存器中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M35056R0100R1200R28、计算机执行该指令,将结果放到、计
10、算机执行该指令,将结果放到寄存器寄存器R0中。中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M35056R0300100R1200R2主菜单主菜单9、计算机取出计算机取出M4M4中的指令,将它放中的指令,将它放到指令寄存器中。到指令寄存器中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M4306ER0300100R1200R210、计算机执行该指令,将、计算机执行该指令,将R0中的中的内容放到地址为内容放到地址为6E的存储单元
11、中。的存储单元中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M4306ER0300100R1200R211、计算机取出计算机取出M5M5中的指令,将它中的指令,将它放到指令寄存器中。放到指令寄存器中。M1 156CM2 166DM3 5056M4 306EM5 C000控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M5C000R0300100R1200R212、计算机执行该指令,停止,程序、计算机执行该指令,停止,程序完成。完成。M1 156CM2 166DM3 5056M4 306EM5 C00
12、0控制器控制器ALU程序计数器程序计数器指令寄存器指令寄存器M5C000R0300100R1200R2主菜单主菜单2.3.2 程序与数据 许多程序同时存储在主存储器中 只要地址不同,就没有问题;数据也存储在主存储器中 执行程序的时候会有影响吗?计算机无法识别是程序还是数据 但这样使得一个程序可以操纵其它程序主菜单主菜单2.4 算术/逻辑指令 算术/逻辑指令组由算术、逻辑、移位等运算指令组成。主菜单主菜单2.4.1 逻辑运算 AND运算:与运算 OR运算:或运算 XOR运算:异或运算 NOT运算:非运算主菜单主菜单2.4.2 循环移位及移位运算 循环移位(circular shift)将右(左)
13、侧移出的位放置在左(右)端的空位上;逻辑移位(logical shift)丢弃移出边界的位,用0填充空位;算术移位(arithmetic shift)同逻辑移位,但是保留符号位不变。主菜单主菜单2.4.3 算术运算减法运算可以通过加法运算来实现乘法运算是反复进行加法运算的结果除法运算就是反复的进行减法运算主菜单主菜单2.5 与其它设备的通信 主存储器和CPU与存储系统、打印机、键 盘、监视器、数码相机以及其他计算机的通信主菜单主菜单2.5.1 控制器的作用 控制器(controler)负责计算机和其它设备通信的中间设备。端口(port)通常控制器通过端口与外围设备相连接。标准 USB Fire
14、Wire 存储映射输入/输出(memory-mapped I/O)CPU与外围设备的通信来自控制器而不是存储器主菜单主菜单2.5.2 直接内存存取 直接内存存取DMA(direct memory access)控制器在CPU不使用总线的短时间里实现与主存的通信。优点:DMA和CPU的活动可以同时执行,提高计算机的性能;缺点:使计算机总线的通信复杂化。冯.诺依曼瓶颈:CPU与控制器竞争总线存取时,中央总线可能称为障碍。主菜单主菜单2.5.3 握手 握手(handshaking)保存计算机和外围设备之间交换设备状态的信息,协调它们之间的活动。状态字(status word)由外围设备生成并发送给控
15、制器的一个位模式,各个二进制位反映了该设备的各种状态。主菜单主菜单2.5.4 流行的通信媒介 并行通信(parallel communication)若干位同时传输,每个位都在自己的线路上;串行通信(serial communication)在一条信号线上一个信号接一个信号的传输。主菜单主菜单2.5.5 通信速率 常用的计量单位 Bps:Bits per second Kbps:Kilo-bps(1,000 bps)Mbps:Mega-bps(1,000,000 bps)Gbps:Giga-bps(1,000,000,000 bps)带宽(bandwidth)一条通信路径的传输速率以及所能容纳
16、的信息。主菜单主菜单2.6 其它体系结构 流水线 一个机器周期内各步骤重叠进行。多处理器计算机 SISD:单指令流单数据流 MIMD:多指令流多数据流 SIMD:单指令流多数据流主菜单主菜单2.6.1 流水线 吞吐量:机器在给定时间内可以完成的工作总量 流水线技术:在不要求提高执行速度的前提下,增加计算机吞吐量的一个例子主菜单主菜单2.6.2 多处理器计算机 多处理器体系结构的一个变体是将多个处理器连接起来,使得它们一起执行同一个指令序列,每个处理器都有各自的数据集。主菜单主菜单巩固练习(1)、机器指令可以分为三类:)、机器指令可以分为三类:数据传输类、数据传输类、控制类。控制类。算术算术/逻辑类、逻辑类、0100110101001101。(2)、位串)、位串01101010循环右移三位:循环右移三位:主菜单主菜单1、填空题、填空题计算机中控制数据操纵的电路称为()计算机中控制数据操纵的电路称为()确定取消主菜单主菜单2、单选题、单选题下列是逻辑运算的是()下列是逻辑运算的是()A、ANDB、MINC、ORD、XOR确定取消主菜单主菜单3、多选题、多选题