0%

02-计算机与计算机语言概述

1
2
3
4
5
6
作者: 夜泊1990
企鹅: 1611756908
鹅群: 948233848
邮箱: hd1611756908@163.com
博客: https://hd1611756908.github.io/
B 站: https://space.bilibili.com/514155929/

第一章 计算机概述

第1节 计算机概念

1
2
广义: 凡是可以帮助我们完成计算的工具统称为计算机【帮助完成计算的机器】(比如 算盘、计算器等...)
狭义: 当前我们所谓的计算机一般情况特指电子计算机(集运算、办公、娱乐于一身...)

第2节 计算机组成

1
2
3
4
5
6
计算机组成:
硬件: 主板、硬盘、CPU、显卡、显示器、鼠标、键盘...

软件:
系统软件: Windows、Linux、Mac、Android、ios...
应用软件: QQ 微信 王者荣耀 英雄联盟(LOL) 开心消消乐 ...

第3节 计算机简史

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
... 很久以前 ...

1. 算盘(机械/手动)

1.1 作者 : 不详
1.2 出生年代: 不详
1.3 备注: 我国第一颗原子弹的很多数据是采用算盘计算出来的,据说当初的草稿可以铺满整个罗布泊.在这里致敬老一辈科学家

2. 步进计算器(机械/手动)

2.1 作者 : 德国数学家[戈特弗里德·布莱尼茨]
2.2 出生年代: 1694
2.3 备注: 当前模型存在于德意志博物馆中

3. 差分机(机械/手动)

3.1 作者 : 英国数学家[查尔斯·巴贝奇]
3.2 出生年代: 1822
3.3 备注: 历时10年从设计到加工都是由巴贝奇一个人完成,计算精度达到6位小数

4. 分析机(机械/自动[蒸汽机])

4.1 作者 : 英国数学家[查尔斯·巴贝奇]
4.2 出生年代: 1830
4.3 备注: 可以进行相当复杂的运算,精确到小数点后31位,采用蒸汽机驱动,打孔卡带(存储器的前身)编程,算是世界上第一台真正意义上的计算机(巴贝奇被后人称之为计算机之父)
由于设计太超前没有被大多数人认可.但是当时有一位英国数学家 奥古斯塔·阿达·金(勒芙蕾丝伯爵夫人) 对分析机特别感兴趣,并为其写了一个算法(第一位给计算机写程序的人).

5. 打孔计数器(机械/电动)

5.1 作者 : 美国人[赫尔曼·霍尔瑞斯]
5.2 出生年代: 1880-1890
5.3 备注: 最早用于1890年的美国人口普查,1890年以前美国人口普查人数统计采用纯手动,1890之后进入电器自动化时代,原理就是将人的信息通过打孔的方式记录到纸卡上,通过打孔卡计数器读取.

6. 阿塔纳索夫-贝瑞计算机(ABC计算机[电子管])

6.1 作者 : 美国科学家[阿塔纳索夫] 克利福德·贝里[当时正在物理系读研究生]
6.2 出生年代: 1939年(样机问世)1942年(测试成功)
6.3 备注: 爱荷华州立大学 物理系任副教授,在给学生上课时需要给学生讲授如何求解 线性偏微分方程组 他觉得比较浪费时间还枯燥,所以用了两年时间搞了这台机器

7. 电子数字积分计算机(ENIAC[电子管])

7.1 作者 : 团队[约翰·冯·诺依曼和"莫尔小组"的工程师 埃克特、莫希利、戈尔斯坦 以及华人科学家 朱传榘[jǔ] 组成]
7.2 出生年代: 1946
7.3 备注: 研发背景: 二战时期
研发原因: 二战时期主要战力飞机和大炮,所以研发新型大炮和导弹十分重要,为此美国陆军军械部设立了弹道研究室,美国军方要求该实验室每天为陆军炮弹部队提供6张射表.
当时的射表数据是纯人工计算,效率低下,数据不准确,几百个人加班加点两个多月才能算出一张射表(每张射表计算几百个弹道数据).
研发时间: 宾夕法尼亚大学莫尔电机工程学院的莫希利于1942年提出了试制第一台电子计算机的初始设想(这台计算机的设想来源于阿塔纳索夫-贝瑞计算机)
计算速度: 每秒能进行5000次加法运算,每秒400次乘法运算,它还能进行平方和立方运算,计算正弦和余弦等三角函数的值及其它一些更复杂的运算

8. 电子计算机(集成电路)

8.1 作者 : 当代科学家
8.2 出生年代: 当代

... 以后 ...

第二章 计算机语言概述

第1节 自然语言和计算机语言

1
2
3
4
5
6
7
8
9
10
自然语言  : 人与人沟通的语言叫做自然语言; 比如: 汉语、英语、韩语...
计算机语言: 人与计算机沟通的语言叫做计算机语言; 比如: C/C++、Java、Python...

计算机语言也叫做语言,被人类划分到语言的行列说明它和我们人类的自然语言有很多相似之处.

自然语言和计算机语言学习步骤:
自然语言(英语) : 单词 -- 语法 -- 与外国人交流
计算机语言(Java): 关键字(单词) -- 语法 -- 与计算机交流

计算机语言学习起来更简单,因为计算机语言没有英语那么多单词,只需要记住常见的几十个,常用的十几二十个即可.

第2节 计算机语言由来

1
2
3
4
5
6
7
8
计算机语言不是随着计算机的发展而发展的,其实计算机语言最早的应用不是在计算机上而是在织布机上,你没看错就是那个男耕女织的织布机上.

1800到1804年法国人 约瑟夫·玛丽·雅卡尔 在改进前人提花机(能织出带图案的织布机)的基础之上,发明了采用穿孔卡带的方式,来记录提花机提花的过程,可以达到让提花机可以重复提花的目的.

这里的穿孔卡带(纸卡): 可以看成是最早期的计算机存储
纸卡上的孔: 最早期的与机器交流的语言(早期计算机语言),有孔的地方为1 无孔的地方为0

提花机根据读取带孔的纸卡来控制顶针的抬起或者是放下而进行提花.

第3节 计算机存储器发展

1
2
在学习计算机语言之前首先我们需要先聊一聊存储器(类似于计算机的硬盘,或者U盘这一类存储设备),因为计算机软件都安装在电脑硬盘上,
计算机软件是由计算机语言编写的,总结计算机语言编写的软件最终要保存在电脑的硬盘上,以便于计算机进行读取和运行.
穿孔卡带
1830年最早应用在巴贝尔的分析机上.
这是最早的计算机软硬件结合.
这个纸卡就是最早期的计算机存储器.
纸卡上的孔就是最早期的计算机编程语言(0/1)
计算机读取这个卡,其实就是读取卡上的孔,获取要完成的任务信息.
这样带孔的卡不仅可以做计算机存储,还可以做其他存储(例如太阳卡,做学生饭卡)
                
电子管存储
世界上第一台计算机[ABC计算机],就是采用电子管存储
相比于纸带,电子管存储造价昂贵,故障率高,但是可以反复擦除
                
磁带
1950年IBM最早把盘式磁带用在数据存储上.
一卷磁带可以代替1万张打孔纸卡,既便宜还能减少卡带体积
成为直到80年代最为普及的计算机存储设备
                
磁鼓
1953年,第一台磁鼓应用于IBM701
磁鼓是利用铝鼓筒表面涂覆的磁性材料来存储数据的
鼓筒旋转速度很高,因此存取速度快
                
软盘
1969年第一张软盘诞生,当时是一张8英寸的大家伙,可以保存80K的只读数据
1973年的时候比他小一号但是容量为256k的软盘诞生,并且是可读写的
直到90年代末,那时候可以找到3.5英寸250MB的的软盘
                
硬盘
1956年9月13日,IBM发布了305 RAMAC硬盘机
在当时的存储容量可以达到惊人的4.4MB
当时一个硬盘机的重量高达600公斤以上
                
光盘
1958年开始发明光盘技术到1972年第一张光盘问世
1978年才在市场上售卖,在当时光盘是只读的不能写
                
固态硬盘
1989年世界上第一款固态硬盘由IBM推出
                

第4节 计算机语言发展

1
第一代计算机语言(机器语言) -- 第二代计算机语言(汇编语言) -- 第三代计算机语言(C/C++、Java、Python...)

4.1 第一代计算机语言

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
第一代计算机语言我们称它为机器语言,直接与机器交互,控制机器行为

比如提花机,使用穿孔纸卡保存花样,控制提花机的顶针

百合花 -- 对应一卷纸
玫瑰花 -- 对应一卷纸
牡丹花 -- 对应一卷纸

在纸上记录花样使用孔洞来记录,如果有孔顶针穿过,没有孔顶针穿不过,这时候纸带上只有两种状态 0/1

机器语言(第一代计算机语言)使用钻孔编程,或者是使用0和1进行编程,有孔表示1没有孔表示0

早期计算机都是使用穿孔卡带进行存储的穿孔卡带可以存花样,也可以存算法,数据等.计算机通过读纸带然后执行纸带中记录的功能.

雅卡尔提花机工作原理:
https://v.qq.com/x/page/x0553c41d57.html

4.2 第二代计算机语言

1
2
3
4
5
6
7
8
9
10
11
随着计算机的发展,随着存储的发展,我们需要计算机做的事情越来越复杂,这时候使用机器语言(类似于打孔,给机器输入0/1)编程越来越复杂.
这是就催生出了计算机语言的发展,咱们下面举一个例子

让计算机帮助我们计算 1+1
如果打孔的话,下面随便举的一个例子 0代表纸带没有孔,1代表纸带有孔
00000001 -- 1
10101010 -- + ADD (使用我们熟悉的字符序列代替了一串0和1)
00000001 -- 1
00000010 -- 2

除了0就是1一个功能由很多0和1组成,这样的功能代码很不容易记忆,所以就有人提出想法,能不能有什么办法使用我们熟悉的字符代替0和1,所以汇编语言出现了
汇编语言
使用简单的英文符号,代替了大量的0/1机器码
相比于机器语言,汇编语言编写代码更容易.
                

4.3 第三代计算机语言

1
2
3
4
5
第三代计算机语言我们管它叫高级语言,是因为语言发展到现阶段,语言中增加和修改了很多字符序列,在汇编语言中加法运算还需要使用ADD,在高级语言(C语言)中,加法运算就和我们数学中的运算差不多使用+(加号),第三代的计算机语言的很多字符比较贴近于我们的日常.

虽然语言表层是我们熟悉的字符序列,但是底层计算机在运行的时候还是解析成0/1(因为计算机底层原理不会变),这时就需要计算机对语言进行转换.将高级语言转成机器语言

催生了各种语言编译器的发展(这里不做详细讲解).

第5节 进制(了解)

5.1 人类计数方式

1
我们人类在日常生活中进行计数的方式采用的是(1,2,3,4,...,8,9,10....) 逢十进一,这种累计计数的方式称之为 十进制 计数

5.2 计算机计数方式

1
2
3
4
5
计算机的计数方式和人类的计数方式是完全不一样的,因为其底层只有类似于低电平和高电平的开关量,只能用开关量进行计数(高电平(ON)为1/低电平(OFF)为0)

在单位的长度的位数时,人类的计数方式可以记录更大的数

例如: 以三位为例 人类可以存放数字范围为: 0-999 而计算机在正常情况下三位最多存储111,变成十进制就是 0-7

5.3 进制的转换

5.3.1 常见进制介绍
1
2
3
4
5
6
常见进制介绍
1. (十进制)人类日常计算进制
2. (二进制)计算机底层计算进制
3. (八进制/十六进制)主要配合二进制使用,二进制位数太多不好记录(用来进行存储记忆)

注意:虽然计算机底层是以二进制的形式存在,但是它是以补码的方式存储数据,这里不做介绍.
5.3.2 常见进制转换

第三章 计算机操作系统概述

第1节 操作系统介绍

1
2
3
4
5
6
7
8
9
10
11
12
1. 操作系统概念: 
操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序.也是一个使用计算机语言编写的软件.

2. 操作系统的功能
2.1 是整个计算机硬件和软件资源的超级大管家,管理着当前计算机的软硬件资源
2.2 硬件管理主要包括
① CPU和内存资源的合理分配
② 任务优先级的控制
③ 其他输入输出设备的管理(网络,usb,显示器等)...
2.3 软件管理
① 多软件应用的运行
② 软硬件资源合理化分配(例如打开QQ软件需要内存怎么分配)等...

第2节 操作系统发展

1
2
3
4
5
6
7
8
9
10
11
12
13
无操作系统 -- ... -- DOS -- windows/unix/Linux

无操作系统时代: 计算机控制的硬件资源比较少,没有复杂的任务调度问题.

算盘 -- 人脑就是CPU,珠子就是存储器 -- 算盘是主力人脑辅助 -- 半人脑,半工具
步进计算器/差分机 -- 解放人脑(里面有自己的计算方式) -- 手动运行,机器运算 -- 解放人脑,没有解放双手

有操作系统时代: 当一台计算机需要干的工作越来越多并且逻辑越来越复杂的时候,这时候就需要一个管理者来管理这些任务,并且合理分配计算机硬件资源.
分析机 -- 蒸汽机运行,机器运算,读卡 -- 解放人脑,解放双手
打孔计数器 -- 电动运行,机器运算,读卡 -- 比分析机更先进
电子计算机 -- 当前大规模集成电路 -- 超高的运算速度

注意: 这里可以将穿孔卡片看成最古老的操作系统(也可以把其单纯的看成一个软件),控制着计算机运行.

第四章 DOS操作系统概述

第1节 DOS操作系统介绍

1
2
3
4
1. 磁盘操作系统(Disk Operating System)是早期个人计算机上的一类操作系统
2. DOS系统没有图形化操作界面,要想使用需要学习dos命令
3. 直到windows/mac等带有图形化操作界面的系统出现,dos才慢慢的退出历史舞台
4. 但是DOS操作系统没有被取消掉,而是以一个应用软件的方式与其它操作系统共存(例如 在windows下作为windows下的应用软件与windows系统共存)

第2节 DOS操作系统的启动方式

1
2
3
4
5
在windows下的启动方式:
方式一: 快捷键 [开始+r],开启一个黑色的命令行窗口,说明DOS启动成功
方式二: win10 可以使用搜索框直接输入cmd然后回车唤出黑色的命令行窗口

注意: 我们把DOS常常叫做命令行窗口,所以后面我说DOS或者命令行属于一个意思.

第3节 DOS操作系统的常用命令

1
2
3
4
5
6
7
8
9
10
11
dir : 列出当前目录下的文件或文件夹
md : 创建目录
rd : 删除目录
cd : 进入到指定目录
cd..: 返回上一级目录
cd / : 切换到根目录
del : 删除文件
exit: 退出DOS命令行
cls : 清屏

以上是DOS操作系统下的简单命令操作.后续一些其它命令在介绍.

※※※※※※ 大道至简(~(@^_^@)~) ※※※※※※

----------------本文结束感谢您的阅读---------------