计算机科学


DAY1


程序设计语言

一、发展历史

第一代机器语言

由0、1代码指令构成,但不同的CPU具有不同的指令系统,机器语言难编写、难修改、难维护,编程效率极低。

第二代汇编语言

汇编语语言指令是机器指令的符号化,与机器指令直接对应,直接访问系统接口,编译效率高,但编程效率低、容易出错。

第三代高级语言

1.面向过程的语言

Pascal、C

2.面向对象的语言

C++、Java,VB

第四代非过程语言

只说明做什么不需要描述算法细节,比如数据库查询、应用程序生成器。


二、C语言

C语言是一门通用计算机编程语言
既有高级语言的特点,

三、计算机发展

1. 世界上真正的第一台电子计算机

阿塔纳索夫-贝瑞计算机(Atanasoff–Berry Computer,简称ABC)

ABC计算机不可编程,只能进行线性方程组的计算。
它的价值是确定了一些现代计算机设计思想,如采用二进制、可重用的存储器等理念

2.第1台通用电子计算机

\[1946年,ENIAC诞生 \]

(Electronic Numerical Integrator And Compute)电子数字积分计算机

电子真空管组成
十进制表示信息并运算;
采用手动编程,通过设置开关插拔电缆来实现;
三极管

3.计算机之父--冯·诺依曼(John von Neumann)

1945年3月,冯·诺依曼在与同事共同讨论的基础上起草了一个全新的“存储程序通用电子计算机方案EDVAC(Electronic Discrete Variable Automatic Computer)
该方案对后来计算机的设计起到了决定性的影响
特别是 确定了计算机的体系结构,采用存储程序以及二进制编码等理念
其思想至今仍为电子计算机设计者所遵循

4.冯·诺依曼计算机的特点

\[ 包括\left\{ \begin{matrix} 运算器(ALU)\\ 控制器(CU)\\ 存储器\\ \left. \begin{matrix} 输入设备\\ 输出设备 \end{matrix} \right\}=O/I设备 \end{matrix} \right. \]

指令由操作码地址码组成
运算器为中心;

操作码

指明该指令所要完成的操作,如加法、减法、传送、移位、转移等;

地址码

指出该指令的源操作数的地址(一个或多个),结果的地址以及下条指令的地址

5.计算机硬件结构

早期,部件之间用分散方式相连
现在,部件之间大多用总线方式相连,结构简单,便于扩充
图示时单总线结构,现在都采用多总线结构

6.为什么选择二进制

物理上具有两种状态的电子器件比较多,二进制状态比较容易实现;
两个状态的系统具有稳定性
二进制的运算法则简单
容易检错与纠错

7.逻辑运算

\[ \left\{ \begin{matrix} AND(与)\\ OR(或)\\ NOT(非) \end{matrix} \right. \]

硬件基于这三种基本的逻辑运算,进而完成:
加法运算;
加、减、乘、除四则运算;
比较运算;
复杂的逻辑运算算术运算

8.门电路

与

或

非

半加器
与门控制进位
异或们控制本位

全加器
行波进位加法器:从C0开始,低位进位像引力波一样逐级向高位传播
由于高位加法需要等到低位传来的进位后才能完成,运算速度极慢
改进:并行进位加法器(计算机组成原理将详细介绍)

BIOS basic input output system

posted @ 2022-09-15 16:32  cp_cp  阅读(8)  评论(0编辑  收藏  举报