计算机理论基础

二进制

计算机硬件

	计算机的核心硬件包括: 中央处理器(CPU),  内存(Memory),  硬盘(Hard disc) ,显卡(Graphics card)。

计算机数据传输

	电平是电压范围,规定输出高电平>2.4V,输出低电平<0.4V。因为只有两种信号,精确度就会比较高,不容易因为硬件的故障损耗,产生误差。

	计算机因为只能传输和识别高低电平两种信号,所以我们采用了1(高电平)和0(低电平)来表示信号,也就产生了二进制。

二进制

二进制就是满2进1位。在计算机的世界如果要表示十进制的3,就要用二进制11来表示,十进制的5,就要用 101来表示。

	1.二进制转十进制
		那十进制的数是怎样转化成二进制的数呢?有一个最简单的方法,就是不断除以2。余数写在右边。然后从最后一个得到的商倒回去(商余数排列起来),得到的数就是二进制要表达的结果了哦。

		例如:9/2=4....1   4/2=2....0   2/2=1....0       1/2=0....1   所以十进制的9=二进制的1001(从1/2=0....1那里向上取)

	2.十进制转二进制
		把二进制的数转化为十进制的方法:从左边第一位数乘以2的n-1次方(幂),n代表该数字从右到左数起的位数。加上从右边第二位数乘以2的n-1次方。依此类推,一直到最后一个数。

		例如:1100=0*2^0+0*2^1+1*2^2+1*2^3=0+0+4+8=12(从右向左算,当前的数乘2的n-1次方[从右向左当前这位数是几他就是几])

内存的存储单位

位与字节

	一个二进制数据的内存空间叫'位'(bit)
	因为bit只能保存一个二进制数,所以它的值只有0和1

	规定8位空间称为一个字节(byte)
	通常情况下都用字节作为存储单位,一般情况下,一个英文字符,一个整数数字都是占一个字节;长的整数(十位以上的整数),浮点数(小数),汉字等都是占用两个字节以上。
	
	例如:01111110就会被识别为十进制的126了

存储单位

	1KB=1024Byte 所以1M=1048576Byte
	1B(Byte)*1024=1KB	1KB*1024=1MB	1MB*1024=1GB	1GB*1024=1TB

十六进制

为什么会有16进制
	因为2进制对于人来说读写很麻烦,而十进制对于计算机很麻烦,所以人们发明了16进制。
	而且2^4=16,所以4位二进制正好可以表示为1位16进制。

计算格式:
	BC53=11*16^3+12*16^2+5*16+3=45056+3072+80+3=48211

用在哪些地方:
	1.计算机网卡地址,常写成6段12位16进制数

	2.用来表示颜色的 RGB 系统( RGB  就是 red,  green , blue  三原色的意思。 其他颜色都是根据这三个原色的不同值来表示出来的。)也是用 十六进制来表示颜色值的。# 00 00 FF  代表蓝色,  # 00 FF 00 代表绿色。 

	3.汇编语言,等等

逻辑电路

逻辑电路是数字电路中最基本逻辑元件。

逻辑的基础就是门电路,所谓 "门" 就是一种开关,它能按照一定的条件去控制信号的通过(1)或者不通过(0)。

基础的逻辑关系有三种:and(与),or(或),not(非)。
	not(非):本质就是取反。 输入是 0, 输出就是1; 输入是 1, 输出就是 0 。
		格式:a=-b

	and(与):本质就是取公共。输入有0,输出就是0;输入全是1,输出才是1。
		格式:a and b =0/1  (用数学的理解a*b=0/1)

	or(或):本质就是全要。输入有1,输出就是1;输入全是0,输出才是0。
		格式:a or b =0/1	(用数学的理解就是a+b=0/1)

高级的逻辑关系:
	与非(nand):本质就是先算and,再算not;输入有0,输出就是1;输入全1,输出就是0。
		格式:-(a and b)=0/1
	或非(nor):本质是先算or, 再算not;输入有1,输出就是0;输入全0,输出就是1。
		格式:-(a or b)=0/1
	异或(xor):本质就是输入相同,输出就为0;输入不相同,输出就为1。
		格式: a ⊕ b=0/1(⊕是异或专属的运算符号)

##输入输出

输入输出都是基于转换信号

例如:
	输入:键盘,鼠标等等
	输出:显示器,打印机,音响等等

##计算机结构

其实现在还有哈佛结构等其他的计算机结构体系,但是因为冯诺依曼是计算机之父,为计算机的发展奠定了基础,而且大部分计算机都是冯诺依曼结构,所以计算机结构也可以叫做冯诺依曼结构。

冯诺依曼结构的特点:

	1.计算机处理的数据和指令一律使用二进制数据表示。

	2.指令和数据不加区别混合存储在同一个存储器中。

	3.顺序执行程序的每一条指令。


程序执行的过程:实际就是不断的取出指令,分析指令,执行指令。

(每一条指令都明确了规定计算机从那个地址取数,进行怎么操作。)

流程:
	1.计算机运行是,控制器先从存储器中取出第一条指令。
	
	2.控制器进行译码接收指令要求

	3.控制器再从存储器中取出数据,让运算器进行运算和逻辑操作。

	4.再按地址把结果送回存储器中。

	5.接着,控制器继续从存储器取下一条指令,直到遇到停止的指令。

计算机的程序基本就是转化两种流在各个元器件中流动。

	一种是数据流,各种原始数据,中间结果,最终结果等等
	
	一种是指令流,控制机器的各部分执行指令的要求的操作。

主要的硬件有:
	1.中央处理器(CPU)
		1.运算器(Arithmetic Logic Unit)
		2.控制器(Controler)

	2.存储器(Memory)
	3.输出设备(Output Unit)
	4.输入设备(Input Unit)

##数据存储

基础编码

因为计算机只能识别高低电压,所以保存数据时只能使用二进制
	
例如:A可以表示为01000001

为了统一标准,于是美国有了ASCII编码,同一了常用符号用哪些二进制表示(编码就是表示字符的约定标准)

除了ASCII还有其他标准,例如UTF-8(同时UTF-8是一种最通用的编码。)

ASCII了解一下就行,不需要背诵。需要的时候直接去网上查询就好了。(因为ASCII比较多就不弄了)

例子:电脑里的text/txt文件就是按照ASCII或Unico编码存储的。

特殊编码

文件格式:指电脑为了存储信息而使用的,是对特殊信息的特殊编码方式。	mp3,jpg,doc等都是特殊编码。

电脑文件都有后缀名/扩展名,根据扩展名不同,解读数据用的程序和编码就不同。

所以随意修改文件的扩展名,可能会导致文件无法打开。

常用的几种文件类型:

	1.文本:txt,doc,docx等

	2.图片:jpg,png,gif等

	3.视频:mp4,avi,pmvb,wmv等

##编码设计

当我们面对一个问题时,我们需要分解问题,变成一个个可以执行的步骤。

例子:西红柿炒鸡蛋
		1.买西红柿和鸡蛋
		2.洗西红柿
		3.打鸡蛋
		4.煎鸡蛋
		5.放西红柿一起炒
		6.加调味品
		7.出锅

注意:程序的执行顺序是从上下的

很多时候都需要反推才写得出运算过程

##条件结构

有时候不能按部就班,需要做选择;也就需要用到条件结构

例子:西红柿炒鸡蛋
		1.买西红柿和鸡蛋
		2.洗西红柿
		3.打鸡蛋
		4.煎鸡蛋
		5.如果鸡蛋煎到金黄,放西红柿一起炒
		6.加调味品
		7.出锅

很多时候,当有多个选择时,我们写流程时,看起来不是很清晰。所有就有了流程图。

流程图常见符号:
	圆角矩形:开始/结束(开始只有一个,但结束可以有很多个)
	菱形:代表选择/条件结构	
	箭头:流程的行进方向
	平行四边形:数据的输入和输出
	矩形:中间的执行过程

##迭代/循环

有些步骤,需要执行多次,就需要用的循环去做。

迭代:不断修改调试检测,知道达到要求,满足条件为止;也可以理解为不断重复循环,知道满足条为止

伪代码:不是真正的代码,计算机不能识别和运行,他的逻辑与真实代码类似,是为了方便我们人类理解整个执行过程

例子:
	1.查看电灯电源是否接好
	2.接好就直接下一步,(没有就接好电源,如果接好电源,灯亮就结束,如果灯没亮就下一步)
	3.检查灯泡是否损坏,坏了更换新的,如果换新亮了就结束,没亮就下一步,(没坏进行下一步)
	4.请人维修
	5.有编程语言写出来,就可以执行了

##分支结构

分支:一件事可以有多种解决方法,可供选择

分支结构的执行是依据一定的条件选择执行路径

子程序:将一个公牛单独写成一个函数,需要是直接使用函数即可。

##数据库

数据库:指的是以一定方式存储在一起,能为多个用户共享,应用程序彼此独立的数据集合(简单的说就是带有多个相关数据表的集合)

数据库 (Database) :有多个数据表组成,所以数据库中的数据以表为单位计算

表(table):由多组数据记录组成,所以数据表中的数据以记录为单位计算

记录( Record ) : 表中的每一行称为一个记录,它由若干个字段组成,所以记录中的数据以字段为单位。

字段 ( Field ):也称域。表中的每一列称为一个字段。每个字段都有相应的描述信息,如数据类型、数据宽度等。

字段名字(Field name):就是每个字段的名字,也叫列名。

主键(primary key):可以是一个或多个字段。用来标记一条记录的主关键字段,会约束该字段/列必须唯一(不重复)且不为空。

外键(foreign key):一般用主键来当外键,因为外键会把两个相同的字段/列连接起来,所以一个字段/列会要求非空且唯一,另一个字段/列会要求填写的数据必须在这个字段里有。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值