一、计划
http://study.163.com/curricula/cs.htm
计算机导论视频
数据结构
网络技术
JVM虚拟机
数据库
c语言入门
计算机组成原理
操作系统
看书 thing injava 11月
二、符号化、计算化、自动化
可用或门与门非门,并再构建加法器等复杂电路,在继承复杂组合的逻辑电路形成芯片。
**进位制:**用 数码和 带有权值的数位 来表示有大小关系的 数值性信息的表
示方法。
**编码:**编码是以若干位数码或符号的不同组合来表示非数值性信息的方法,它是人为地将若干位数码或符号的每一种组合指定一种唯一的含义。
汉字内码 (双字节): 汉字在计算机内部采用汉字内码存储,汉字内码是一两字节且
最高位均为1的0,1型编码(国标码最高位是0,但因为最高位是0则无法判断是否是汉字编码,所以把其改为1,区分和ASCII码)
汉字字形码是用0和1编码无亮点和有亮点像素,形成汉字字形的一种编
码。依据字形码通过显示器或打印机输出汉字。
所以可用把数值和非数值信息都转化成0和1进行表达。
所有的算术运算都可以转化为逻辑运算
在计算机中,所有的计算过程,最终都归结为处理器运算单元中的计算.
从软件方面看:
所有的计算,都是数的计算.而数的计算都可以理解为数位上数字的变化.
计算机中的数,都是以二进制形式存在的.对于二进制数,数位上只有0和1两个取值.
而0和1的任何变化,都可以用逻辑代数中的运算——逻辑运算——来实现.
从硬件方面看:
计算机中,所有数据的计算过程都是通过门电路实现的.
而所有的门电路,都可以通过最基本的与门、或门、非门组合而成.
显然,与、或、非门所实现的就是最基本的逻辑运算.
当然,计算机是软件和硬件的统一体,它们在逻辑功能上,是,也必须是等价的.
加减乘除都可转换成加法来实现(使用补码实现), 加法又可由与、或、非、异或等逻辑运算来实现—只要实现了基本逻辑运算,便可实现任何的计算
实现0 和1 的基本元器件: 电信号和继电器开关
用继电器开关实现基本逻辑运算
二极管、三极管可实现基本的集成电路: 与门、或门和非门
这些电路被封装成集成电路(芯片),即所谓的门电路。
异或门电路(XOR) :是实现逻辑异或运算的集成电路,即:当两个输入端
同为高电平(1)或同为低电平(0)时,则输出端为低电平(0);否则,输出端为高电平(1)。
三、冯诺依曼计算机
程序是如何被执行的?
算法程序化 --程序指令化–指令存储化–执行信号化
程序可以看成是存储在存储器的一条条指令,是程序化的算法,具体的指令都对应一个地址,由控制器发送指令地址在存储器中读取分析指令,并根据指令内容调用数据,最后由控制器发送到运算器运算,获得结果。紧接着执行之后的指令。
CPU :中央处理单元(Central Process Unit)****,将运算器和控制器集成在一块芯片上,形成微处理器。
CPU :程序执行与数据计算
主存储器(内存):程序与数据保存、I/O 设备、总线成为现代计算机的四大核心部件。
机器指令**:**
CPU可以直接分析并执行的指令,一般由0和1的编码表示。
指令 =操作码 + 地址码(相当于java的变量名和变量值)(对/对象)
操作码:000001取数 000010 存数 000011加法 000100乘法。。。
高级语言程序和机器有什么关系呢?
int a,a=2其中a是变量。变量的地址是由编译程序在编译过程中自动分配的。
运算器
(数据)寄存器
算数逻辑部分
控制器
pc程序计数器(自动+1):存储下一要执行指令的地址
ir指令寄存器:临时存储当年指令内容
信号与时钟发生器:生成信号,即是机器主频
信号控制器:发送信号,发送给谁
内存
存储单元地址(地址寄存器)
存储单元内容(内容寄存器)
内存主体
机器周期一条指令完整执行的时间为,一个机器周期又分为多个节拍
时钟周期–最小的时间区隔单位
图灵机计算思想
计算就是用0或1对一串0或1进行变换的过程
(水平纸带看成数据,垂直方向可以指令(00停止,11前进。。。)组合起来的程序)
四、现代计算机
基本思路
存储体系**-磁盘存取-**操作系统 **-作业与进程-**程序执行的管理与控制;
资源组合利用体系化:外存内存不同系能资源的折中同一
管理分工合作协同化:不同环境不同部分,分工管理,再通过协同合力解决问题
外存程序内存进程化:外存中的程序文件装入到内存中成为进程(可有多个)
硬件不足功能软件化:操作系统弥补硬件的性能不足,替用户管理资源。
内存外存
冯. 诺依曼计算机解决了: 程序装载在内存,便可被CPU
但是还有存储问题,包括永久存储,容量、速度、价格
内存(RAM、ROM一般有半导体制作,电易失性):按地址访问,有一个个存储单元(1-8个字节),给出一个个地址编码后找到对应的存储单元。
外存(硬盘,一般由磁性材料做成,可永久保存):由很多盘片组成,然后是刺刀,最后分为若干扇区,一个扇区(512字节)
存储体系:
不同性能资源的组合优化———需要一个资源管理者——操作系统
内存:速度快、价格高、容量小、非永久存储; 按存储单元
外存:速度慢、价格低、容量大、永久保存; 按块交换
所有内容需装入内存,才能被处理
所有内容需存入外存,才能永久保存
用空间换时间
看起来有内存的速度和外存的容量
操作系统**(Operating System:OS)**
是控制和管理计算机系统各种资源是控制和管理计算机系统各种资源( 硬件资源、软件资源和信息资源)、合理组织计算机系统工作流程、提供用户与计算机之间接口以解释用户对机器的各种操作需求并完成这些操作的一组程序集合,是最基本、最重要的系统软件。
操作系统的作用:
操作系统是用户与计算机硬件之间的接口。
操作系统为用户提供了虚拟机(Virtual Machine) 。
操作系统是计算机系统的资源管理者
在硬件外包一层操作系统,硬件形态的计算机,加上操作系统有了软件形态的计算机即是虚拟机。
操作系统是一组“管理各种资源以便执行应用程序”的程序:
1、分工
2、合作
以任务为驱动,中心任务就是“让计算机或者说****CPU 执行存储在外存上的程序”,各部件合作完成该任务。
3、协同
当基本解决后,关键就是协同,“合作”和“同步” , “自动化”及 “最优化”。
**A磁盘管理—**管理磁盘信息的读写
化整为零(磁盘块),还零为整
磁盘:一个磁盘块=若干扇区(随系统不同有差异2次方及更高);
文件:分解为若干磁盘块,单存入磁盘后并不是连续的(那样占有空间,实际类似剑锋插针,每个磁盘块含有下一块的位置(表xiang),有点像链表。第一个磁盘块位置在哪儿?文件夹是文件的清单,在文件背后记录了第一个磁盘块的位置。);
再配以文件分配表,进行读写
磁盘的四个主要分区:
保留扇区
文件分配表区域
根目录区域
数据区域
**B内存管理—**管理内存空间的分配与回收;
内存被分成不同的块/页,一般内存的一页和磁盘的一块相等或为其倍数。
内存空间管理
内存空间分配
内外存信息的自动交换
内存空间的回收
C 、CPU 管理— 调度CPU执行哪一个程序;
1)内存中待执行的程序段落地址发送到控制器的计数器;
2)确定执行哪个程序
3)程序切换中的状态/环境 保护问题
操作系统如何提高资源利用率?
分时:
一台主机一个cpu,操作系统把cpu分为不同时间分区,使其在不同分区执行不同程序(片段充分小),让每个终端看起来都在独占cpu;
并行:OS将作业分为若干小作业,并由不同cpu执行(多核),如此多个cpu并行完成一个作业;
分布:网络中多台主机多个cpu执行一个任务(通过网络传输)
合作协同:
1、几个区分的概念
程序(文件):存储在外存的程序文件
进程:装入内存的程序
任务:大粒度的工作,一个应用程序的完整执行,有多进程完成
作业:小粒度工作,不同作业由不同进程完成
操作系统进程:其进程也在内存中,需要cpu调度,cpu在操作系统和多个应用进程减来回切换。
应用程序的进程:应用本身的进程,在操作系统控制下
合作协同进程
相当于调度,调配其他OS进程执行相应的作业
通用计算环境的演化:
冯诺伊曼计算机——个人计算机——并行分布计算环境——云计算环境
云
物理机:数百数千个64G内存;
数百数千个1T外存
虚拟化的OS
根据不同需要配置虚拟机:(cpu、内外存、网络带宽)
云操作系统:跨物理机管理
把计算机看做一种服务设施提供用户,用户按租用时间进行付费
SAAS(software as service):将应用软件以可配置科技非的服务方式提供给用户使用;
卖软件和卖服务 用户通过互联网使用云上的软件(可添加监控和结算)
五、机器语言到高级语言
高级语言除了语法外的共性
常量:
变量:通过赋值语句把表达式的值保存
保留字(关键字,运算符)
表达式:
算术表达式:由常量、变量、数学运算符组成,结果是数值
比较表达式:比较运算符,结果是真假
逻辑表达式:逻辑运算符,结果是真假
语句:
赋值语句:将表达式的结果赋给一个变量;
结构:顺序、分支、循环(有界循环(for),条件循环(while));
函数**:**函数是一种抽象,用一个名字代表一个程序段落
函数的定义:数学的函数是一个符号表达而计算机是指一段可执行的程序。
函数的调用:
函数体,实现函数功能的程序语句序列以形式参数作为需要处理的对象。当被调用时,用实际参数替换相应的形式参数进行程序执行。
运用函数构造复杂程序
程序构造:自上而下、自下而上
计算机语言:步骤书写的规范、语法规则、标准的集合是人和计算机都能理解的语言
算法:解决问题的步骤
程序:计算机能够理解与执行的解决问题的步骤
指令系统: CPU用二进制和编码提供的可以解释并执行的命令的集合。
**机器语言:**用二进制和编码方式提供的指令系统所编写程序的语言被称为机器语言
所有程序都需转换成机器语言程序,计算机才能执行
缺点:难以看懂,且书写容易出错
汇编语言:
人们提供用助记符编写程序的规范/标准。(汇编语言)
同时开发了一个 翻译程序,(汇编程序)
实现了将符号程序自动转换成机器语言程序的功能。
汇编语言源程序:是用汇编语言编出的程序。
缺点:需考虑机器内部结构和指令系统,较难
高级语言:
人们提供了 类似于自然语言方式、 以语句为单位书写程序的规范/标准语句为单位书写程序的规范/标准。并开发了一个翻译程序翻译程序(类似于汇编语言的汇编程序),实现了将语句程序 自动翻译成机器语言程序的功能。
比较**
标签:计算机,递归,导论,程序,算法,内存,指针
来源: https://blog.csdn.net/qq_35841637/article/details/109955111