计算机的发展

世界上第一台电子数字计算机ENIAC于1946年2月在美国宾夕法尼亚大学诞生

计算机的发展历程

时代 年份 器件 软件 应用
46-58 电子管 机器语言 汇编语言 科学计算
58-64 晶体管 高级语言 数据处理 工业控制
64-70 晶体管 操作系统 文字处理 图形处理
71年迄今 大规模集成电路 数据库、网络等 社会各领域

计算机的特点及分类

计算机的特点:运算速度快 、计算精度高 、存储容量大…

计算机的分类:巨型机 、大型机 、小型机 、微型机…

计算机的应用

  1. 科学计算
  2. 信息处理
  3. 计算机辅助设计与计算机辅助制造 (CAD/CAM)
  4. 计算机辅助教学与计算机管理教学 (CAI/CMI)
  5. 自动控制
  6. 多媒体应用
  7. 电子商务

计算机发展趋势:巨型化、微型化、网络化、智能化

计算机发展未来:

  • 分子计算机
  • 量子型计算机
  • 光子计算机
  • 纳米计算机
  • 生物计算机

计算机的应用领域:

  • 信息管理
  • 过程控制
  • 辅助技术
  • 翻译
  • 多媒体应用
  • 计算机网络

信息与数制系统

信息是指音讯、消息、通讯系统传输和处理的对象,泛指人类社会传播的一切内容。

数据也被称为数值,也就是人们通过观察、实验 或计算得出的结果。数据有很多种,最简单的是数 字。

计算机进制转换与数值表示法

计算机中的进位计数制

  1. 数码
  2. 基数
  3. 位权
  4. 数制
  5. 十进制( Decimal notation)
  6. 二进制( Binary notation)
  7. 八进制( Octal notation)
  8. 十六进制( Hexadecimal notation)
  9. 数制符号
进位制 二进制 八进制 十进制 十六进制
基数 2 8 10 16
数码 0,1 0~7 0~9 0~9 ABCDEF
2^i 8^i 10^i 16^i
形式表示 B O或者Q D H

二进制运算法则

加法:

0+0=0,1+0=0+1=1,1+1=0(进位)

如:1010B + 0101B = 1111B (第0位互相加 0+1 = 1 以此类推)

减法:

0-0 = 0 ,1-0 =1, 1-1=0 ,0-1= 1(借位)

如:1110B - 1001B = 0101B

乘法:

0×0 = 0 ,0×1=1×0 = 0 ,1×1=1

如:1100B*1001B = 1101100B

除法:

0÷1= 0, 1÷1= 1 ( 0不能作除数)

如:1001011B / 101B = 1111B

进制转换

二进制转十进制:

如:1100101B

B表示进位制为二进制

从后往前,1为第0位,即1*2^0 = 1

0为第1位,即0*2^1 = 0

……

1为第6位,即1*2^6=64

相加64+32+0+0+4+0+1 = 101D

十进制转二进制:

如:66D

66 / 2 = 33 — 余数 0

33 / 2 = 16 — 余数 1

16 / 2 = 8 — 余数 0

8 / 2 = 4 — 余数 0

4 / 2 = 2 — 余数 0

2 / 2 = 1 — 余数 0

1 / 2 = 0 —余数 1

从下往上拼接余数,即为 1000010B

十六进制转十进制:

如:9AH

H表示进位制为十六进制

从后往前,A为第0位,表示数码10,即10*16^0=10

9为第1位,数码9即 9*16^1 = 144

最后相加10+144 = 154

所以9AH转为十进制为154D

二进制转十六进制:

如:1011B

按照四位并一位原则,即4位二进制数转换为1位十六进制数

B表示进位制为二进制

从后往前,每四位为一组 ,1为第0位,即1*2^0 = 1

1为第1位 ,即1*2^1 = 2

0为第2位,即0*2^2 = 0

1为第3位,即1*2^3 = 8

最后8+0+2+1 = 11,11在十六进制中表示B

所以1011B转为十六进制为BH

十六进制转二进制:

如:9CH

按照一位拆四位原则,即1位十六进制数转换为4位二进制数

H表示进位制为十六进制

C表示12,那就看看8,4,2,1中哪几个数可以变成12

8 + 4 = 12 所以是 1100

9表示9,那就看看8,4,2,1中哪几个数可以变成9

8 + 1 = 9 所以是1001

所以9CH转为二进制为1001 1100B

二进制转八进制:

原则:三位并一位

八进制转二进制:

原则:一位拆三位

计算机中的数据单位

二进制数据中的一个位(bit)简写为b,音译为比特,是计算机存储数据的最小单位。

字节

字节是计算机数据处理的最基本单位,并主要以字节为单位解释信息。字节 (Byte)简记为B,规定一个字节为8位,即1B=8bit。

一个字通常由一个或若干个字节组成。字(Word)是计算机进行数据处理时, 一次存取、加工和传送的数据长度。

K(kilobyte) 字节 1KB =210B=1024 Byte

M(megabyte)字节 1MB = 220B=1024 KB

G(gigabyte) 字节 1GB = 230B=1024 MB

T(terabyte)字节 1TB = 240B=1024G

计算机数值表示法

  1. 机器数
  2. 定点数和浮点数
  3. 原码、反码和补码

机器数

在计算机内部,任何数据都只能用二进制的两个数码01来表示。除了用 01的组合来表示数值的绝对值大小外,其正负号也必须以01的形式表示。通常规定最高位(第一位)为符号位,并用0表示正, 用1表示负。

定点数和浮点数

定点数:对于定点整数,小数点的位置约定在最低位(最后一位)的右边,用来表示整数,对于定点小数,小数点的位置约定在符号位之后,用来表示小于1的纯小数

浮点数:(较为复杂,记住有阶符,阶码,尾符和尾码组成)一个二进制数 N也可以表示为 N =±S×2± P 。式中的 N、P、S均为二进 制数。 S称为 N的尾数,即全部的有效数字(数值小于 1),S前面的±号是 尾数的符号; P 称为 N的阶码(通常是整数) ,即指明小数点的实际位置, P 前面的±号是阶码的符号。

原码、反码和补码

这个我在初识C语言(3)中有提过

在计算机内,定点数有3种表示法:原码、反码和补码。反码是数值存储的一种,但是由于补码更能有效表现数字在计算机中的形式,所以多数计算机都不采用反码表示数。

原码:原码是一种机器数。数的原码表示是在机器中用符号位的0和1表示数的正号和负号,而其余位表示数的本身。

如:+7 即 0 0000111B

​ -7 即 1 0000111B

反码:原码变为反码 除符号位 其余数字皆取反

如:+7 即 0 0000111B

​ -7 即 1 1111 000B

注意:正整数的原码、反码、补码是相同的

补码:反码变为补码 最后一位需要+1

如:+7 即 0 0000111B

​ -7 即 1 1111 001B

再次注意:正整数的原码、反码、补码是相同的

计算机中的字符编码

  • 字符编码定义
  • 第一个编码表 ASCII
  • 扩展
  • 汉字字符编码
  • UNICODE

字符编码的定义

由于文字中存在大量的重复字符,为了减少需要保存的信息量,可以使用一 个数字编码来表示一个字符,通过对每一个字符规定一个唯一的数字代号。然后, 对应每一个代号建立其相对应的图形,这样,在每一个文件中,只需要保存每一 个字符的编码,这就相当于保存了文字,在需要显示出来时,先取得保存起来的 编码;然后通过编码表,查到字符对应的图形;再将这个图形显示出来,这样就 可以看到文字。

ASCII

最初,美国人制定了第一张编码表《美国标准信息交换码》,简称ASCII码,它 共规定了128个符号所对应的数字编码,包含了英文的大小写字母、数字、标点 符号等常用的字符,十进制编码从0~127。

常用的ASCII码有:

48~57: 数字 (数字0的编码为48)

65~90: 大写字母 (字母A的编码为65)

97~127: 小写字母 (字母a的编码为97)

扩展 ASCII码

扩展 ASCII码使用256种数字代号表示更多的字符。在这些字符集中,0~127的代码与ASCII码保持兼容,128~255用于其他的字符和符号

汉字字符编码

中国、朝鲜和日本的文字包含大量的符号。我国汉字的个数有数万之多,远远超过256个字符,因此一个字节的256种字符是无法表示中文的,那么就使用2个字节来表示一个中文。为了与ASCII码保持兼容,不使用低于128的编码。借鉴 ISO8859的设计方案,只使用从160以后的96个数字,2个字节分成高位和低 位,高位的取值范围为176~247共72个,低位的取值范围为161~254共94,这 样2个字节就有72×94 = 6 768种可能,也就是可以表示6 768种汉字,这个标准 就是GB 2312—1980

而GB 2312—1980仅收录6 763个汉字,大大少于汉字数量,有些不是很常用 的汉字无法表示,例如名字有用到的“ ”或“龑”字。这使得表示、存储、输 入、处理都非常不方便,于是后来制定了GBK码和GB18030码。

Unicode

在20世纪80年代就有一个称为Unicode的组织,这个组织制定了一个能够覆盖几 乎任何语言的编码表,在Unicode 3.0.1中就包含了49 194个字符。为了尽可能 与现有的软件和硬件相适应,美国又制定了一系列用于传输和保存Unicode的编 码标准UTF,这些编码称为UCS传输格式码,也就是将UCS的编码通过一定的转 换来达到使用的目的。常见的有UTF7、UTF8、UTF16等。其中UTF8编码得到了 广泛的应用

计算机系统的组成

计算机系统包括硬件系统和软件系统,硬件系统是看得见、摸得着的实体部分;软件系统是为了更 好地利用计算机而编写的程序及文档。

按照冯•诺依曼的计算机组成结构可以归纳为五大功能模块:分别是控制器、 运算器、存储器、输入设备和输出设备。

计算机的硬件系统

中央处理器(CPU)

  • 主频

    主频也叫时钟频率,单位是兆赫(M H z)或千兆赫(G H z),用来表示 CPU的运算、处理数据的速度。 n 外频

  • CPU的位和字长

  • 倍频系数

  • 缓存

    L1 Cache(一级缓存)是CPU第一层高速缓存

    L2 Cache(二级缓存)是CPU第二层高速缓存

  • 制造工艺

  • 多线程

  • 多核心

存储器

存储器的主要功能是存放程序和数据。使用时,可以从存储器中取出信息来查看、运行程序,称其为存储器的读操作;也可以把信息写入存储器、修改原有信息、删除原有信息,称其为存储器的写操作。存储器通常分为内存储器和外存储器。

计算机的内存储器分为两部分,一部分是读写存储器,也称随机存储器,英文是 “Random Access Memory” ,所以简称RAM;另一部分是只读存储器,英文是 “Read Only Memory” ,简称ROM

衡量存储器容量的大小用字节表示

1024 Byte =1 KB

1024 KB = 1 MB(兆)

1024 MB = 1 GB(1吉)

输入设备

字符输入设备:键盘;

光学阅读设备:光学标记阅读机,光学字符阅读机;

图形输入设备:鼠标器、操纵杆、光笔;

图像输入设备:摄像机、扫描仪、传真机、数码相机,数字摄影机等

模拟输入设备:语言模数转换识别系统。

触摸屏

输出设备

显示器

打印机

绘图仪

影像输出系统

语音输出系统

磁记录设备

计算机软件系统

操作系统

操作系统是整个计算机系统的管理与指挥机构,负责管理计算机的所有资源,无论是软件还是硬件,都由操作系统来指挥和调度。操作系统是用户和计算机之间的接口和桥梁。

PC端操作系统

DOC:DOS是英文Disk Operating System(磁盘操作系统)的缩写,它是美国微软公司 (Microsoft)于1981年8月推出的,又称MS-DOS,由于被美国著名的生产公司 IBM公司将它选作PC机的操作系统,所以又称为PC-DOS。

Windows:Windows 是美国微软公司于20世纪90年代推出的新的操作系统, Windows 是英文 “窗口”的意思, 也称为“视窗” 操作系统,它是基于图形界面的。

Linux:Linux是一套免费的操 作系统。其内核写得 紧凑高效,可以充分 发挥硬件的性能,并 且具有良好的兼容性 和可移植性。Linux的 源代码是完全公开的, 允许任何人以任何形 式进行修改和传播。

移动端操作系统:

Android:安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美 国Google公司和开放手机联盟领导及开发,是当前世界上占有率最高的手机操作系统。2022年5月12日,谷歌举办I/O 2022开发者大会,正式发布了 Android 13。

iOS:iOS是由苹果公司开发的移动操作系统。 苹果公司最早于2007年1月9日 的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续 套用到iPod touch、iPad上。2022年8月16日,苹果iOS 16开发版推出了 Beta6版本,预计iOS 16正式版将于2022年9月向公众发布

Windows Phone:Windows Phone(简称为WP)是微软于2010年10月21日正式发布的一款手机操作系统,初始版本命名为Windows Phone 7.0。2012年6月,微软正式发布Windows Phone 8,2015年后续系统为Windows 10 Mobile。由于 Windows 10将是一个跨平台的系统,适用于手机、平板、笔记本、PC等所 有平台。这也就意味着,Windows Phone品牌将正式终结,被统一命名的 Windows 10所取代 ,Windows Phone系统也将经历Windows Phone 7和 Windows Phone 8后正式谢幕

语言处理程序

  1. 汇编程序
  2. 解释程序
  3. 编译程序

汇编程序

汇编程序的作用是将用汇编语言编写的源程序翻译成机器语言的目标程序。

将高级语言编写的源程序翻译成机器语言指令时,有两种翻译方式,分别 是“解释”方式和“编译”方式,分别由解释程序和编译程序完成。

解释程序

解释方式是通过解释程序对源程序一边翻译一边执行,Python和JavaScript语言采用的就是解释方式。

编译程序

编译过程是首先将源程序编译成目标程序,然后再通过连接程序将目标程序和库文件相连接形成可执行文件,如C、C++、Delphi等。

计算机科学前沿技术

人工智能技术

人工智能是人类智慧在机器上的实现,目前还没有统一的定义,人工智能的定义依赖于对智能的定

义,但智能本身无严格定义。一般解释,用人工的方法在 计算机上实现智能,或称机器智能、计算

机智能。用计算机模拟或者实现智能, 研究的主要目标,是使计算器能够胜任一些通常需要人类智

能才能完成的复杂工 作。

人工智能研究和应用领域

目前,人工智能还未形成一个统一的理论,很多研究和应用工作都是结合具体领域来进行。

其中最主要的研究和应用领域包括:

• 机器学习

• 自然语言理解

• 专家系统

• 模式识别

• 计算机视觉

• 机器人学

• 搏弈

• 自动定理证明

• 自动程序设计

• 智能控制

• 智能决策支持系统

• 人工神经

……

云计算技术

云计算(cloud computing)是分布式计算的一种,指的是通过网络“云” 将巨大的数据计算处理程序

分解成无数个小程序,然后,通过多部服务器组成的系统进行处理和分析这些小程序得到结果并返回

给用户。现阶段所说的云服务已经不单单是一种分布式计算,而是分布式计算、效用计算、负载均

衡、并行计算、 网络存储、热备份冗杂和虚拟化等计算机技术混合演进并跃升的结果。目前,云计

算的主要服务形式有:SaaS(Software as a Service), PaaS(Platform as a Service),

IaaS(Infrastructure as a Service)。

云计算技术已经普遍服务于现如今的互联网服务中,成为了社会生活中的一部分,常见的应用有以下

四个方面。

  1. 存储云(百度云、腾讯云)
  2. 医疗云
  3. 金融云
  4. 教育云

大数据技术

大数据(Big data)是指数据规模大,尤其是因为数据形式多样性、非结构化特征明显,导致数据存

储、处理和挖据异常困难的那类数据集。大数据需要管理的数据集规模很大,数据的增长快速,类型

繁多,如文本、图像和视频等。处 理包含数千万个文档、数百万张照片或者工程设计图的数据集

等,如何快速访问数据成为核心挑战。大数据是指无法用常规的软件工具捕捉、处理的数据集合,

通常数据量要达到PB数量级。

物联网技术

物联网( IoT ,Internet of things )即“万物相连的互联网” ,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与互联网结合起来而形成的一个巨大网络,实现在任何时间、任何地点,人、机、物的互联互通。

物联网的典型应用

智能家居

智能家居指的是使用各种技术和设备,来提高人们的生活方式, 使家庭变得更舒适、安全和高效。物联网应用于智能家居领域,能够对家居类产品的位置、状态、变化进行监测,分析其变化特征, 同时根据人的需要,在一定的程度上进行反馈。

智能家居通过物联网技术将家中的各种设备(如音视频设备、 照明系统、窗帘控制、空调控制、安防系统、数字影院系统、影音 服务器、影柜系统、网络家电等)连接到一起,提供家电控制、照 明控制、电话远程控制、室内外遥控、防盗报警、环境监测、暖通 控制、红外转发以及可编程定时控制等多种功能和手段。与普通家 居相比,智能家居不仅具有传统的居住功能,兼备建筑、网络通信、 信息家电、设备自动化,提供全方位的信息交互功能,甚至为各种 能源费用节约资金

智慧交通

智慧交通利用先进的信息技术、数据传输技术以及计算机处理技术等,通过集成到 交通运输管理体系中,使人、车和路能够紧密的配合,改善交通运输环境、保障交通 安全以及提高资源利用率。以下将着重讲述行业内应用较多的前五大场景。

智能公交车:结合公交车辆的运行特点, 建设公交智能调度系统, 对线路、车辆进行规划调度, 实现智能排班。

共享单车:运用带有GPS 或NB-IoT 模块的智能锁, 通过APP 相连, 实现精准定位、实时掌控车辆状态等。

汽车联网:利用先进的传感器及控制技术等实现自动驾驶或智能驾驶, 实时监控车辆运行状态, 降低交通事故发生率。

智能红绿灯:依据车流量, 行人及天气等情况,动态调控灯信号,来控制车流, 提高道路承载力。

高速无感收费:通过摄像头识别车牌信息,根据路径信息进行收费,提高通行效率、缩短车辆等候时间等。

区块链技术

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

区块链是比特币的底层技术和基础架构。本质上是一个去中心化 的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方 法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易 的信息,用于验证其信息的有效性(防伪)和生成下一个区块。