1 计算机组成
由硬件系统(主机系统和外部设备)与软件系统组成。
- 外部设备:所有可以通过输入输出接口与计算机进行信息交换的电子设备
- 能够与CPU直接进行信息交换的部件属于主机系统;
- 不能够与CPU直接进行信息交换的部件属于外部设备
图1 微型计算机系统组成
2 主机系统
主要由CPU、存储器、输入输出接口、总线组成。
-
微处理器简称CPU,包括运算器,控制器,寄存器组
-
存储器:内存储器和外存储器。外存储器:联机外存——硬磁盘,脱机外存——各种移动存储设备;内存储器的术语:存储容量和对存储器的操作(读或写),按工作方式分为:随机存取存储器RAM,和只读存储器ROM
-
输入/输出接口:接口是CPU与外部设备间的桥梁
-
总线:是一组导线和相关的控制、驱动电路的集合;是计算机系统各部件之间传输地址、数据和控制信息的通道。地址总线(AB)、数据总线(DB)、控制总线(CB)
3 软件系统
主要由系统软件和应用软件组成。
系统软件主要包括:操作系统、编译系统、网络系统、工具软件。
4 微型计算机的一般工作过程
取指令、分析指令、读操作数、执行指令、存放结果
顺序执行:一条指令执行完了再执行下一条指令。
并行执行:同时执行两条或多条指令。(流水线工作)
5 冯•诺依曼计算机的工作原理
存储程序工作原理,结构特点:运算器为核心。
冯●诺依曼计算机体系结构:存储器、运算器、控制器、输入输出设备。
冯●诺依曼机的特点和不足(哈佛结构):
- 特点:程序存储,共享数据,顺序执行;属于顺序处理机,适合于确定的算法和数值数据的处理。
- 不足:与存储器间有大量数据交互,对总线要求很高;执行顺序由程序决定,对大型复杂任务较困难;以运算器为核心,处理效率较低;由PC控制执行顺序,难以进行真正的并行处理。
6 计算机中的数制
二进制B,八进制O,十进制D,十六进制H。
7 计算机中编码
(1)数值编码:二进制码、BCD码(用二进制数表示的十进制数)
(2)8421BCD编码:用4位二进制码表示1位十进制数,每4位之 间有一个空格;压缩BCD码,扩展BCD码
(3)西文字符编码:ASCⅡ码;标准ASCII的有效位::7bit,最高位默认为0;规律:大写字母前四位是:0100;小写字母前四位是:0110;数字前四位是:0011。
(4)ASCII码的奇偶校验:加上校验位后编码中“1”的个数为奇数或者偶数。
8 计算机中的数及其运算
(1)数的表示方法:定点数(定点整数、定点小数)和浮点数
(2)数的性质:无符号数和有符号数
(2)无符号数的算术运算:每乘以2,相对于被乘数向左移动1位;每除以2,相对于被除数向右移动1位
(3)有符号数:表示方法:原码、反码、补码
原码
- 最高位为符号位,其余为真值部分。[X]原=符 号位+ |绝对值|
- 优点:真值和其原码表示之间的对应关系简单,容易理解;
- 缺点:计算机中用原码进行加减运算比较困难;0的表示不唯一。
反码:正数的反码=原码,负数:对应原码的符号位不变,数值部分按位求反。
补码:正数的补码=原码,负数:补码=反码+1,满足+0=-0
作用:实现将减法运算转换为加法运算
补充
现代计算机系统中,程序设计时,负数可用“_”表示,由编译系统将其转换为补码。
溢出的判断方法:
- 无符号数加减运算溢出的判断方法:当最高位向更高位有进位(或借位)时则产生溢出
- 有符号数运算中的溢出判断:最高位和次高位进位情况不同。
9 基本逻辑运算与逻辑门
基本逻辑运算:
与、或、非
逻辑运算与数学运算的区别:
算术运算是两个数之间的运算,低位运算结果将对高位运算产生影响;逻辑运算是按位进行的运算,低位运算结果对高位运算不产生影响。
10 CPU个数、CPU核心数、CPU线程数
CPU个数——CPU芯片个数;CPU的核心数是指物理上,也就是硬件上存在着几个核心; 线程数是一种逻辑的概念,简单地说,就是模拟出的CPU核心数。
对于一个CPU,线程数总是大于或等于核心数的
。一个核心最少对应一个线程,但通过超线程技术,一个核心可以对应两个线程,也就是说它可以同时运行两个线程。
CPU的线程数概念仅仅只针对 Intel 的CPU才有用,因为它是通过Intel超线程技术来实现的,最早应用在Pentium4上。如果没有超线程技术,一个CPU核心对应一个线程。所以,对于AMD的CPU来说,只有核心数的概念,没有线程数的概念。
CPU之所以要增加线程数,是源于多任务处理的需要。
线程数越多,越有利于同时运行多个程序,因为线程数等同于在某个瞬间CPU能同时并行处理的任务数。
11 CPU与GPU的区别
设计的区别:
-
CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。
-
CPU擅长逻辑控制,串行的运算。和通用类型数据运算不同,GPU擅长的是大规模并发计算,这也正是密码破解等所需要的
。GPU除了图像处理,也越来越多的参与到计算当中来。
更多内容,请进入
请进入
。
什么类型的程序适合在GPU上运行?
(1)
计算密集型的程序
。所谓计算密集型(Compute-intensive)的程序,就是其大部分运行时间花在了寄存器运算上,寄存器的速度和处理器的速度相当,从寄存器读写数据几乎没有延时。可以做一下对比,读内存的延迟大概是几百个时钟周期;读硬盘的速度就不说了,即便是SSD, 也实在是太慢了。
(2)**易于并行的程序。**GPU其实是一种SIMD(Single Instruction Multiple Data)架构, 他有成百上千个核,每一个核在同一时间最好能做同样的事情。
补充:
生产处理器的厂商:Intel、AMD、ARM、Nvidia、IBM