2017年全国计算机技术与软件专业技术资格(水平)考试《数据库系统工程师(中级)》复习全书【核心讲义+历年真题详解】(txt+pdf+epub+mobi电子书下载)


发布时间:2020-06-15 16:49:24

点击下载

作者:圣才电子书

出版社:圣才电子书

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

2017年全国计算机技术与软件专业技术资格(水平)考试《数据库系统工程师(中级)》复习全书【核心讲义+历年真题详解】

2017年全国计算机技术与软件专业技术资格(水平)考试《数据库系统工程师(中级)》复习全书【核心讲义+历年真题详解】试读:

第一部分 备考指南

第1章 计算机技术与软件专业技术资格(水平)考试概述

(数据库系统工程师篇)

一、考试简介

计算机技术与软件专业技术资格(水平)考试(以下简称计算机软件考试)是原中国计算机软件专业技术资格和水平考试(简称软件考试)的完善与发展。这是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试,其目的是,科学、公正地对全国计算机与软件专业技术人员进行职业资格、专业技术资格认定和专业技术水平测试。

原软件考试在全国范围内已经实施了二十年,截止2011年,累计参加考试的人数约有三百万人。该考试由于其权威性和严肃性,得到了社会及用人单位的广泛认同,并为推动我国信息产业特别是软件产业的发展和提高各类IT人才的素质做出了积极的贡献。

根据人事部、信息产业部文件(国人部发[2003]39号),计算机软件考试纳入全国专业技术人员职业资格证书制度的统一规划。通过考试获得证书的人员,表明其已具备从事相应专业岗位工作的水平和能力,用人单位可根据工作需要从获得证书的人员中择优聘任相应专业技术职务(技术员、助理工程师、工程师、高级工程师)。计算机专业技术资格(水平)实施全国统一考试后,不再进行计算机技术与软件相应专业和级别的专业技术职务任职资格评审工作。因此,这种考试既是职业资格考试,又是职称资格考试。

同时,这种考试还具有水平考试性质,报考任何级别不需要学历、资历条件,只要达到相应的技术水平就可以报考相应的级别。部分级别的考试已与日本、韩国相应级别的考试互认,以后还将进一步扩大考试互认的级别以及互认的国家。

考试合格者将颁发由中华人民共和国人力资源和社会保障部、工业和信息化部用印的计算机技术与软件专业技术资格(水平)证书。

二、考试专业与级别

根据《计算机技术与软件专业技术资格(水平)考试暂行规定》(以下简称《暂行规定》)第五条规定,计算机专业技术资格(水平)考试划分为计算机软件、计算机网络、计算机应用技术、信息系统和信息服务5个专业类别,并在各专业类别中分设了高、中、初级专业资格考试,详见《计算机技术与软件专业技术资格(水平)考试专业类别、资格名称和级别层次对应表》(见下)。人事部和信息产业部将根据发展需要适时调整专业类别和资格名称。

考生可根据本人情况选择相应专业类别、级别的专业资格(水平)参加考试。

三、报考条件

凡遵守中华人民共和国宪法和各项法律,恪守职业道德,具有一定计算机技术应用能力的人员,均可根据本人情况,报名参加相应专业类别、级别的考试。

因此,计算机软件资格考试报名条件不设学历与资历条件、年龄以及专业等限制,考生可根据自己的技术水平选择合适的级别合适的资格进行报考。

注:每次考试个人只允许报考一种资格。

四、报考方式

符合《暂行规定》(即《计算机技术与软件专业技术资格(水平)考试暂行规定》)第八条规定的人员,由本人提出申请,按规定携带身份证明到当地考试管理机构报名,领取准考证。凭准考证、身份证明在指定的时间、地点参加考试。

各地的报名办法由考生报考所在地的当地考试机构决定。考生相关报考费用标准由当地物价部门核准。

考生报名方式主要分为:网上报名与考生本人到指定地点报名两种。

注:报名时依据的身份证明包括:居民身份证、军人的证件、护照、户口本等。

五、报考时间

计算机专业技术资格(水平)考试原则上每年组织两次,在每年第二季度和第四季度举行。

注:各地的报名时间由考生报考所在地的当地考试机构决定。

六、考试形式与时间规定

除信息处理技术员和多媒体应用制作技术员采取笔试与上机操作考试相结合的形式外,其他各种考试都采用笔试形式。考试实行全国统一大纲、统一试题、统一时间、统一标准、统一证书的考试办法。

高级资格考试设综合知识、案例分析和论文3个科目;中级、初级资格考试设基础知识和应用技术2个科目。各级别考试均分2个半天进行。笔试安排在一天之内。上机考试将分期分批进行。

知识科目采用单项选择题,考试150分钟,考生需要用2B铅笔填涂答题卡;

应用技术科目采用问答题,考试时间150分钟;上机考试时间为150分钟;

案例分析科目采用问答题,考试时间为90分钟;论文科目考试时间为120分钟。各个科目的满分均为75分。

七、数据库系统工程师考试科目设置(1)信息系统知识,考试时间为l50分钟,笔试,选择题;(2)数据库系统设计与管理,考试时间为150分钟,笔试,问答题。

八、考试目标

通过本考试的合格人员能参与应用信息系统的规划、设计、构建、运行和管理,能按照用户需求,设计、建立、运行、维护高质量的数据库和数据仓库;作为数据管理员管理信息系统中的数据资源,作为数据库管理员建立和维护核心数据库,担任数据库系统有关的技术支持,同时具备一定的网络结构设计及组网能力;具有工程师的实际工作能力和业务水平,能指导计算机技术与软件专业助理工程师(或技术员)工作。

九、数据库系统工程师考试要求(1)掌握计算机体系结构以及各主要部件的性能和基本工作原理;(2)掌握操作系统、程序设计语言的基础知识,了解编译程序的基本知识;(3)熟练掌握常用数据结构和常用算法;(4)熟悉软件工程和软件开发项目管理的基础知识;(5)熟悉计算机网络的原理和技术;(6)掌握数据库原理及基本理论;(7)掌握常用的大型数据库管理系统的应用技术;(8)掌握数据库应用系统的设计方法和开发过程;(9)熟悉数据库系统的管理和维护方法,了解相关的安全技术;(10)了解数据库发展趋势与新技术;(11)掌握常用信息技术标准、安全性,以及有关法律、法规的基本知识;(12)了解信息化、计算机应用的基础知识;(13)正确阅读和理解计算机领域的英文资料。

十、指定书目

考试大纲——《数据库系统工程师考试大纲与培训指南(2013版)》清华大学出版社

指定教材——《数据库系统工程师教程(第2版)》清华大学出版社

十一、考试内容

说明:“Ⅰ”、“Ⅱ”和“Ⅲ”表示掌握或熟悉的程度。“I”是指对所列知识要理解其内容及含义(理解)。“Ⅱ”是指有关问题中能直接使用(一般应用)。“Ⅲ”是指对所列知识要理解其确切含义及与其他知识的联系,能够进行叙述和解释,并能在实际问题的分析、综合、推理和判断等过程中运用(综合应用)。

考试科目1:计算机及数据库系统知识

一、计算机系统知识

1.1 硬件知识

1.1.1 计算机体系结构

·CPU技术(CISC/RISC,流水线操作,多处理机,并行处理)

·存储器的基本工作原理、组成、性能

·常用I/O设备的类型、原理和特性,以及I/接口技术

1.1.2 存储系统

·虚拟存储器基本工作原理,多级存储体系

·RAID类型和特性

·网络存储技术

1.1.3 可靠性与系统性能评测基础知识

·故障诊断与容错技术

·系统可靠性分析评价

·计算机系统性能评测方法(性能计算:响应时间、吞吐量、周转时间;性能指标和性能基准;性能测试和性能评估)

1.2 数据结构与算法

1.2.1 常用数据结构

·数组(静态数组、动态数组)

·线性表、链表(单向链表、双向链表、循环链表)

·栈和队列

·树(二叉树、查找树、平衡树等)、图

·哈希表(存储位置计算,碰撞处理)

1.2.2 常用算法

·排序算法、查找算法、数值计算、字符串处理、数据压缩算法、递归算法、图的相关算法

·算法与数据结构的关系,算法效率,算法设计,算法描述(流程图、伪代码、决策表),算法的复杂性

1.3 软件知识

1.3.1 操作系统知识

·操作系统的基本概念(类型、特征、内核、进程、线程等)

·处理机管理(状态转换、同步与互斥、信号量、时间片轮转、抢占、死锁)

·存储管理(存储保护、分区、分段、分页、虚存等)

·设备管理(I/O控制、假脱机、磁盘调度)

·文件管理(文件目录、文件的结构和组织、存取方法、存取控制、恢复处理、共享和安全)

·作业管理(状态转换、作业调度、作业控制语言(JCL)、多道程序设计)

·网络操作系统、分布式操作系统和嵌入式操作系统等基础知识

·操作系统的配置

1.3.2 程序设计语言和语言处理程序的知识

·程序语言翻译基础知识(汇编、编译、解释、链接)

·程序设计语言的基本成分:数据、运算、控制和传输

·函数(子程序)定义、函数调用

·面向对象程序设计语言(类、对象、继承、多态)

·常用程序设计语言的主要特点和适用情况

1.4 计算机网络知识.

·网络体系结构(网络拓扑,OS1/RM,TCP/IP,常用的网络协议)

·常用网络设备和各类通信设备的功能和特点

·局域网(拓扑结构、存取控制、网间互连)

·C1ient-Server结构、Browser-Server结构的特点

·Intemet、Intranet和防火墙基础知识及应用

1.5 计算机应用基础知识

·信息管理、数据处理、辅助设计、科学计算、人工智能等基础知识

·远程通信服务及相关通信协议基础知识

·多媒体应用技术

二、数据库技术

2.1 数据库技术基础

2.1.1 数据库模型

·数据模型的基本概念(结构、操作、语义)

·典型的数据模型:概念数据模型(实体、属性、联系),逻辑数据模型(关系模型、层次模型、网络模型、面向对象模型、XML模型),数据存储模型

·数据库模式基本概念(三级模式、两级映射)

2.1.2 数据库管理系统功能

·主要功能(数据库定义、数据库操作、数据库完整性控制、事务特性)

·辅助功能(数据库运行配置、数据库备份、还原和恢复、数据导入与导出,数据库安全控制)

·典型数据库:RDB(关系数据库),OODB(面向对象数据库),ORDB(对象关系数据库),XML(XML数据库)、NOSQL(非关系数据库)

2.1.3 数据库管理系统体系结构

·集中式数据库系统

·并行数据库系统

·分布式数据库系统

·对象关系数据库系统

2.1.4 数据库系统体系结构

·数据库系统的组成(用户、程序、数据库、硬件平台)

·集中式数据库系统体系结构

·客户/服务器数据库系统体系结构

·多层数据库系统体系结构

·web数据库系统体系结构

2.1.5 数据库系统特征

·数据独立性:查询引擎、查询执行计划

·数据共享与事务特性(原子性、完整性、隔离性、持久性)

·高性能、高可靠、高安全、可扩展

2.2 关系模型

2.2.1 基本概念:域、元组、属性、笛卡儿积、关系、基数、超键、候选键、主键

2.2.2 关系运算

·传统代数运算(并、交、差、笛卡儿积)

·专门代数运算(选择、投影、连接、除)

·基本运算(并、差、笛卡儿积、选择、投影)

·关系模式、关系数据库、型与值

·关系的完整性(实体完整性、参照完整性、用户定义的完整性)

2.3 关系数据库理论

2.3.1 函数依赖与多值依赖

2.3.2 模式分解(无损分解、保持函数依赖分解、模式等价)

2.3.3 范式(第一范式、第二范式、第三范式、BC范式、第四范式)

2.4 数据库标准语言(SQL)

2.4.1 SQL概述

·SQL的功能与特点

·SQL数据定义语言(表、视图、索引、约束)

·SQL数据操作语言(数据检索、数据插入/删除/更新)

·SQL数据控制语言(安全性和授权、事务处理)

2.4.2 数据库定义

·数据库定义:创建、修改与删除数据库

·数据库对象定义:创建、修改与删除表对象、索引对象、视图对象、完整性对象

·数据库用户定义:创建、修改与删除数据库用户、数据库用户授权

2.4.3 数据查询

·基本结构(Se1ect子句、From子句、Where子句、Group By子句、Order By子句)

·函数操作:数据类型转换、字符串函数、聚集函数、数学函数等

·多表连接

·集合操作(并、交、差)

·嵌套查询

2.4.4 数据更新

·插入新数据

·修改已有数据

·删除指定数据

2.4.5 完整性控制

·主键约束

·外键约束

·属性值上的约束(Nu11、Check、Create Domain)

·全局约束(Create Assertions)

2.4.6 安全机制

·数据库权限与对象权限、用户授权(Grant)与销权(Revoke)

2.4.7 事务控制

·事务开始(Begin Transaction)、事务终止(EndTransaction)、事务提交(Commit)、事务回滚(Ro11back)

2.5 数据库运行控制

·安全性:用户认证、访问控制、安全审计

·完整性:事务完整性、数据库完整性

·并发控制:基于封锁机制的并发控制、基于多版本的并发控制

·备份、还原与恢复

2.6 数据仓库和数据分析基础知识

·数据仓库的基本概念:定义、基本要素、常见模式

·数据抽取、转换、装载

·多维数据分析基本知识

·常见数据分析方法

三、系统开发和运行维护知识

3.1 软件工程基础知识

·软件生命周期模型

·软件开发方法

·软件工具与软件开发环境

3.2 系统分析基础知识

·分析的目的和任务

·结构化分析方法(数据流图(DFD)和数据字典(DD)

·面向对象分析方法

·面向服务分析方法

·系统规格说明书

3.3 系统设计知识

·概要设计与详细设计的基本任务

·系统设计的基本原理(抽象、模块化、信息隐蔽、模块独立(耦合、内聚)的基本概念)

·系统模块结构设计(模块的概念、模块结构图的构成与内涵)

·结构化设计方法(变换分析、事务分析的概念及基本步骤)

·面向对象设计方法

·面向服务设计基本概念

·系统详细设计

3.4 系统实施知识

·配置计算机系统及环境

·选择合适的程序设计语言

·系统开发与测试

3.5 系统运行和维护知识

·系统可维护性的概念

·系统维护的类型

·系统评价的概念与类型

四、安全性知识

·安全性基本概念

·系统安全层次(网络安全、操作系统安全、数据库安全)

·计算机病毒的防护,计算机犯罪的防范,容灾

·用户认证与访问控制、安全管理措施

·加密与解密机制

·风险分析、风险类型、抗风险措施和内部控制

五、标准化知识

·标准化意识,标准化的发展,标准出台过程

·国际标准、国家标准、行业标准、企业标准基本知识

·代码标准、文件格式标准、安全标准、软件开发规范和文档标准

·标准化机构

六、信息化基础知识

·信息化基本知识

·全球信息化趋势,国家信息化战略,企业信息化战略和策略

·有关的法律、法规

·企业信息化、电子商务、电子政务等基础知识

·企业信息资源管理基础知识

七、计算机专业英语

·掌握IT技术的基本词汇

·能正确阅读和理解IT领域的英文资料

考试科目2:数据库系统设计、开发与管理

一、系统分析与设计

1.1 应用系统分析

·了解用户需求、确定系统范围

·确定应用系统的业务功能需求及与业务相关的数据

·确定现有环境与新系统环境的关系,可能提供的数据服务

·新系统中的数据项、数据字典、数据加工及对应的数据流图

1.2 应用系统功能设计

·功能划分与需求对应关系

·系统规格说明书(系统配置图、各子系统关系图、业务流程图、系统的功能说明、输入输出规格说明、数据规格说明和数据流)

1.3 应用系统架构设计

·信息系统的架构(如C1ient/Server、Browser/Server)

·大规模数据库和并行计算机体系结构(SMP、MPP)

·中间件角色和相关工具

·按构件分解,确定构件功能规格以及构件之间的接口

1.4 数据库结构设计

·数据库设计方法:自顶向下与自底向上设计、结构化设计与面向对象设计

·数据库设计内容:概念模型设计、逻辑模型设计和物理存储模型设计

·概念结构设计(设计ER模型及其他数据模型)、评审

·逻辑结构设计(ER模型到逻辑模型转换、逻辑模型优化、外模式设计)、评审

·物理结构设计(DBMS选择、网络规划、服务器选择)、评审

1.5 物理数据设计

·存取方法设计:分析事务在数据库上运行的频率和性能要求,依据数据规模确定物理存储逻辑组织方式、存储介质,设计格式的索引结构

·存储结构设计:将逻辑数据结构变换成物理数据结构,计算容量(空间代价),确定系统配置(维护代价)并依据访问频率、效率要求设计数据存储位置及其优化配置参数

1.6 安全体系设计

·明确用户安全域、安全等级

·选择合适的认证方式(操作系统认证、数据库认证、第三方认证)

·设计数据库访问控制机制:自主访问控制、强制访问控制、基于角色访问控制

·确认安全审计方式(对象审计、命令审计、操作审计)

1.7 数据库系统测试

·数据库系统功能测试:确认测试、功能符合性测试

·数据库系统非功能测试:性能测试、安全测试、可用性测试

·数据库系统辅助功能测试:数据加载与数据导出、易用性、可维护性测试

二、应用系统详细设计与开发

2.1 应用系统详细设计

2.1.1 模块划分(原则、方法、标准)

2.1.2 界面设计,输入输出、检查方法和检查信息设计

2.1.3 编写程序设计文档

·模块规格说明书(功能和接口说明、程序处理逻辑的描述、输入输出数据格式的描述)

·测试要求说明书(测试类型和目标,测试用例,测试方法)

2.1.4 程序设计评审

2.1.5 设计文档

·编写系统配置说明、构件划分图、构件间的接口、构件处理说明、屏幕设计文档、报表设计文档、程序设计文档、文件设计文档

2.1.6 设计评审

2.2 应用程序开发准备

·选择应用程序开发平台

·系统实施顺序

·框架开发

·基于小组的程序开发

·源代码控制

·版本控制

2.3 数据库开发环境搭建(SQL Server、Orac1e、Sybase、DB2等)

·创建数据库、用户和表空间

·创建表、索引、视图、约束、用户自定义类型

·存储过程和触发器

2.4 高级SQL应用

·复杂SQL语句(左连接、右连接、嵌套、递归)

·存储过程(Stored Procedure)与触发器(Trigger)

·分区表、物化视图

·多维查询语言(MDX)与OIAP窗口函数

·嵌入式SQL的基本概念、SQL与宿主语言接口(SQL通信区、共享变量、游标)

2.5 面向WEB的DBS技术

·三层体系结构

·动态Web网页

·ASP、JSP、XML的应用

2.6 应用系统的数据库开发

·数据库连接(CLI、ODBC、JDBC、OLEDB/ADO、XQuery)与数据库连接池

·应用系统开发语言的数据库操作(掌握C程序设计语言,以及Java、C++、De1phi中任一种开发语言对数据库连接、数据库增删改查、关闭连接等操作)

2.7 数据库应用系统安装

·拟定系统安装计划(考虑费用、客户关系、雇员关系、后勤关系和风险等因素)

·拟定人力资源使用计划(组织机构人员安排的合理性)

·直接安装(安装新系统并使系统快速进入运行状态)

·并行安装(新旧系统并行运行一段时间)

·阶段安装(经过一系列的步骤和阶段使新系统各部分逐步投入运行)

2.8 数据库应用系统测试

·拟定测试目标、计划、方法与步骤

·数据加载,准备测试数据

·指导应用程序员进行模块测试并进行验收

·准备系统集成测试环境和测试工具

·写出数据库运行测试报告

2.9 培训与用户支持

三、数据库管理与维护

3.1 数据库系统的运行计划

·运行策略的确定

·确定数据库系统报警对象和报警方式

·数据库系统的管理计划(执行,故障/恢复,安全性,完整性,用户培训和维护)

3.2 数据库系统的运行和维护

·新旧系统的转换

·收集和分析报警数据(执行报警、故障报警、安全报警)

·连续稳定的运行

·数据库维护(数据库重构、安全视图的评价和验证、文档维护)

·数据库系统的运行统计(收集、分析、提出改进措施)

·关于运行标准和标准改进一致性的建议

·数据库系统的审计

3.3 数据库管理

·数据字典和数据仓库的管理

·数据完整性维护和管理(实体完整性、参照完整性)

·数据库物理结构的管理(保证数据不推迟访问)

·数据库空间及碎片管理

·备份和恢复(顺序、日志(审计痕迹)、检查点)

·死锁管理(集中式、分布式)

·并发控制(可串行性、锁机制、时间戳、优化)

·数据安全性管理(加密、安全、访问控制、视图、有效性确认规则)

·数据库管理员(DBA)职责

3.4 数据库监控

·数据库用户活动监控

·数据库服务器运行监控:锁监控、连接数监控.表空间监控、内存监控、网络流量监控

·数据库运行安全监控

3.5 数据库系统性能调整

·优化基本概念:主动优化、被动优化

·SQL优化

·数据库存储对象优化

·数据库存取方式优化

·数据库实例配置参数优化

·服务器硬件环境优化

·业务管理优化

3.6 用户支持

·用户培训

·售后服务

四、网络环境下的数据库

4.1 分布式数据库

·分布式数据库基本概念

·分布式数据库体系结构

·P2P数据库的数据分布与查询搜索

·Web语义数据库基本概念

4.2 网络环境下数据库系统的设计与实施

·数据分片设计:水平分割、垂直分割、混合分割

·数据分布设计:分布存储设计、数据复制设计

·并行处理与负载均衡设计

·数据库互连技术.

五、数据库的安全性

5.1 安全性策略

·口令策略与资源管理策略

·数据库视图的安全性策略

·数据的安全级别(最重要的、重要的、注意、选择)

5.2 数据库安全控制

·用户访问控制(采用授权方式)

·程序访问控制(包含在程序中的SQL命令限制)

·表的访问控制(视图机制)

·控制访问的函数和操作

·外部存储数据的加密与解密

5.3 数据库安全审计

·数据库审计

·基于内容的数据库审计(通过触发器或包含在程序中的SQL命令限制)

六、数据库发展趋势与新技术

6.1 数据仓库

·数据仓库的规划(元数据、主题、数据集市)

·数据抽取、转换和装载、任务调度

·数据报表与展现

6.2 多维数据分析

·多维数据库基本概念(维度、度量、层次)

·多维数据库设计

·多维数据库装载和计算

·多维数据分析(切片、旋转、上钻、下钻)

6.3 数据挖掘

·机器学习基本概念

·常见数据挖掘算法

6.4 XMI数据库

·XMI数据库基本概念

·XMI数据库类型

·XMI数据库查询语言(XQuery)

6.5 大数据

·大数据四个特点

·分布式文件存储(GFS,HDFS)

·MapReduce计算范型

·常见大数据存储方式(列存储、关键字、值存储、文档存储)

第2章 数据库系统工程师考试复习技巧

一、解题的方法与技巧

1.勇往直前

进入下午的考试,会有些许疲劳的感觉,尤其当看到题干很长、算法较复杂的题时,就有想回避或焦虑、急躁的情绪。这是典型的“两军未战,兵先屈”的败兴思绪。要知道两对手相遇勇者胜,勇者相遇智者胜。抛开所有不必要的想法,相信自己的实力,做到心无旁鹜,勇往直前。

2.审清题干

题干包含了整个题目的条件和要求,但也有很多提示信息在程序的“注释”当中;若题干比较复杂,就要注意将题干“分段”来阅读,前后注意衔接,必要时在草稿纸上记录下关键数据。有时候题干很长,看似很复杂,让很多人望而却步。其实,这种题更好解,因为题干长了预示着题目的提示信息相应的多了,此时,主要是考你有没有勇气和耐心。

3.正确作答

在下午考试的问答题目中,一定要看清题目的问题和要求,以免答非所问,另外还需根据大纲考点进行解答,不可盲目的分析案例,也要避免答案与题目的中的案例没有关系,要根据案例对大纲考点进行分析。

二、总结

常言道“熟能生巧”、“打铁还得本身硬”,再好的方法与技巧若没有基础,是发挥不了作用的;如若有了一定的功底,再差的招式也会产生很大的威力,就像金庸小说中杨过的那柄钝剑。数据库系统工程师考试的难度较大,下午题要求对数据库的设计、数据库的运行和管理比较熟练;如果只看不练,不会有提高。建议大家多做模拟试题和历年试题,锻炼解题的能力与节奏。

第二部分 核心讲义

第1章 计算机系统知识

1.1 计算机系统基础知识

一、计算机系统硬件基本组成

计算机的基本硬件系统由运算器、控制器、存储器、输入设备和输出设备5大部件组成。

1.运算器、控制器

运算器、控制器等部件被集成在一起统称为中央处理单元(Central Processing Unit,CPU)。CPU是硬件系统的核心,用于数据的加工处理,能完成各种算术、逻辑运算及控制功能。

2.存储器

存储器是计算机系统中的记忆设备,分为内部存储器和外部存储器。前者速度高、容量小,一般用于临时存放程序、数据及中间结果。而后者容量大、速度慢,可以长期保存程序和数据。

3.输入设备和输出设备

输入设备和输出设备合称为外部设备(简称外设),输入设备用于输入原始数据及各种命令,而输出设备则用于输出计算机运行的结果。

二、中央处理单元(CPU)

1.CPU的功能(1)程序控制

CPU通过执行指令来控制程序的执行顺序,这是CPU的重要职能。(2)操作控制

一条指令功能的实现需要若干操作信号来完成,CPU产生每条指令的操作信号并将操作信号送往不同的部件,控制相应的部件按指令的功能要求进行操作。(3)时间控制

CPU对每条指令的整个执行时间要进行严格控制。同时,指令执行过程中操作信号的出现时间、持续时间及出现的时间顺序都需要进行严格控制。(4)数据处理

CPU通过对数据进行算术运算及逻辑运算等方式进行加工处理,数据加工处理的结果被人们所利用。所以,对数据的加工处理是CPU最根本的任务。

2.CPU的组成

CPU主要由运算器、控制器、寄存器组和内部总线等部件组成,如图1-1所示。图1-1 CPU基本组成结构示意图(1)运算器

①概念

运算器是数据加工处理部件,完成计算机的各种算术和逻辑运算。相对控制器而言,运算器接受控制器的命令而进行动作,即运算器所进行的全部操作都是由控制器发出的控制信号来指挥的,所以它是执行部件。

②功能

a.执行所有的算术运算,如加、减、乘、除等基本运算及附加运算。

b.执行所有的逻辑运算并进行逻辑测试,如与、或、非、零值测试或两个值的比较等。

③组成

a.算术逻辑单元(ALU)

ALU是运算器的重要组成部件,负责处理数据,实现对数据的算术运算和逻辑运算。

b.累加寄存器(AC)

AC通常简称为累加器,它是一个通用寄存器。其功能是当运算器的算术逻辑单元执行算术或逻辑运算时,为ALU提供一个工作区。例如,在执行一个减法运算前,先将被减数暂取出放在AC中,再从内存储器中取出减数,然后同AC的内容相减,所得的结果送回AC中。运算的结果是放在累加器中的,运算器中至少要有一个累加寄存器。

c.数据缓冲寄存器(DR)

在对内存储器进行读写操作时,用DR暂时存放由内存储器读写的一条指令或一个数据字,将不同时间段内读写的数据隔离开来。DR的主要作用为:作为CPU和内存、外部设备之间数据传送的中转站;作为CPU和内存、外围设备之间在操作速度上的缓冲;在单累加器结构的运算器中,数据缓冲寄存器还可兼作为操作数寄存器。

d.状态条件寄存器(PSW)

PSW保存由算术指令和逻辑指令运行或测试的结果建立的各种条件码内容,主要分为状态标志和控制标志,如运算结果进位标志(C)、运算结果溢出标志(V)、运算结果为0标志(Z)、运算结果为负标志(N)、中断标志(I)、方向标志(D)和单步标志等。这些标志通常分别由1位触发器保存,保存了当前指令执行完成之后的状态。通常,一个算术操作产生一个运算结果,而一个逻辑操作则产生一个判决。(2)控制器

①特点

运算器只能完成运算,而控制器用于控制整个CPU的工作,它决定了计算机运行过程的自动化。它不仅要保证程序的正确执行,而且要能够处理异常事件。

②组成

控制器一般包括指令控制逻辑、时序控制逻辑、总线控制逻辑和中断控制逻辑等几个部分。

a.指令控制逻辑

完成取指令、分析指令和执行指令的操作,其过程分为取指令、指令译码、按指令操作码执行、形成下一条指令地址等步骤。

b.时序控制逻辑

为每条指令按时间顺序提供应有的控制信号。总线逻辑是为多个功能部件服务的信息通路的控制电路。

c.中断控制逻辑

用于控制各种中断请求,并根据优先级的高低对中断请求进行排队,逐个交给CPU处理。(3)寄存器组

寄存器组可分为通用寄存器和专用寄存器。

①通用寄存器

通用寄存器可由编程人员指派多种用途,可用于存放操作数,也可作为满足某种寻址方式所需的寄存器。

②专用寄存器

运算器和控制器中的寄存器是专用寄存器,其作用是固定的。通常CPU中至少要有以下几个专用寄存器:

a.存储器缓冲寄存器(Memory Buffer Register,MBR)

MBR暂时存放由主存储器读出的一条指令或一个数据字;反之,当向主存存入一条指令或一个数据字时,也暂时将它们存放在存储器缓冲寄存器中。

b.存储器地址寄存器(Memory Address Register,MAR)

MAR存放当前CPU所访问的主存单元的地址。由于主存和CPU之间存在操作速度上的差别,所以必须使用地址寄存器来保持地址信息,直到主存的读/写操作完成为止。

c.程序计数器(PC)

PC又称为指令计数器,存放的是计算机将要执行的下一条指令的主存单元地址。程序执行过程中,CPU将自动修改PC的内容。

d.指令寄存器(IR)

IR保存当前正在执行的一条指令。CPU根据程序计数器PC提供的地址从主存中取指令到存储器缓冲寄存器(MBR)中,然后再传送至指令寄存器(IR)。

e.状态(标志)寄存器(PSW)

PSW又称为标志寄存器或程序状态寄存器(PSW),用来存放各种控制标志和反映CPU运行的状态特征。

3.多核CPU(1)核心

核心又称为内核,是CPU最重要的组成部分。

CPU中心那块隆起的芯片就是核心,是由单晶硅以一定的生产工艺制造出来的,CPU所有的计算、接收/存储命令、处理数据都由核心执行。(2)多核

①定义

多核即在一个单芯片上集成两个或多个处理器内核,其中每个内核都有自己的逻辑单元、控制单元、中断处理器、运算单元,一级Cache、二级Cache共享或独有,其部件的完整性和单核处理器内核相比完全一致。

②双核技术

CPU的主要厂商AMD和Intel的双核技术在物理结构上有很大不同。

AMD将两个内核做在一个Die(晶元)上,通过直连架构连接起来,集成度更高。Intel则是将放在不同核心上的两个内核封装在一起,因此有人将Intel的方案称为“双芯”,将AMD的方案称为“双核”。从用户端的角度来看,AMD的方案能够使双核CPU的管脚、功耗等指标跟单核CPU保持一致,从单核升级到双核,不需要更换电源、芯片组、散热系统和主板,只需刷新BIOS软件。

三、数据表示

1.机器数

各种数值在计算机中表示的形式称为机器数,其特点是采用二进制计数制,数的符号用0、1表示,小数点则隐含表示而不占位置。机器数对应的实际数值称为数的真值。

机器数有无符号数和带符号数之分。(1)无符号数表示正数,在机器数中没有符号位。(2)有符号数机器数的最高位是表示正、负的符号位,其余位则表示数值。

2.原码、反码、补码和移码

为了便于运算,带符号的机器数可采用原码、反码和补码等不同的编码方法,机器数的这些编码方法称为码制。(1)原码表示法

数值X的原码记为[X],如果机器字长为n(即采用n个二进制位原表示数据),则原码的定义如下:

若X是纯整数,则

若X是纯小数,则【例1.1】若机器字长n等于8,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5的原码表示。(其中◇是小数点的位置)

在原码表示法中,最高位是符号位,0表示正号,1表示负号,其余的n—1位表示数值的绝对值。数值0的原码表示有两种形式:[+0]=00000000,[-0]=1 0000000。原原(2)反码表示法

数值X的反码记作[X],如果机器字长为n,则反码定义如下:反

若X是纯整数,则

若X是纯小数,则【例1.2】若机器字长n等于8,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5的反码表示。(其中◇是小数点的位置)

在反码表示中,最高位是符号位,0表示正号,1表示负号,正数的反码与原码相同,负数的反码则是其绝对值按位求反。数值0的反码表示有两种形式:[+0]=00000000,[-0]反=11111111。反(3)补码表示法

数值X的补码记作[X],如果机器字长为n,则补码定义如下:补

若X是纯整数,则

若X是纯小数,则【例1.3】若机器字长n等于8,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5的补码表示。

[+1]=0 0000001 [-1]=1 1111111

[+127]=0 1111111  [-127]=1 0000001

[+45]=0 0101101   [-45]=1 1010011

[+0.5]=0 ◇1000000 [-0.5]=1 ◇1000000(其中◇是小数点的位置)

在补码表示中,最高位为符号位,0表示正号,1表示负号,正数的补码与其原码和反码相同,负数的补码则等于其反码的末尾加1。在补码表示中,0有唯一的编码:[+0]=00000000,[-0]补补=00000000。(4)移码表示法

移码表示法是在数X上增加一个偏移量来定义的,常用于表示浮n-1点数中的阶码。如果机器字长为n,规定偏移量为2,则移码定义如下:

若X是纯整数,则;若X是纯小数,则[X]=1+X(-1≤X<1)。移【例1.4】若机器字长n等于8,分别给出+1,-1,+127,-127,+45,-45,+0.5,-0.5,+0,-0的移码表示。(其中◇是小数点的位置)n-1

实际上,在偏移2的情况下,只要将补码的符号位取反便可获得相应的移码表示。

3.定点数和浮点数(1)定点数

小数点的位置固定不变的数。小数点的位置通常有两种约定方式:定点整数(纯整数,小数点在最低有效数值位之后)和定点小数(纯小数,小数点在最高有效数值位之前)。

设机器字长为n,各种码制下带符号数的范围如表1-1所示。表1-1机器字长为n时各种码制表示的带符号数的范围码定点整数定点小数制n-1-(-n-1)原-1)~-(2~+(1-2-(1-2n-1(n-1)-1)+(2)码n-1-(-n-1)反-1)~-(2~+(1-2-(1-2n-1(n-1)-1)+(2)码n-1n-1-(补n-1)~+(2-1))-2-1~+(1-2码n-1n-1-(移n-1)~+(2-1))-2-1~+(1-2码(2)浮点数

①浮点数的表示

定点数所能表示的数值范围比较小,运算中很容易因结果超出范围而溢出。因此引入浮点数,浮点数是小数点位置不固定的数,它能表示更大范围的数。通常表示为:EN=2×F

其中E称为阶码,F叫做尾数。用阶码和尾数表示的数叫做浮点数,这种表示数的方法称为浮点表示法。在浮点表示法中,阶码通常为带符号的纯整数,尾数为带符号的纯小数。浮点数的表示格式如下:阶符阶码数符尾数

很明显,一个数的浮点表示不是唯一的。当小数点的位置改变时,阶码也随着相应改变,因此可以用多种浮点形式表示同一个数。

②浮点数的规格化

浮点数所能表示的数值范围主要由阶码决定,所表示数值的精度则由尾数决定。为了充分利用尾数来表示更多的有效数字,通常采用规格化浮点数。

规格化就是将尾数的绝对值限定在区间[0.5,1]。当尾数用补码表示时,需注意以下问题:

a.若尾数M≥0,则其规格化的尾数形式为M=0.1×××…×,其中×可为0,也可为1,即将尾数限定在区间[0.5,1]。

b.若尾数M<0,则其规格化的尾数形式为M=1.0×××…×,其中×可为0,也可为1,即将尾数M的范围限定在区间[-1,-0.5]。

如果浮点数的阶码(包括1位阶符)用R位的移码表示,尾数(包括1位数符)用M位的补码表示,则这种浮点数所能表示的数值范围如下。-M+1

最大的正数:+(1-2)×,最小的负数:-1×

③浮点数的工业标准

工业标准IEEE 754。IEEE 754是由IEEE制定的有关浮点数的工业标准,被广泛采用。该标准的表示形式如下:S

其中,(-1)为该浮点数的数符,当S为0时表示正数,S为1时表示负数;E为指数(阶码),用移码表示;(bbbb…b)为尾0123p-1数,其长度为P位,用原码表示。

目前,计算机中主要使用三种形式的IEEE 754浮点数,如表1-2所示。表1-2三种形式的IEEE 754浮点数格式参数单精度浮点双精度浮点扩充精度浮点数数数326480浮点数字长235264尾数长度P111符号位S81115指数长度E+127+1023+16383最大指数-126-1022-16382最小指数+127+1023+16383指数偏移量-3838-308-4932可表示的实数范~1010~~101030849321010围

在IEEE 754标准中,约定小数点左边隐含有一位,通常这位数就是1,因此单精度浮点数尾数的有效位数为24位,即尾数为1.××…×。【例1.5】利用IEEE 754标准将数176.0625表示为单精度浮点数。

解:首先将该十进制转换成二进制数。(176.0625)=(10110000.0001)102

其次对二进制数进行规格化处理:10110000.0001=1◇701100000001×2。这就保证了使b为1,而且小数点应当在◇位置0上。将b去掉并扩展为单精度浮点数所规定的23位尾数001100000001000000000000。

然后求阶码,上述表示中的指数为7,而单精度浮点数规定指数的偏移量为127(注意,不是前面移码描述中所提到的128),即在指数7上加127。那么,E=7+127=134,则指数的移码表示为10000110。

最后,可得N(176.0625)的单精度浮点数表示形式:10

01000011001100000001000000000000

④浮点数的运算jj

设有浮点数X=M×2,Y=N×2,求X±Y的运算过程要经过对阶、求尾数和(差)、结果规格化并判溢出、舍入处理和溢出判别等步骤。

a.对阶

使两个数的阶码相同。令K=丨i-j丨,把阶码小的数的尾数右移k位,使其阶码加上K 。

b.求尾数和(差)

c.结果规格化并判溢出

若运算结果所得的尾数不是规格化的数,则需要进行规格化处理。当尾数溢出时,需要调整阶码。

d.舍入

在对结果右规时,尾数的最低位将因移出而丢掉。另外,在对阶过程中也会将尾数右移使最低位丢掉。这就需要进行舍入处理,以求得最小的运算误差。

e.溢出判别

以阶码为准,若阶码溢出,则运算结果溢出;若阶码下溢(小于最小值),则结果为0;否则结果正确无溢出。

浮点数相乘,其积的阶码等于两乘数的阶码相加,积的尾数等于两乘数的尾数相乘。浮点数相除,其商的阶码等于被除数的阶码减去除数的阶码,商的尾数等于被除数的尾数除以除数的尾数。乘除运算的结果都需要进行规格化处理并判断阶码是否溢出。

四、校验码

1.概念(1)基本思想

通常使用校验码的方法来检测传送的数据是否出错。其基本思想是把数据可能出现的编码分为两类:合法编码和错误编码。合法编码用于传送数据,错误编码是不允许在数据中出现的编码。合理地设计错误编码以及编码规则,使得数据在传送中出现某种错误时就会变成错误编码,这样就可以检测出接收到的数据是否有错。(2)码距

码距,是指一个编码系统中任意两个合法编码之间至少有多少个二进制位不同。例如,4位8421码的码距为1,在传输过程中,该代码的一位或多位发生错误,都将变成另外一个合法编码,因此这种代码无差错能力。

2.常用校验码(1)奇偶校验码(Parity Codes)

奇偶校验是一种简单有效的校验方法。这种方法通过在编码中增加一位校验位来使编码中1的个数为奇数(奇校验)或者为偶数(偶校验),从而使码距变为2。对于奇校验,它可以检测代码中奇数位出错的编码,但不能发现偶数位出错的情况,即当合法编码中奇数位发生了错误,即编码中的1变成0或0变成1,则该编码中1的个数的奇偶性就发生了变化,从而可以发现错误。

常用的奇偶校验码有三种:水平奇偶校验码、垂直奇偶校验码和水平垂直校验码。(2)海明码(Hamming Code)

海明码是由贝尔实验室的Richard Hamming设计的,它也是利用奇偶性来检错和纠错的校验方法。海明码的构成方法是:在数据位之间插入k个校验位,通过扩大码距来实现检错和纠错。

设数据位是n位,校验位是k位,则n和k必须满足以下关系:k2-1≥n+k

海明码的编码规则如下。

设k个校验位为P,P,…,P,n个数据位为D,D,…,kk-11n-1n-2D,D,对应的海明码为H,H,…,H,那么:10n+kn+k-11i-1i-1

①P在海明码的第2位置,即H=P,且j=2;数据位则依序从iji低到高占据海明码中剩下的位置。

②海明码中的任一位都是由若干个校验位来校验的。其对应关系如下:被校验的海明位的下标等于所有参与校验该位的校验位的下标之和,而校验位则由自身校验。34

对于8位的数据位,进行海明校验需要4个校验位(2-1=7,2-1=15>8+4)。令数据位为 D,D,D,D,D,D,D,D,76543210校验位为P,P,P,P,形成的海明码为H,H,…,H,432112113H,H,则编码过程如下。21

①确定D与P在海明码中的位置,如下所示:HHHHHHHHHHHH111987654321210DDDDPDDDPDPP765443213021

②确定校验关系,如表1-3所示。表1-3海明码的校验关系表海海校说明(偶校验)明明验码码位的组下标H1P校验:P、D、D、D、D、DP110134611=DÅDÅDÅDÅD即P(101346P校验:P、D、D、D、D、DP22023561)=DÅDÅDÅDÅD即P202356、D、D、D、DP3校验:P31237=DÅDÅDÅD即P31237校验:P、D、D、D、DP444567=DÅDÅDÅD即P44567H2P22(P2)H3=P311+(,2DP02)H4P43(P3)H5=P511+(,4DP13)H6=P622+(,4DP23)H7=P711+(,2+DP432),P3H8P84(P4)H9=P921+(,8DP44)H10P102=2(,+8DP54)H11P111=1(,+2DP+862),P4H12P123=4(,+8DP74)

若采用奇校验,则将各校验位的偶校验值取反即可。

③检测错误。对使用海明编码的数据进行差错检测很简单,只需作以下计算:

G=PÅDÅDÅDÅDÅD1101346

G=PÅDÅDÅDÅDÅD2202356

G=PÅDÅDÅDÅD331237

G=PÅDÅDÅDÅD444567

若采用偶校验,则GGGG全为0时表示接收到的数据无错误4321(奇校验则应全为1)。当GGGG不全为0说明发生了差错,而且4321GGGG的十进制值指出了发生错误的位置,例如4321GGGG=1010,说明H(D)出错了,将其取反即可纠正错误。4321105【例1.6】设数据为01101001,试采用4个校验位求其偶校验方式的海明码。

解:DDDDDDDD=01101001,根据公式76543210

因此,求得的海明码为:(3)循环冗余校验码(Cyclic Redundancy Check,CRC)

循环冗余校验码广泛应用于数据通信领域和磁介质存储系统中。它利用生成多项式为k个数据位产生r个校验位来进行编码,其编码长度为k+r。CRC的代码格式为:

由此可知,循环冗余校验码是由两部分组成的,左边为信息码(数据),右边为校验码。若信息码占k位,则校验码就占n-k位。其中,n为CRC码的字长,所以又称为(n,k)码。校验码是由信息码产生的,校验码位数越长,该代码的校验能力就越强。在求CRC编码时,采用的是模2运算。模2运算加减运算的规则是按位运算,不发生借位和进位。1.2 计算机体系结构

一、计算机体系结构的发展

1.计算机体系结构的研究

对计算机系统的研究可以从系统结构、组成和实现这3个层次进行。(1)系统结构

是指计算机的概念性结构、功能和性能特性,它从一个更高的层次对计算机的结构和特征等宏观特性进行研究。(2)组成

计算机体系结构的逻辑实现,从逻辑电路角度研究计算机系统中各个组成部分的构成方法,包括CPU中运算器的电路设计、存储系统的电路设计、控制器的控制方式和数字电路设计、输入/输出接口的设计等。(3)实现

计算机的物理设计,包括器件的设计与选择、各模块的机械参数设计、印制电路板的设计与制作、机箱的物理特性的设计与选择,以及芯片封装和部件组装技术的设计与选择等。

2.计算机体系结构分类(1)宏观上按处理机的数量进行分类

按处理机的数量分类可分为单处理系统、并行处理与多处理系统和分布式处理系统。

①单处理系统

利用一个处理单元与其他外部设备结合起来,实现存储、计算、通信、输入与输出等功能的系统。

②并行处理与多处理系统

为了充分发挥问题求解过程中处理的并行性,利用两个以上的处理机互连起来,彼此进行通信协调,以便共同求解一个大问题的计算机系统。

③分布式处理系统

物理上远距离而松耦合的多计算机系统。其中,物理上的远距离意味着通信时间与处理时间相比已不可忽略,在通信线路上的数据传输速率要比在处理机内部总线上传输慢得多,这也正是松耦合的含义。(2)微观上按并行程度分类

按并行程度分类可分为Flynn分类法、冯泽云分类法、Handler分类法和Kuck分类法。

①Flynn分类法

1966年,M.J.Flynn提出按指令流和数据流的多少进行分类,把计算机系统的结构分为单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)、多指令流多数据流(MIMD)四类。

②冯译云分类法

1972年,美籍华人冯泽云(Tse-yun Feng)提出按并行度对各种计算机系统进行结构分类。把计算机系统分成字串行位串行(WSBS)计算机、字并行位串行(WPBS)计算机、字串行位并行(WSBP)计算机和字并行位并行(WPBP)计算机4类。

③Handler分类法

1977年,德国的汉德勒(Wolfgang Handler)提出一个基于硬件并行程度计算并行度的方法,把计算机的硬件结构分为三个层次:处理机级、每个处理机中的算逻单元级、每个算逻单元中的逻辑门电路级。分别计算这三级中可以并行或流水处理的程序,即可算出某系统的并行度。

④Kuck分类法

1978年,美国的库克(David J.Kuck)提出与Flynn分类法类似的方法,用指令流和执行流(execution stream)及其多重性来描述计算机系统控制结构的特征。Kuck把系统结构分为单指令流单执行流(SISE)、单指令流多执行流(SIME)、多指令流单执行流(MISE)和多指令流多执行流(MIME)4类。

3.指令系统(1)指令集体系结构的分类

①分类依据

a.操作数在CPU中的存储方式,即操作数从主存中取来后保存在什么地方;

b.显式操作数的数量,即在典型的指令中有多少个显式命名的操作数;

c.操作数的位置,即任一个ALU指令的操作数能否放在主存中,如何定位;

d.指令的操作,即在指令集中提供哪些操作;

e.操作数的类型与大小。

②按暂存机制分类

根据在CPU内部存储操作数的区别,可以把指令集体系分为三类:堆栈(stack)、累加器(accumulator)和寄存器集(a set ofregisters)。

通用寄存器机(General.Purpose Register Machines,GPR机)的关键性优点是编译程序能有效地使用寄存器,无论是计算表达式的值,还是从全局的角度使用寄存器来保存变量的值。(2)指令格式及其优化

①格式

设计格式优先考虑一些原则:

a.指令长度

b.是否有足够的空间表示所有期望的操作

c.存取指令速度的提高

d.寻址字段长度的选择等

②优化

a.指令码的优化

使用频度高的指令采用短编码,反之可采用长编码。

b.操作数的优化

从整个指令系统的利用率角度出发,尽量设法减少指令中的冗余信息量,以便用最少的位数提供足够的操作信息和地址信息。(3)指令集的设计与优化

①CISC和RISC

CISC(Complex Instruction Set Computer,复杂指令集计算机)的基本思想是:进一步增强原有指令的功能,用更为复杂的新指令取代原先由软件子程序完成的功能,实现软件功能的硬化,导致机器的指令系统越来越庞大而复杂。事实上,目前使用的绝大多数计算机都属于CISC类型。

CISC的主要弊病如下:

a.指令集过分庞杂

b.机器的处理速度慢

微程序技术是CISC的重要支柱,每条复杂指令都要通过执行一段解释性微程序才能完成,这就需要多个CPU周期,从而降低了机器的处理速度。

c.难以生成真正高效的目标代码

由于指令系统过分庞大,使高级语言编译程序选择目标指令的范围很大,并使编译程序本身冗长而复杂,从而难以优化编译使之生成真正高效的目标代码。

d.研制周期长

CISC强调完善的中断控制,势必导致动作繁多,设计复杂,研制周期长。

e.芯片成本提高而成品率降低

RISC(Reduced Instruction Set Computer,精简指令集计算机)的基本思想是:通过减少指令总数和简化指令功能,降低硬件设计的复杂度,使指令能单周期执行,并通过优化编译,提高指令的执行速度,采用硬线控制逻辑,优化编译程序。

RISC的关键技术如下:

a.重叠寄存器窗口技术

b.优化编译技术

RISC使用了大量的寄存器,如何合理分配寄存器、提高寄存器的使用效率及减少访存次数等,都应通过编译技术的优化来实现。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载