南京理工大学微型计算机考研指导 (8)

合集下载

南京理工大学微型计算机考研指导 (1)

南京理工大学微型计算机考研指导 (1)

第一讲:第四章存储器系统回顾:微型计算机系统的硬件组成,存储器在微机系统中的功能和作用。

本讲重点:微机存储器系统的基本概况,存储器的分类,内部存储器的系统结构,动、静态读写存储器RAM的基本存储单元与芯片。

讲授内容:4.1概述存储器是计算机(包括微机)硬件系统的重要组成部分,有了存储器,计算机才具有“记忆”功能,才能把程序及数据的代码保存起来,才能使计算机系统脱离人的干预,而自动完成信息处理的功能。

存储器系统的三项主要性能是指标容量、速度和成本。

存储容量是存储器系统的首要性能指标,因为存储容量越大,则系统能够保存的信息量就越多,相应计算机系统的功能就越强;存储器的存取速度直接决定了整个微机系统的运行速度,因此,存取速度也是存储器系统的重要的性能指标;存储器的成本也是存储器系统的重要性能指标。

为了在存储器系统中兼顾以上三个方面的指标,目前在计算机系统中通常采用三级存储器结构,即使用高速缓冲存储器、主存储器和辅助存储器,由这三者构成一个统一的存储系统。

从整体看,其速度接近高速缓存的速度,其容量接近辅存的容量,而其成本则接近廉价慢速的辅存平均价格。

一、存储器分类1.按构成存储器的器件和存储介质分类按构成存储器的器件和存储介质主要可分为:磁芯存储器、半导体存储器、光电存储器、磁膜、磁泡和其它磁表面存储器以及光盘存储器等。

2.按存取方式分类可将存储器分为随机存取存储器、只读存储器两种形式。

(1).随机存储器RAM(Random Access Memory)又称读写存储器,指能够通过指令随机地、个别地对其中各个单元进行读/写操作的一类存储器。

按照存放信息原理的不同,随机存储器又可分为静态和动态两种。

静态RAM是以双稳态元件作为基本的存储单元来保存信息的,因此,其保存的信息在不断电的情况下,是不会被破坏的;而动态RAM是靠电容的充、放电原理来存放信息的,由于保存在电容上的电荷,会随着时间而泄露,因而会使得这种器件中存放的信息丢失,必须定时进行刷新。

南京理工大学微型计算机考研指导 (5)

南京理工大学微型计算机考研指导 (5)

第一讲:第八章串行接口与通信回顾:并行通信的特点及应用。

本讲重点:串行接口与通信概述,串行通信接口,通信规程和通信标准讲授内容:8.1 串行接口与通信概述一.并行通信与串行通信数据通信的基本方式可分为并行通信与串行通信两种:并行通信:是指利用多条数据传输线将一个数据的各位同时传送。

特点:是传输速度快,适用于短距离通信。

串行通信:是指利用一条传输线将数据一位位地顺序传送。

特点:是通信线路简单,利用电话或电报线路就可实现通信,降低成本,适用于远距离通信,但传输速度慢。

二.串行通信方式串行通信:分为同步通信(SYNC)与异步通信(ASYNC)两种方式。

1.异步通信及其协议异步通信以一个字符为传输单位,通信中两个字符间的时间间隔是不固定的,然而在同一个字符中的两个相邻位代码间的时间间隔是固定的。

通信协议(通信规程):是通信双方约定的一些规则。

传送一个字符的信息格式:规定有起始位、数据位、奇偶校验位、停止位等,其中各位的意义如下:①起始位:先发出一个逻辑”0”信号,表示传输字符的开始。

②数据位:紧接着起始位之后。

数据位的个数可以是4、5、6、7、8等,构成一个字符。

通常采用ASCII码。

从最低位开始传送,靠时钟定位。

③奇偶校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。

④停止位:它是一个字符数据的结束标志。

可以是1位、1.5位、2位的高电平。

⑤空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。

波特率:是衡量数据传送速率的指标。

表示每秒钟传送的二进制位数。

例如数据传送速率为120字符/秒,而每一个字符为10位,则其传送的波特率为10×120=1200字符/秒=1200波特。

注:异步通信是按字符传输的,接收设备在收到起始信号之后只要在一个字符的传输时间内能和发送设备保持同步就能正确接收。

下一个字符起始位的到来又使同步重新校准。

2.同步串行通信及其规程同步通信以一个帧为传输单位,每个帧中包含有多个字符。

南京理工计算机考研科目

南京理工计算机考研科目

南京理工计算机考研科目南京理工大学计算机考研科目包括两个科目:《数据结构与算法》和《计算机组成原理与系统结构》。

以下将详细介绍这两门科目的考试内容。

1.数据结构与算法:数据结构与算法是计算机科学的基础课程,也是计算机考研中重要的科目之一、该科目主要涵盖以下内容:(1)线性表:顺序表、链表、栈、队列等;(2)树结构:二叉树、哈夫曼树、二叉查找树等;(3)图结构:图的遍历、最短路径、最小生成树等;(4)排序与查找算法:选择排序、插入排序、快速排序、二分查找等;(5)动态规划与贪心算法:背包问题、最长公共子序列、最小生成树等。

考生需要掌握以上数据结构的概念、算法的实现原理及其应用,同时需要能够分析、设计和实现相应的算法。

在考试中,通常会出现选择题、填空题、简答题和编程题等不同类型的题目,考察考生的基本理论知识和问题解决能力。

2.计算机组成原理与系统结构:计算机组成原理与系统结构是计算机科学与技术中的一门重要课程,也是计算机考研中的重点科目之一、该科目主要涵盖以下内容:(1)计算机硬件的基本组成和层次结构:包括中央处理器(CPU)、存储器、输入输出(IO)等;(2)指令系统:机器指令的格式、寻址方式等;(3)CPU的工作原理和结构:包括指令执行过程、流水线技术等;(4)存储器层次结构:包括缓存、主存、虚拟存储器等;(5)输入输出系统:包括中断、DMA、外部设备等;(6)系统总线:包括数据总线、地址总线和控制总线等。

考生需要熟悉计算机硬件的组成和工作原理,理解计算机指令系统的设计和实现,了解存储器层次结构以及输入输出系统的原理。

在考试中,通常会考察考生对于计算机基本原理的理解和应用,如解析指令、设计数据通路、计算指令执行时间等。

总结:南京理工大学计算机考研科目主要包括《数据结构与算法》和《计算机组成原理与系统结构》。

考生需要熟练掌握数据结构与算法的基本概念与算法实现,具备问题分析与解决的能力;同时需要理解计算机硬件的基本组成和工作原理,能够解析指令、设计数据通路等。

南京理工大学计算机考研历年真题

南京理工大学计算机考研历年真题


12.影响文件安全性的主要因素有: (41)
,(42)
,(43)

13.在为文件分配外空间时,所要考虑的问题主要有:(44)
,(45)

14.UNIX 系 统 中 , 系 统 进 程 上 下 文 包 括 :(46 )
和 ( 47 )

15.在UNIX系统中,管道可分为: (48)
和(49)

16.在UNIX系统中,为实现请求调页管理,在核心配置了以下四中数据结构:(50)
8. 设一棵后序线索树的高是50,结点x是树中的一个结点,其双亲是结点y,y 的右子树 高度是31,x是y的左孩子。则确定x的后继最多需经过 (17) 中 间结点(不含后继 及x本身) 9. 设F是由T1、T2、T3三棵树组成的森林,与F对应的二叉树为B,已知T1、T2、
T3的结点数分别为 n1、n2、n3,则二叉树B的左子树中有 (18) 个结点,右 子树中 有 (19) 个结点。 10. 设有三对角矩阵如下图
置是
(A)A[2i](2i≦n)
(B)A[2i+1](2i+1≦n) (C)A[i/2]
(D)条件不充分,无法确定
5.将有关二叉树的概念推广到三叉树,则一棵有244个结点的完全三叉树的高度 是
(A)4 (B)5 (C)6 (D)7
6.设栈S和队列Q的初始状态为空,元素e1,e2,e3,e4,e5和e6依次通过栈S,一个 元素出栈后
,( 51 )
,( 52 )
,( 53 )

17.在UNIX系统中,系统向用户提供的用于对进程进行控制的系统调用:(1)fork 用于
(54)
;(2)exec用于(55)
;(3)exit 用于(56)

南理工计算机考研科目

南理工计算机考研科目

南理工计算机考研科目
南理工计算机考研科目是指该校计算机专业考研时需要参加的考试科目和
考试内容。

以下是南理工计算机考研科目的具体介绍和拓展:
1. 考试科目
南理工计算机考研的考试科目包括以下内容:
(1)计算机基础
(2)数据结构与算法
(3)操作系统
(4)计算机网络
(5)计算机组成原理
(6)数据库原理
(7)人工智能
(8)软件工程
2. 考试内容拓展
除了上述列举的考试科目,南理工计算机考研还涉及到其他一些重要的内容。

例如,数据结构与算法是计算机考研中非常重要的一个部分,需要考生掌握常见
的算法和数据结构,如数组、链表、栈、队列、树、图等。

操作系统和计算机网络也是南理工计算机考研中的重要科目,需要考生掌握操作系统的基本原理、网络协议的基本知识以及网络应用的开发技巧。

3. 考试形式拓展
南理工计算机考研的考试形式主要包括选择题、填空题、计算题和综合题等。

其中,选择题和填空题占据考试的大部分比例,需要考生掌握一定的答题技巧和
策略。

计算题和综合题则是考查考生实际编程能力和对知识点的掌握程度,需要考生具备较强的逻辑思维和编程能力。

4. 考研准备拓展
为了准备南理工计算机考研,考生需要具备一定的计算机基础知识,并熟练
掌握相关的编程语言和工具。

此外,考生还需要进行充分的复习和练习,熟悉各种考试形式和解题技巧,提高自己的编程能力和解决问题的能力。

同时,考生还可以参加一些南理工计算机考研的培训课程和模拟考试,以便更好地备考和应对考试。

【2020考研】南京理工大学计算机考研初试科目、参考书目、复试详情汇总

【2020考研】南京理工大学计算机考研初试科目、参考书目、复试详情汇总

【2020考研】南京理工大学计算机考研初试科目、参考书目、复试详情汇总一、学院介绍南京理工大学计算机科学与工程学院始建于1953年创办的哈尔滨军事工程学院模拟计算机研究组,先后经历了炮兵工程学院计算机教研室(1960年)、华东工程学院计算机科学与工程系(1979年)等发展阶段,是我国高等学校中较早建立的计算机系之一。

2005年12月更名为计算机科学与技术学院,2012年5月改为现名。

学院下设计算机科学与技术系、软件工程系、智能科学与技术系、数字媒体理论与工程系、计算机网络与通信技术系、计算机科学与工程实验中心、计算机应用技术研究所、信息处理及安全技术研究所、智能机器人研究所和网络空间安全工程研究院等。

2020南京理工大学考研:782134889学院现有“模式识别与智能系统”国家二级重点学科、“计算机科学与技术”、“软件工程”和“网络空间安全”江苏省一级重点学科,“社会公共安全信息工程”工信部重点学科以及“社会公共安全技术”江苏省优势学科。

二、专业课考试科目计算机学硕:①101思想政治理论②201英语一③301数学一④877计算机专业基础C(计算机组成原理、数据结构、操作系统)软件工程:①101思想政治理论②201英语一③301数学一④824计算机专业基础A(离散数学、数据结构、操作系统)计算机、软工专硕:①101思想政治理论②204英语二③302数学二④825计算机专业基础B(数据结构、操作系统)复试科目(各专业):①程序设计(C++上机操作)②数据库与计算机网络三、2019考研招生计划本学院复试包括:笔试、机试、综合面试(含外语口语)1、笔试:满分为100分,考试时间2小时。

闭卷考试,随身不得携带手机、任何纸质或电子资料,违反规定按作弊处理。

2、机试:满分为120分,考试时间2.5小时。

考核要点:专业实践能力(C++或Java编程,可携带最多两本纸质资料(不可互相借阅)、笔。

随身不得携带手机或其他任何电子介质,违反规定按作弊处理。

南京理工大学微型计算机考研指导 (11)

南京理工大学微型计算机考研指导 (11)

第一讲第三章汇编语言程序设计回顾:8086/8088的内部结构、寄存器功能和工作过程,指令格式、寻址方式和功能。

本讲重点:了解汇编的概念及其方法, 掌握汇编程序的基本格式,常用运算符的使用方法,汇编的步骤。

讲授内容:3.1 汇编语言的基本元素一、汇编语言的语句格式由汇编语言编写的源程序是由许多语句(也可称为汇编指令)组成的。

每个语句由1~4个部分组成,其格式是:[标号] 指令助记符[操作数][;注解]其中用方括号括起来的部分,可以有也可以没有。

每部分之间用空格(至少一个)分开,一行最多可有132个字符。

1.标识符是给指令或某一存储单元地址所起的名字。

可由下列字符组成:字母:A ~ z ;数字:0 ~ 9 ;特殊字符:?、·、@、一、$ 。

数字不能作标识符的第一个字符,而圆点仅能用作第一个字符。

标识符最长为31个字符。

当标识符后跟冒号时,表示是标号。

它代表该行指令的起始地址;当标识符后不带冒号时,表示变量;伪指令前的标识符不加冒号。

2.指令助记符表示不同操作的指令,可以是8088的指令助记符,也可以是伪指令。

3.操作数是指令执行的对象。

依指令的要求,可能有一个、两个或者没有,例如:RET ;无操作数COUNT:INC CX ;一个操作数如果是伪指令,则可能有多个操作数,例如:COST DB 3,4,5,6,7 ;5个操作数MOV AX,[BP十4] ;第二个操作数为表达式4.注解该项可有可无,是为源程序所加的注解,用于提高程序的可读性。

二、 汇编语言的运算符1.算术运算符、逻辑运算符和关系运算符① 算术运算符可以应用于数字操作数,结果也是数字。

而应用于存储器操作数时,只有+、- 运算符有意义。

2.取值运算符SEG 、OFFSET 、TYPE 、SIZE 和LENGTH· SEG 和OFFSET 分别给出一个变量或标号的段地址和偏移量。

例如,定义: SLOT DW 25则:MOV AX ,SLOT ;从SLOT 地址中取一个字送入AXMOV AX ,SEG SLOT ;将SLOT 所在段的段地址送入AXMOV AX ,OFFSET SLOT ;将SLOT 所在段的段内偏移地址送AX· TYPE 操作符返回一个表示存储器操作数类型的数值。

南京理工大学计算机科学与工程学院8计算机专业基础a历年考研真题汇编95p()

南京理工大学计算机科学与工程学院8计算机专业基础a历年考研真题汇编95p()

南京理工大学计算机科学与工程学院
824计算机专业基础A历年考研真题汇编
最新资料,WORD格式,可编辑修改!
目录
2012年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2011年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2010年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2009年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2008年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2007年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2006年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2005年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2004年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ........... 2003年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题 ...........

2003年南京理工大学计算机科学与工程学院824计算机专业基础A考研真题。

南京理工大学计算机科学与工程学院计算机专业基础B数据结构操作系统专业硕士历考研真题汇编

南京理工大学计算机科学与工程学院计算机专业基础B数据结构操作系统专业硕士历考研真题汇编

南京理工大学计算机科学与工程学院
825计算机专业基础B(数据结构、操作系统)[专
业硕士]历年考研真题汇编
最新资料,WORD格式,可编辑修改!
目录
2012年南京理工大学计算机科学与工程学院825计算机专业基础B[专业硕士]考研真题........ 2011年南京理工大学计算机科学与工程学院825计算机专业基础B[专业硕士]考研真题........ 2010年南京理工大学计算机科学与工程学院825计算机专业基础B[专业硕士]考研真题........ 说明:2016年公布的专业目录中,该科目改为“825计算机专业基础B(数据结构、操作
系统)[专业硕士]”,本书书名以此为准。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一讲:第十章高性能微机技术简介回顾:微机的结构和工作过程。

本讲重点:高性能计算机系统的基本工作原理和采用的一些新技术(如流水线、RISC、MMX等)。

讲授内容:随着VLSI(超大规模集成电路)的出现和发展,芯片集成度显著提高,价格不断下降,从而提高了计算机的性能价格比,使得过去在大、中、小型计算机中才采用的一些现代技术(例如流水线技术、高速缓冲存储器cache和虚拟存储器等)下移到微型机系统中来,因而使大、中、小、微型计算机的界限随时代而趋向消失。

10.1流水线技术流水线技术是一种同时进行若干操作的并行处理方式。

类似于工厂的流水作业装配线。

在计算机中把CPU的一个操作(分析指令,加工数据等)进一步分解成多个可以单独处理的子操作,使每个子操作在一个专门的硬件上执行,这样,一个操作需顺序地经过流水线中多个硬件的处理才能完成。

但前后连续的几个操作可以依次流入流水线中,在各个硬件间重叠执行,这种操作的重叠提高了CPU的效率。

一、标量流水工作原理通常CPU按顺序方式执行指令,执行完一条指令后,才取出下一条指令来执行,而且,一条机器指令内各个微操作也是顺序串行执行的。

顺序执行的优点是控制简单,但机器各部分的利用率不高。

假如把两条指令或若干条指令在时间上重叠起来将大幅度提高程序的执行速度。

下图示出了一次重叠方式。

所谓“一次重叠”指的是任何时候都只是“执行K”与“分析K+1”重叠。

由于这两个子过程是分别由分析和执行两个独立部件实现的,所以就不必等待上一条指令的“分析”、“执行”子过程都完成后才送入下一条指令,而是可以在上条指令的“分析”子过程结束,转入“执行”子过程时,就可接收下一条指令进入“分析”子过程。

这样,机器的吞吐率(这里指单位时间内机器所能处理的指令数或是机器能输出的结果数量),就由于把执行一条指令的过程分解成二个子过程而提高一倍。

显然,上述“重叠”和“流水”在概念上是密切联系的。

可以这样看:“一次重叠”和“流水”的差别在于前者把一条指令的执行过程只分解为二个子过程,而后者则是分解成更多个子过程。

也就是说,标量流水是重叠方式的进一步发展。

若把执行一条指令分解成“取指令码”、“指令译码”、“取操作数”和“执行”子过程,则指令执行时空图如右图所示。

当流水线正常流动时,是每隔△t(=t i+1-t i)就会流出一个结果;然而,在指令刚开始流动时,情况并不如此,由图可看出,在t4之前(即首条指令流入后的4△t时间内)流水线并没有流出任何结果。

也就是说,对首条指令来讲,流水方式和顺序方式是一样的。

以上讨论的是指令执行流水线,经常采用的还有运算操作流水线,在这种流水线中,把运算操作分成几个子过程,每个子过程设置专门的逻辑电路完成指定的操作。

和上述原理类似,可实现几个子过程并行处理。

二、超流水线超标量方法超流水线是指某些CPU内部的流水线超过通常的5~6步以上,例如Pentium pro的流水线就长达14 步,PⅣ为20步。

将流水线设计的步(级)数越多,其完成一条指令的速度越快,因此才能适应工作主频更高的CPU。

超标量(Super Scalar)是指在CPU中有一条以上的流水线,并且每时钟周期内可以完成一条以上的指令,这种设计就叫超标量技术。

一般地,超级标量机具有如下特点:(1) 配置有多个性能不同的处理部件,采用多条流水线并行处理。

(2) 能同时对若干条指令进行译码,将可以并行执行的指令送往不同的执行部件,从而达到在每个周期启动多条指令的目的。

(3) 在程序运行期间,由硬件(通常是状态记录部件和调度部件)来完成指令调度。

从原理上讲,超级标量机主要是借助硬件资源重复(例如有两套译码器和ALU等)来实现空间的并行操作。

三、超长指令字(VLIW)技术超长指令字(Very long instruction word)方法(简称VLIW)是由美国耶鲁大学的Fisher教授首先提出的,它与超级标量方法有许多类似之处,但它以一条长指令来实现多个操作的并行执行,以减少对存储器的访问。

这种长指令往往长达上百位,每条指令可以做几种不同的运算,这些运算都要发送到各种功能部件上去完成,哪些操作可以并行执行,这是在编译阶段选择的。

其主要特点为:(1) 只有一个控制器,每个周期启动一条长指令。

(2) 超长指令字被分成多个控制字段,每个字段直接独立地控制每个功能部件。

(3) 含有大量的数据通路和功能部件,由于编译器在编译时已考虑到可能出现的相关问题,故控制硬件较简单。

(4) 在编译阶段完成超长指令中多个可并行执行操作的调度。

四、其它相关技术1.乱序执行技术乱序执行(out-of-order execution)是指CPU采用了允许将多条指令不按程序规定的顺序分开发送给各相应电路单元处理的技术。

比方说程序某一段有7条指令,此时CPU将根据各单元电路的空闲状态和各指令能否提前执行的具体情况分析后,将能提前执行的指令立即发送给相应电路执行。

当然,在各单元不按规定顺序执行完指令后,还必须由相应电路再将运算结果重新按原来程序指定的指令顺序排列后才能返回程序。

这种将各条指令不按顺序拆散后执行的运行方式就叫乱序执行(也叫错序执行)技术。

采用乱序执行技术的目的是为了使CPU内部电路满负荷运转并相应提高了CPU的运行程序的速度。

2.分技预测和推测执行技术分枝预测(Branch Prediction)和推测执行(Speculation Execution) 是CPU动态执行技术中的主要内容。

采用分枝预测和动态执行的主要目的是为了提高CPU的运算速度。

推测执行是依托于分枝预测基础上的,在分枝预测程序是否分枝后所进行的处理也就是推测执行。

程序转移(分支)对流水线影响很大,尤其是在循环设计中。

不仅在循环中对循环条件的判断占用了大量的CPU时间,更重要的是循环转移破坏了流水线的正常流水,影响了流水线的性能。

为此,Pentium用分支目标缓冲器BTB(Branch target buffer,一个小的Cache)来动态地预测程序分支。

动态分支预测算法推测性地在过去曾执行过的相应指令的地址处运行取代码周期,这样的取代码周期根据过去的执行历史来运行,而不管检索得到的指令是否与当前执行的指令序列有关。

当指令导致程序分支时,BTB就记下这条指令的地址和分支目标的地址(即存储过去的程序分支处的程序地址和转移目标地址)。

当预取部件取到新的分支时,就与BTB中的所有信息作相联比较,若有相符的信息时,即预测分支。

分支预取部件开始从各处开始预取,否则,原预取部件继续顺序预取。

当BTB判断正确时,分支程序即刻得到译码。

从循环程序来看,在开始进入循环和退出循环时,BTB会发生判断错误,需重新计算分支地址。

循环10次,2次错误8次正确,循环100次,2次错误98次正确。

因此,循环越多,BTB的效益越明显。

3.指令特殊扩展技术自最简单的计算机开始,指令序列便能取得运算对象,并对它们执行计算。

对大多数计算机而言,这些指令同时只能执行一次计算。

如需完成一些并行操作,就要连续执行多次计算。

此类计算机采用的是“单指令单数据”(SISD)处理器。

在介绍CPU性能中还经常提到“扩展指令”或“特殊扩展”一说,这都是指该CPU是否具有对X86指令集进行指令扩展而言。

扩展指令中最早出现的是Intel公司自己的“MMX”,其次是AMD公司的“3D Now!”,最后是最近的Pentium III中的“SSE”及PⅣ中的“SSE2”。

10.2 RISC、SIMD简介一、RISCCISC技术和RISC技术是以计算机指令系统的优化方法来分类而形成的技术概念,它们代表着目前计算机指令系统的两个截然不同的优化方向。

最初,人们采用的优化方法是增强计算机指令系统的功能,即设置一些功能复杂的指令,把一些原来由软件实现的,常用的功能改用硬件的指令系统实现,以提高计算机的执行速度,这种计算机系统就被称为复杂指令系统计算机,即Complex Instruction Set Computer,简称CISC。

另一种优化方法是在80年代才发展起来的,其基本思想是尽量简化计算机指令功能,只保留那些功能简单、能在一个节拍内执行完成的指令,而把较复杂的功能用一段子程序来实现,这种计算机系统就被称为精简指令系统计算机,即Reduced Instruction Set Computer,简称RISC。

RISC技术通过简化计算机指令功能,使指令的平均执行周期减少,从而提高计算机的工作主频,同时大量使用通用寄存器,来提高子程序执行的速度。

所以一般RISC计算机的速度是同等CISC计算机的3 倍左右。

二、SIMD技术单指令多数据(Single Instruction Multiple Data),简称SIMD。

SIMD结构的CPU有多个执行部件,但都在同一个指令部件的控制下。

SIMD在性能上有什么优势呢?以加法指令为例,单指令单数据(SISD)的CPU对加法指令译码后,执行部件先访问内存,取得第一个操作数;之后再一次访问内存,取得第二个操作数;随后才能进行求和运算。

而在SIMD 型CPU中,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。

这个特点使得SIMD特别适合于多媒体应用等数据密集型运算。

AMD公司的3D NOW!技术其实质就是SIMD,这使K6-2处理器在音频解码、视频回放、3D游戏等应用中显示出优异性能。

10.3 MMX、SSE、SSE2技术一、MMX技术MMX是为多媒体应用而设计的,其实,MMX的数据类型和指令系统,不仅适合于多媒体操作,而且也适合于通信及信号处理等更宽的应用领域,所以可以把它理解为多媒体与通信的扩展(Multimedia and Modem eXtension)。

MMX是英语“多媒体指令集”的缩写。

共有57条指令,是Intel公司第一次对自1985年就定型的X86指令集进行的扩展。

MMX主要用于增强CPU对多媒体信息的处理,提高CPU处理3D图形、视频和音频信息能力。

MMX技术一次能处理多个数据。

计算机的多媒体处理,通常是指动画再生、图像加工和声音合成等处理。

在多媒体处理中,对于连续的数据必须进行多次反复的相同处理。

利用传统的指令集,无论是多小的数据,一次也只能处理一个数据,因此耗费时间较长。

为了解决这一问题,在MMX中采用了SIMD(单指令多数据技术),可对一条命令多个数据进行同时处理,它可以一次处理64bit任意分割的数据。

其次,是数据可按最大值取齐。

MMX的另一个特征是在计算结果超过实际处理能力的时候也能进行正常处理。

若用传统的X86指令,计算结果一旦超出了CPU处理数据的限度,数据就要被截掉,而化成较小的数。

而MMX利用所谓“饱和(Saturation)”功能,圆满地解决了这个问题。

相关文档
最新文档