1.1计算机系统的组成

1.1.1计算机发展概述

1.大型机阶段

1946年美国研制的第一台计算机ENIAC被公认为大型机的鼻祖。

大型机(mainframe)的发展经历了一下几代:

第一代采用电子管制作的计算机

第二代采用晶体管制作的计算机

第三代采用中、小规模集成电路制作的计算机

第四代采用大规模、超大规模的集成电路制作的计算机。

2.小型机(minicomputer)阶段

也称小型电脑或小型机

3.微型机(microcomputer)阶段

又称微电脑或个人计算机(personal computer,PC)

4.客户机/服务器阶段

5.互联网阶段

1.1.2计算机系统的基本结构

计算机系统是由硬件系统和软件系统组成的。

1.计算机系统的硬件组成

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

运算器主要是对数据进行处理加工,完成算数和逻辑运算。

控制器主要是从主存中取出指令并进行分析,控制计算机各个部件有条不紊的完成指令的功能。

存储器是计算机系统的记忆设备,分为内部存储器(main memory)和外部存储器。

寄存器是CPU中的记忆设备,用来临时存放指令、数据及运算结构。

2.计算机硬件系统的典型结构

计算机硬件的各部分主要是采用总线结构连接起来,基本的总线结构有单总线结构、双总线结构等。

(1)单总线结构:这种结构用一组系统总线将计算机系统的各部件连接起来,各部件之间通过总线交换信息。其优点是易于设备的扩充,缺点是同一时刻只能允许挂在总线上的一对设备之间互相传送信息,也就是分时使用总线,限制了信息传送的吞吐量。这种结构一般用在微型机或小型机上。

(2)双总线结构:为了消除信息传送的瓶颈,最常见的是在主存和CPU之间设置一组专用的高速存储总线。以CPU为中心,连接CPU和外围设备的系统总线成为输入输出(I/O)总线,I/O设备和主存之间的信息交换要经过CPU才能进行。优点是控制线路简单,对I/O设备总线的传输速率要求较低,缺点是CPU工作效率低。一存储器为中心的双总线结构,优点是信息传送速率高,但要增加硬件投资。

(3)采用通道方式的大型系统结构。

一台主机可以连接多个通道,一个通道可以连接多台I/O控制器,一台I/O控制器又可以连接多台I/O控制器,具有良好的可扩展性,有通道控制I/O设备,减轻了CPU的负担。

3.计算机软件

1.2计算机中数据的表示及运算

1.2.1计算机中数据的表示

1.进位计数制及其转换

如果只用r个基本符号表示数值,则称其为r进制,r为基数(radix)。

各种进位计数制种的权值就是基数的某次幂,,任意一个r进制数N可以表示为:

Nr=∑Dix ri

Di是基本数符,r是基数,ri是权

1)十进制计数法

r=10

2)二进制计数法

r=2,二进制中的每一位称为1比特(b)。

二进制转换成十进制的方法:将二进制数的每一位乘以它的权值,然后再相加。

十进制转换成二进制的方法:整数部分和小数部分分别转换,然后再合并。整数转换位二进制是“除以2取余”,小数转换为二进制是“乘以2取整”。

3)八进制计数法

十进制转换为八进制数的方法是:整数“除以8取余”,小数则“乘以8取整”。

二进制数转换成八进制书的方法是:从小数点起,把二进制数每三位一组,然后写出每一组的等值八进制数,顺序排列起来就是八进制数。

一个八进制数用三位二进制数表示,就可以直接将八进制数转换为二进制数。

4)十六进制计数法

r=16,0123456789ABCDEF

十进制转换成十六进制的方法:十进制的整数部分“除以16取余”,小数部分“乘以16取整”。

二进制转换成十六进制的方法是:从小数点起,每四位一组,将每一组二进制数转换成相应的十六进制数符来表示(每一组都是是按转换成十进制的方法转换)。

2.二进制运算规则

(1)加法:逢二进一

(2)减法:借一当二

(3)乘法:0x0=0,0x1=0,1x0=0,1x1=1

(4)除法:同十进制除法相同

3.机器数和码制

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

1)原码表示法

数制X的原码记为[X]原,最高为是符号位,0为正号,1为负号。

[0]原=00000000,[-0]原=10000000

2)反码表示法

数值X的反码表示为[X]反,最高位是符号位,0为正,1为负。

正数的反码与原码相同,负数的反码是其绝对值安位取反。数值0的反码有两种形式[0]反=00000000,[-0]反=1111111

3)补码的表示法:

[X]补正数的补码与其原码和反码相同,负数的补码是反码的末尾加1。0有为一的补码[0]补=00000000,[-0]补=00000000

4.定点数和浮点数

1)定点数

小数点的位置固定不变的数。小数点的位置通常有两种约定方式:

定点整数(纯整数,小数点在最低有效数值位之后)、定点小数(纯小数,小数点在最高有效数值位之前)。

2)浮点数

一个二进制数N可以表示成为N=2ExF,E叫做阶码,F叫做尾数。

用阶码和尾数表示的数叫做浮点数。浮点数的表示格式:阶符阶码数符尾数

阶码通常为带符号的纯整数,尾数为带符号的纯小数。

(1)若尾数M≥0,则尾数的形式为:M=0.1xxxxx…x,X可以为0也可以为1。

(2)若尾数M≤0,则尾数的形式为:M=1.0xxxx…x,5.十进制数与字符的编码表示

数值、文字和英文字母等都被认为是字符,任何字符进入计算机时都回被转换成二进制表示形式,成为字符编码。

用四位二进制表示一位十进制,成为二-十进制编码,简称BCD码。

6.ASCII码

ASCII(American Standard Code for Information Interchange)是美国标准信息交换码的简称,采用7个二进制位对字符进行编码。低四位用作行编码,高三位用作列编码。

7.汉字编码

1)输入码

为了能直接使用西文标准键盘进行输入,必须为汉字设计相应得编码方法。汉字编码方法主要有三类:数字编码,拼音编码,字形编码。

(1)数字编码:如区位码

(2)拼音码:汉语拼音输入法,重码率比较高

(3)字形编码:五笔字型输入法

2)内部码

是汉字在设备或信息处理系统内部最基本的表达形式。

3)字形码

汉字字形码是表示汉字字形的字模数据,通常用点阵、矢量函数等方式表示。

用点阵表示字形时,汉字字形码指的就是这个汉字字形点阵的代码。字库中存储了每个汉字的点阵代码,当显示输入时才检索字库,输出字模点阵得到字形。

汉字的矢量表示法是将汉字看作是由笔画组成的图形,提取每个笔画的坐标值,这些坐标值就决定笔画的位置,每一个汉字的所有笔画的坐标值组成了这个汉字字形的矢量信息。

1.2.2校验码

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

码距:所谓i码距是指一个编码系统中任意两个合法编码之间至少有多少个二进制位不同。

1.奇偶校验码(Parity Codes)

通过在编码中增加一位校验码来使编码中1的个数为奇数(奇校验)或为偶数(偶校验),从而使码距为2。当合法的编码发生错误时,编码中的1的个数的奇偶性就会改变,从而发现错误。但是不能查出错误在哪,所以只能发现错误不能校验错误。

1)水平奇偶校验码

2)垂直奇偶校验码

3)水平垂直校验码

2.汉明码(Hanmming Code)

汉明码是利用奇偶性来检错和纠错的校验方法。其构成方法是:在数据位之间插入k个校验位,通过扩大码距来实现检错和纠错。1.2.3逻辑代数及逻辑运算

1.基本的逻辑运算

在逻辑代数中有三种基本的运算:“与”运算、“或”运算、“非”运算。

1.2.4机器数的运算

1)原码加、减法

当两个相同符号的原码数相加时,只需将树枝部分直接相加,运算结果的符号与两个加数的符号相同。若两个原码的符号相异,则先比较两个原码绝对值大小,然后用绝对值大的绝对值减去绝对值小的绝对值,结果的符号取绝对值大的符号。

2)补码加、减法

(1)补码的加法的运算法则是:[X+Y]补=[X]补+[Y]补

(2)补码的减法的运算法则是:[X-Y]补=[X]补+[-Y]补

补码的加减法运算规则:

·参加运算的操作数用补码表示;

·符号位参加运算

·若进行相加,则两个数的补码直接相加;若进行相减,则将减数连同符号位一起变反加1后与被减数相加;

·运算结果用补码表示

多数计算机采用补码运算规则,比采用原码运算规则运算速度快。

3)溢出

一旦运算结果超出所能表示的数据范围,就会发生溢出。

4)溢出的判定

常用的检测机制主要有进位判决法和双符号判决法。

(1)双符号判决法

若采用两位表示符号,即00表示正好,11表示负号,则溢出时两个符号位就不一致,从而判定为发生了溢出。

(2)进位判决法

令Cn-1最高数数值位向最高的进位,Cn表示符号位的进位,则Cn-1⊕Cn=1表示溢出。

1.3计算机的基本组成及工作原理

计算机硬件的基本组成由运算器、控制器、存储器和输入设备和输出设备等五大类组成。

1.3.1总线

1.总线的定义与分类

总线是连接多了设备的信息传送通道,实际上是一组信号线。分为:

(1)芯片内总线

(2)元件级总线

(3)内总线,即系统总线

(4)外总线,即通信总线

2.内总线

内总线有专业内总线和标准内总线之分。内总线的性能直接影响计算机系统。常见的内总线主要有三种:

1)ISA:是工业标准总线,向上与更早些的PC总线兼容。

2)EISA:是在ISA总线的基础上发展起来的32位总线。

3)PCI:是目前微型机上广泛采用的内总线。

3.外总线

1)RS-232C:是一条串行外总线。

2)SCSI:是一条并行外总线。

3)USB:由四条信号线组成,其中两条用于传送数据,两条传送+5V容量为500mA的电源。

4)IEEE1394:由6条信号线组成,其中两条传送数据,两条传送控制信号,两条传送8到40v容量为1500mA

第一章计算机系统基础知识,计算机系统基础知识 第一章(未完待续)相关推荐

  1. CC2530学习路线-基础实验-串口通讯发送字符串(4 未完待续)

    目录 1. 前期预备知识 1.1 串口通讯电路图 1.2 实验相关寄存器 1.2 常用波特率设置 本章未完待续..... 原来写的文章已经丢失了,只能找到这一小部分,看什么时候有时间再补上. 1. 前 ...

  2. Python基础:内置异常(未完待续)

    Python基础:内置异常(未完待续) 参考文章: (1)Python基础:内置异常(未完待续) (2)https://www.cnblogs.com/luo630/p/9176768.html 备忘 ...

  3. 学完oracle 再学mysql_一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

  4. 【音频播放】自制音频播放器—音视频基础概念,未完待续。。。

    近期用Electron制作了一个简易版客户端,未完待补充,重点在播放,引用凯教,先说几点.(图片禁止搬运,不得允许不准转载) 研究音频的数字化技术之前,必须对声音和图像的的物理性质有基本的了解. 如下 ...

  5. 高通 NFC开发基础知识 (未完待续)(目前是主要择录,参考 邓凡平:深入理解Android:WiFi模块 NFC和GPS卷)

    NFC开发相关 NFC概述 NFC(Near Field Communication,近场通信)也叫做近距离无线通信技术.该技术最早由Philips和Sony两家公司于2002年年末联合推出.2004 ...

  6. ASP.NET Core 2.2 基础知识(十四) WebAPI Action返回类型(未完待续)

    要啥自行车,直接看手表 //返回基元类型public string Get(){return "hello world";} //返回复杂类型public Person Get() ...

  7. HTML基础知识(未完待续)

    一.HTML编辑工具:Sublime Text 二.HTML实体字符:1.( 空格):&nbsp: 2.(<) &lt: 3.(>)&gt: 4.(&)&a ...

  8. [C/C++] C语言基础知识:%X是什么意思(未完待续)

    %a,%A 读入一个浮点值(仅C99有效) %c 读入一个字符 %d 读入十进制整数 %i 读入十进制,八进制,十六进制整数 %o 读入八进制整数 %x,%X 读入十六进制整数 %s 读入一个字符串, ...

  9. [3D数学基础:图形与游戏开发]读书笔记 第9章(矩阵的更多知识、行列式、逆、正交矩阵、4x4齐次矩阵)未完待续

    第9章 矩阵的更多知识 矩阵的行列式 任何一个方阵都存在一个标量,称为行列式,非方阵的行列式是未定义的 2x2矩阵行列式 3x3矩阵行列式 余子式 从M去除第i行和第j列剩余的矩阵,代数余子式是标量 ...

最新文章

  1. c 运行 java linux命令行参数,Linux下用命令行编译运行Java总结
  2. Git 经常使用命令总结
  3. Eclipse 无限编译Invoking 'Maven Project Builder'导致卡主
  4. 教你搞定Android自定义View
  5. HDU Problem - 2732 Leapin' Lizards(最大流,拆点建边)
  6. 基于Citus和ASP.NET Core开发多租户应用
  7. remote: Incorrect username or password ( access token ) fatal: Authentication failed for gitee
  8. 知识点总结vector创建二维数组
  9. jsp里加java代码,利用静态内部类为您的代码添加辅助功能-JSP教程,Java技巧及代码...
  10. 华为面试分配_什么时候不做面试分配
  11. 如何制作毛玻璃效果?
  12. Dropout抑制过拟合与超参数选择
  13. 电子元器件检测与维修从入门到精通视频教程
  14. vue当前浏览器是否为ie_vue项目检测IE浏览器版本,版本太低给出提示
  15. 冥思苦想,木疙瘩也能崩出个豆:扯一下各大软件的用户体验
  16. 电影下载合并教程 (转)
  17. 智能营销增益(Uplift Modeling)模型——pylift库的使用(二)
  18. 无法卸载creative cloud桌面应用程序
  19. 腾讯优图·AI 开放平台全面升级:AI 能力最全面的平台
  20. 提高篇 第四部分 数据结构 第1章 树状树组

热门文章

  1. 时尚育儿观:情商第一 智商第二
  2. 收支科目不为零_期间损益结转余额为零能结账吗
  3. 《Python语言程序设计》王恺 王志 李涛 机械工业出版社 第8章 多线程与多进程 课后习题答案【强烈推荐】
  4. 深度对话字节火山引擎:进军云服务的初心、决心与信心
  5. Android工程师进阶之路 Android开发进阶 从小工到专家 上市啦
  6. 王咏刚《AI的产品化和工程化挑战》
  7. 德国:一个中国人在德国生活的真实感受
  8. 退出mysql命令_进入mysql命令行之后,怎么退出
  9. au6989sn-gtd_GTD和OmniFocus 2-我的工作流程
  10. 网站关键词html代码,html网站代码+网站关键词如何优化呢