自1946年世界上的第一台计算机 ENIAC 诞生以来,计算机技术获得了迅猛发展。
下图为世界上的第一台计算机 ENIAC:
下图为中国第一台计算机 103机:
根据计算机所用电子器件的不同,计算机已经历电子管、晶体管、集成电路、大规模及超大规模集成电路 4个时代。
第一代 电子管计算机(1946——1958)
其主要特点是:硬件方面,采用电子管作为基本逻辑电路元件,主存储器采用汞延迟线、磁鼓和磁芯,外存储器采用磁带;软件方面,只能使用机器语言和汇编语言,计算机体积庞大、功耗大、可靠性差、价格昂贵,应用以科学计算为主。
第二代晶体管计算机(1958——1964)
其主要特点是:硬件方面,采用晶体管作为基本逻辑电路元件,主存储器主要采用磁芯,外存储器开始采用磁盘;软件有了很大的发展,出现了各种各样的高级语言及其编译程序,还出现了以批处理为主的操作系统;计算机的体积大大缩小,耗电减少,可靠性提高;应用以科学计算和各种事务处理为主,并开始用于工业控制。
晶体管计算机如图:
集成电路数字计算机如图:
集成电路如图:
mac 笔记本电脑:
mac 笔记本电脑主板:
说到计算机的发展,就不能不提到美国科学家 冯·诺依曼(计算机之父)。20世纪30年代中期,冯·诺依曼提出了电子计算机存储程序的理论。直到今天,计算机内部依然采用这种机制,其特点是:计算机由 控制器、运算器、存储器、输入设备、输出设备 五大部分组成。
计算机问世之初,主要用于数值计算,“计算机”因此得名。
但随着计算机技术的发展,它的应用范围不断扩大,不在局限于数值计算而广泛地应用于数据处理、自动控制、计算机辅助设计、计算机辅助制造、计算机辅助教学、人工智能、多媒体技术、计算机网络等领域。
科学计算又称数值计算,它是计算机最早的应用领域。科学计算是指计算机用于完成科学研究和工程技术中所提出的数学问题的计算。
这类计算往往公式复杂,难度很大,因为一般计算工具或人力难以完成。例如,气象预报需要求解描述大气运动规律的微分方程。发射导弹需要计算导弹弹道曲线方程,这都需要通过计算机的高速而精确的计算才能完成。
数据处理是指在计算机上管理,加工各种数据资料,从而使人们获得更多有用信息的过程。例如企业管理、物资管理、报表统计、账目计算和信息情报检索等都是数据处理。
自动控制是指利用计算机对某一过程进行自动操作的行为。它不需要人工干预,能够按人预定的目标和状态进行过程控制,如无人驾驶飞机、导弹和人造卫星等。
计算机辅助系统包括计算机辅助设计、计算机辅助制造和计算机辅助教学等。其中,计算机辅助设计(Computer-Aided Design, CAD)是指利用计算机来帮助设计人员进行工程设计。
计算机辅助制造(Computer-Aided Manufacturing, CAM)是指利用计算机来进行生产设备的管理、控制和操作,它对提高产品质量、降低成本和缩短生产周期等起了积极的作用。
计算机辅助教学(Computer-Assisted Instruction, CAI)是指利用计算机来辅助学生学习,它将教学内容、教学方法以及学生学习情况存储与计算机内,使学生能够从CAI系统中学到所需要的知识。
人工智能(Artificial Intelligence, AI)是指让计算机模拟人类的某些智力行为。例如,可以用计算机模拟人脑的部分功能进行思维、学习、推理、联想和决策,使计算机具有一定的“思维能力”。
多媒体(Multimedia)是文本、动画、图形、图像、音频和视频等各种媒体的组合物。近些年来,多媒体技术广泛应用于各行各业以及家庭娱乐等。
计算机网络是现代计算机技术与通信技术高度发展和密切结合的产物,它利用通信设备和线路将地理位置不同、功能独立的多个计算机系统互连起来,实现网络中资源共享和信息传递。
例如,全世界最大的计算机网络 Internet (因特网)将整个地球变成了一个小小的村落,人们可以方便地在网上查询信息、下载资源、通信、学习、娱乐和买卖东西等。
我们生活中用的是十进制,十进制数是组成以10为基础的数字系统,有0,1,2,3, 4, 5, 6, 7, 8, 9十个基本数字组成。
- 十进制基于位进制和十进位两条原则,即所有的数字都用10个基本的符号表示,满十进一,同时同一个符号在不同位置上所表示的数值不同,符号的位置非常重要。
- 基本符号是0到9十个数字。
- 要表示这十个数的10倍,就将这些数字左移一位,用0补上空位,即10,20,30,…,90;
- 要表示这十个数的1/10,就右移这个数的位置,需要时就0补上空位:0.1,0.2,0.3,… ,0.9。
计算机中用的是二进制,类比学习,可以让你学的更快更牢固。
- 二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。
- 在早期设计的计算机进制主要是十进制(因为我们有十个手指,所以十进制是比较合理的选择,用手指可以表示十个数字,0的概念直到很久以后才出现,所以是1-10而不是0-9)。
- 电子计算机出现以后,使用电子管来表示十种状态过于复杂,所以所有的电子计算机中只有两种基本的状态,开(1)和关(0)。也就是说,电子管的两种状态决定了以电子管为基础的电子计算机采用二进制来表示数字和数据。
- ENIAC 采用十进制,冯·诺依曼 提出二进制。
位(bit):数据的最小单位,每个数码成为一位;(二进制,每一位都是0或1)
字节(Byte):存储容量的基本单位;
字节(B)、千字节(KB)、兆字节(MB)、吉字节(GB),太字节(TB);
换算关系:
1024 = 2 10 1024 = 2^{10} 1024=210
字长是一个重要标志,直接反应一台计算机的计算能力和计算精度。
其他条件一定时,字长越长,计算机的数据处理速度越快。
二进制(Binary):1001B,以Binary的缩写B为后缀,表示它是一个二进制数;
八进制(Octonary):520O,同上,缩写O为后缀表示是八进制数;
十进制(Decimal):520D,其中D可省略,就是我们生活中用的520;
十六进制(Hexadecimal):7FH,缩写H为后缀,或者 0x 开头,如 0x7F 都表示十六进制数。十六进制为0,1,…,9,A,B,…,F,其中 A 表示10,B为11,C为12,一直到 F 表示15。
进制转换如下,
其他进制转换为十进制:
- 如二进制转十进制, 1001 B = 1 × ( 2 3 ) + 0 × ( 2 2 ) + 0 × ( 2 1 ) + 1 × ( 2 0 ) = 9 1001 B = 1×(2^3) + 0×(2^2) + 0 ×(2^1) + 1×(2^0) = 9 1001B=1×(23)+0×(22)+0×(21)+1×(20)=9
- 如八进制转十进制, 520 O = 5 × ( 8 2 ) + 2 × ( 8 1 ) + 0 × 8 0 = 336 520O = 5×(8^2 )+ 2 × ( 8^1 ) + 0×8^0 =336 520O=5×(82)+2×(81)+0×80=336
- 如十六进制转十进制, 7 F H = 7 × ( 1 6 1 ) + F × 1 6 0 = 7 × 16 + 15 × 1 = 127 7FH=7×(16^1) + F×16^0 = 7×16+15×1=127 7FH=7×(161)+F×160=7×16+15×1=127
你学废了吗?二进制记住8,4,2,1四个数,什么意思呢?
差一张图在这里!二进制转其他进制:
- 如二进制转八进制: 10010111 B = 10010111 B = 227 O 10010111B = 10 010 111B = 2 2 7 O 10010111B=10010111B=227O
- 如二进制转十进制: 10010111 B = 1 × 2 7 + 1 × 2 4 + 1 × 2 2 + 1 × 2 1 + 1 × 2 0 = 512 + 16 + 4 + 2 + 1 = 535 10010111B=1×2^{7}+1×2^4+1×2^2+1×2^1+1×2^0=512+16+4+2+1=535 10010111B=1×27+1×24+1×22+1×21+1×20=512+16+4+2+1=535
- 如二进制转十六进制: 10010111 B = 10010111 B = 97 F 10010111B =1001 0111B=97F 10010111B=10010111B=97F
差一张图在这里!
随机存取存储器(Random Access Memory,RAM)又称作"随机存储器",是与CPU 直接交换数据的内部存储器,也叫主存(内存)。
RAM 具有随机存取和易失性的特点;
ASCII 码只对英文字母、数字和标点进行了编码。(记住国际通用 ASCII 码的码长是 7)
因为是歪果仁发明的,他们说的是英语,只需要编码26个英文字母,这也是为什么目前 C,C++,Python 敲代码用的也是英语而不是汉语。
ASCII 码如图:
汉字分成两级:
因为一个字节足以表示6763个汉字,所以一个国标码用两个字节来表示一个汉字,每个字节最高位为0。
汉字的处理过程:
输入—>输入码—>国标码—>机内码—>地址码—>字形码—>输出
- 输入码:为将汉字输入计算机而编制的代码成为汉字输入码,也叫外码;
- 内码:为在计算机内部对汉字进行存储、处理的汉字编码;
- 字形码:用于汉字在显示屏或打印机输出;
- 地址码:指汉字库地址码,需要向输出设备输出汉字时,必须通过地址对汉字库进行访问;
其他汉字内码:
- GBK码:(扩充汉字内码规范)多达2万多简、繁汉字的编码;
- UCS码:包含字母文字,中日韩的表意文件;
- Unicode编码:65536个字符编码,主要用来解决多语言的计算问题;
- BIG5码:香港、台湾地区使用的一种繁体汉字编码;
.txt 文件常用的编码有 ANSI 和 UTF-8,有时候文件打开出现乱码就是编码格式错误,如下图:
其中,处理器 = 控制器 + 运算器,处理器是计算机的大脑,又叫 CPU。
- 软件系统是为运行、管理和维护计算机而编制的各种程序、数据和文档的总称。
- 软件:是计算机的灵魂,没有软件的计算机毫无用处。
- 程序:是按照一定顺序执行的、能够完成某一任务的指令集合。
- 程序设计语言:人们让计算机完成某项任务的语言。
- 机器语言:计算机认识的语言,直接执行;
- 汇编语言:符号语言,需要编译才能执行;
- 高级语言:接近自然语言(编译方式和解释方式执行);
对二进制数码进行算术运算(加、减、乘、除)或逻辑运算(与、或、非、异或),所以也称为算术逻辑部件。
- 与(AND,符号:&)
运算规则:全一为一,有零为零。即只有两个操作数都为1时,结果才为1,其他情况均为0(只要有0,结果就为0)。
1 与 1 = 1,1 AND 0 = 0,0 & 0 = 0;三种表述均可。- 或(OR,符号:|)
运算规则:全零为零,有一为一。即只有两个操作数都为0时,结果才为0,其他情况均为1(只要有1,结果就为1)。
1 或 1 = 1,1 OR 0 = 1,0 | 0 = 0;三种表述均可。- 非(NOT,符号: 1 ˉ \bar 1 1ˉ,上面一个横线表示 非)
逻辑非运算,仅有一个运算操作数,所以是一元逻辑运算。
运算规则:一变零,零变一。即操作数为1时结果为0,操作数为0时结果为1。
1 ˉ = 0 \bar 1 = 0 1ˉ=0, 0 ˉ = 1 \bar 0 = 1 0ˉ=1。- 异或(XOR)
逻辑异或运算,运算规则:相异为一,相同为零。即两个操作数不一样时结果为1,两个操作数相同时结果为0。
1 XOR 1 = 0,0 XOR 0 = 0; 1 XOR 0 = 1,0 XOR 1 = 1。
计算机的运算速度通常是指每秒钟能够执行加法指令的数目,用 百万次/每秒(MIPS) 来表示。
控制器是计算机的心脏,由它指挥各个部件自动、协调地工作。
指令执行过程:取指令->分析指令->生成控制信号->执行指令->重复执行。
PC 总保存下一条要执行指令的地址。
运算器 + 控制器合称中央处理器(CPU),时钟主频越高,速度越快。
存储程序和数据的部件,分**内存(主存)和外存(辅存)**两大类。
读写速度 从快到慢 排列 : 寄存器(CPU里面的)> CACHE (高数缓冲储存器 CPU 里的) > RAM > ROM > 外部设备;
由于读写速度的差异,CPU 不能直接与外部设备打交道,要通过 RAM 或 CACHE 做中介的桥梁。
内存:
- 内存 = 只读存储器 ROM + 随机存取存储器 RAM (only只)(random 随机)
- 随机存储器RAM:通常所说的计算机内存;
- 只读存储器ROM:固化后用户无法更改;(只可读,不可写)
Cache缓存: 主要是为了解决CPU的主存速度不匹配,为提高存储速度而设计。
外存 : 不能被CUP直接访问(硬盘、U盘、光盘 软盘)
- 硬盘:读写物理单位 扇区
- 闪速存储器(Flash)
- 光盘
层次结构:
- Cache——主存层次(解决速度不匹配问题)
- 主存——辅存层次(解决存储器系统容量问题)
系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。(比如你打开一个文件,在 Windows 操作系统上只需要双击文件,但是底层的硬件用到什么你不知道)
(1)操作系统
操作系统对计算机资源进行控制与管理的系统化程序集合,它是用户和计算机硬件系统之间的接口,为用户和应用软件提供了访问和控制计算机硬件的桥梁。
如 Windows、Linux、Unix、MacOS。(其中 Windows 操作系统也是你要考试的内容)
(2)语言处理程序
人与人交流需要语言,人与计算机之间交流同样需要语言。人与计算机之间交流信息使用的语言叫做程序设计语言。
按照其对硬件的依赖程度通常把程序设计语言分为三类:
◆机器语言:是一种用二进制代码“1”和“0”组成的一组代码指令,是唯一可以被计算机硬件识别和执行的面向机器的语言。
◆汇编语言:是使用一些能反映指令功能的助记符来代替机器指令的符号语言。
◆高级语言:是一种独立于机器的算法语言。高级语言的表达方式接近于人们日常使用的自然语言和数学表达式,并且有一定的语法规则。
(3)数据库管理系统
数据库管理系统主要面向解决数据处理的非数值计算问题,对计算机中存放的大量数据进行组织、管理、查询。常用的数据库管理系统有SQL Server、Oracle、Mysql和Visual FoxPro等。
(4)系统支撑和服务程序
该类程序又称工具软件,如系统诊断程序、调试程序、排错程序、编辑程序、查杀病毒程序等等,都是为维护计算机系统的正常运行或支持系统开发所配置的软件系统。
应用软件是为满足用户不同领域、不同问题的应用需求而提供的那部分软件。 它可以拓宽计算机系统的应用领域,放大硬件的功能。
软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。
软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。(比如你想娱乐打发时光,所以开发了抖音快手等短视频娱乐软件)
计算机硬件系统的五大部件并不是孤立存在的,需要相互连接和传输。计算机的结构反映了计算机各个组成部件之间的连接方式。
计算机的总线结构(数据总线、地址总线、控制总线)
1.第二代电子计算机的主要元件是______。
A.继电器
B.晶体管
C.电子管
D.集成电路
答案:B
2.以下不属于电子数字计算机特点的是______。
A.运算快速
B.计算精度高
C.形状粗笨
D.通用性强
答案:C
3.______领域是计算机应用中最诱人、也是难度大且目前研究最为活跃的领域之一。
A.辅助设计
B.信息处理
C.人工智能
D.过程控制
答案:C
4.在计算机领域,信息是经过转化而成为计算机能够处理的______。
A.数据
B.符号
C.图形
D.数字
答案:A
5.电子数字计算机的运算对象是______。
A.模拟量
B.混合量
C.脉冲
D.不连续量
答案:D
6.下列各类计算机存储器中,断电后其中信息会丢失的是______。
A.ROM
B.RAM
C.硬盘
D.软盘
答案:B
7.微处理器芯片的位数即指______。
A.速度
B.字长
C.主频
D.周期
答案:B
8.保持微型计算机正常运行必不可少的输入/输出设备是______。
A.键盘和鼠标
B.显示器和打印机
C.键盘和显示器
D.鼠标和扫描仪
答案:C
9.决定微处理器性能优劣的重要指标是______。
A.内存的大小
B.微处理器的尺寸
C.主频
D.内存储器
答案:C
10.ASCII码可以表示的字符个数是______。
A.256
B.255
C.128
D.127
答案:C
11.二进制数10110001相对应的十进制数应是______。
A.123
B.167
C.179
D.177
答案:D
12.计算机内部用于处理数据和指令的编码是______。
A.十进制码
B.二进制码
C.ASCII码
D.汉字编码
答案:B
13.以下选项中,______不属于计算机外部设备。
A.输入设备
B.中央处理器和主存储器
C.外存储器
D.输出设备
答案:B
14.个人计算机(PC)必备的外部设备是____。
A.键盘和鼠标
B.显示器和键盘
C.键盘和打印机
D.显示器和扫描仪
答案:B
15.计算机执行某种操作的命令被称为______。
A.指令
B.程序
C.程序设计语言
D.指令系统
答案:A