• 计算机基础


    计算机基础

    一. 计算机了解

    计算机俗称电脑,可以进行数值运算和逻辑运算,还有存储数据的功能,还可以按照程序运行,自动,高速的完成处理海量数据的电子设备。计算机从始至终都是想要发展成取代人脑的能力。

    二. 计算机发展

    早期计算机的发展:

    数指头,结绳记事,算盘,帕斯卡发明的手表算法,发明微积分的莱布尼茨(牛顿齐名)(从八卦图里边悟出的二进制),但这都是手动的,计算机要发展成与人交互的功能,接下来是中国的提花编织机(需要人工根据图案编制经线和纬线,这已经有了程序的思想,但还需要人工的干预,这也是为什么程序员被叫做码农,程序设计叫做编程序的来源)  ,之后慢慢的实现程序自动化。

    然后是巴贝奇(蒸汽时代),他第一次的目的是做出一台差分机,(把复杂的运算转化成加减法运算,但计算机只认识加法)。

    之后是艾肯,有IBM做后盾,发明了马克1号,而为它编程序的女数学家是格雷斯 .霍波,1944年在哈佛大学计算机研究工作,是世界上第一台大型计算机mark i的第三名程序员,她还为后来第一台储存程序的商业电子计算机UNIVAC写过程序,又率先研制成功第一个编译程序A-O和计算机商用语言COBOL,被公认为计算机语言领域的带头人(有一次在调制程序的时候出了故障,拆开继电器发现有只飞蛾被夹扁在触电中间,‘卡’住了程序的运行,于是霍波幽默把程序故障成为‘臭虫’(bug),而这一称呼成为计算机领域的专业行语,如DOS里的调试程序,程序名称就叫做DEBUG),马克1号这台计算机运作了15年,其实是差分机的升级版,它是用电的,其中编出的数学表现在还再用。它是早期计算机的最后代表,一投入运行的那个时刻,就已经过时,因为此时的人类社会已经进入了电子时代。

    可以看出,马克1号和提花编织机的原理是类似的有一个仓库,用来存数据,(用一个介质来表示状态的变化),还要有运算,运算就要有控制器(相当于打孔的卡片,为了控制程序的运行),计算机在后期发展的时候,也是这个原理,只不过物理介质变了。

    成熟计算机的发展:

    背景:第二次世界大战的时候,美国在日本投了两颗原子弹,一个在广岛,一颗在长崎,第二颗原定目标是东京,然后由于计算偏差投偏了,投在了海里,基于此,美国研制出了第一台计算机。

    1946.2.14 西方情人节,美国军方研制的世界上第一台电子计算机“电子数学积分计算机”在美国宾西法尼亚大学问世(ENIAV 中文名埃尼阿克),此时,人类社会经历了蒸汽时代,电时代,电子时代。

    冯诺依曼体系:

    三. 计算机的构成

    一台完整的计算机由硬件系统和软件系统构成

    1.硬件系统:看得见摸得着的物体,所有硬件共同组合在一起,成为硬件系统

    (1)硬件系统由5大部分组成:运算器,控制器,存储器,输入折别,输出设备

    (2)运算器:负责算术运算和逻辑运算,与控制器共同组成了中央处理器CPU

    (3)控制器:负责发送和接受指令

    (4)存储器:用来存储正在进行程序,将要进行程序的数据以及刚处理玩完的数据(更早的时候是内存,用来存数据,它的特点是基于电流的方式工作,这样的话有点就会产生数据,停电就凉凉,数据就会全部没有,所以后来就有了硬盘,他存数据也是二进制的,但基于磁的方式工作)

    (5)输入设备:进行输入的设备,鼠标,键盘,扫描仪

    (6)输出设备:进行输出的设备,显示器,音箱(听到的声音都是输出设备)

    2.软件

    根据之前讲的,手指运算需要规则,算盘需要规则,打孔图案需要图案,差分机(也是一种硬件)需要规则,计算机也需要一种规则(这就是软件)。

    软件都是让计算机做特定的事情,一个不贴切的比喻,硬件和软件好比身体和精神(精神控制身体,软件控制硬件),也就是说硬件不能单独使用,必须依靠软件。

    软件又分为系统软件和应用软件。他们的关系是计算机硬件—操作系统(本质上也是系统软件)—应用软件,也就是说刚买了电脑,在安装一个winx的系统,通过操作系统,下载应用软件,电脑就可以使用了。其中,用户可以和应用软件交互,也可以和操作系统交互,学习编程就是要对操作系统交互。

    三. 计算机的工作过程

    硬盘把数据加载到内存,cpu把内存的数据读出来

    练习:

    1.为什么要认识计算机

    2.什么是计算机

    3.计算机是由哪两个部分组成的

    4.什么是硬件,什么是软件

    5.硬件是由哪些部分组成的,软件可以分为哪些软件

    四. 原码补码反码

    1.原码

    原码是符号位加上真值的绝对值,即第一位表示符号,其余位表示值,比如如果是8位二进制 

    [+1]原 = 0000 0001

    [-1]原 = 1000 0001

    所以8位二进制的取值范围是[1111 1111, 0111 1111] , 即[-127,127] (一共255个数)

    2.反码

    正数的反码是本身

    负数的反码是在原码的基础上,符号位不变,其余各个数取反

    [+1] = [0000 0001]原 =[0000 0001]反 

    [-1] = [1000 0001]原 = [1111 1110]反 

    3.补码

    正数的反码是本身

    负数的反码是在原码的基础上,符号位不变,其余各个数取反,最后加1,(也就是在反码的基础上加1)

    [+1] = [0000 0001]原 =[0000 0001]反 = [0000 0001]补

    [-1] = [1000 0001]原 = [1111 1110]反 = [1111 1111]补

    注:反码和补码通常需要转换成原码计算其数值,在计算机系统中,都是用补码来存储数据,这是因为计算机只认识加法,这样可以把减法转换成加法运算

    网络通信原理

    互联网的本质是一系列的***网络协议***

    osi七层协议

    两台计算机或者多台计算机之间的通信,连接的internet本质就是网络协议,互联网协议按照功能的不同分为osi七层,还可以分为tcp/ip五层,或者tcp/ip四层

    osi七层简称应表会传网数物,每一层都有不同的协议

     

    tcp/ip五层协议

    1.物理层:作用就是发电信号01010

    左边发送电信号010101给右边,右边接受到,这个过程需要分组,不然这个电信号就没有意义

    2.数据链路层

    功能:定义了电信号的分组方式,它工作的协议就是以太网协议

    以太网协议

    早期的时候各个公司都有自己的分组方式,后来形成了统一的标准,就是以太网协议(ethernet)

    ethernet规定:

    1.一组电信号构成一个数据包,或者数据帧

    2.每一数据帧分为:报头head,数据data

     head包含:(固定18个字节)

        •发送者/源地址:6个字节

        •接收者/目标地址:6个字节

        •数据类型:6个字节

     data包含:(最少46字节,最多1500字节)

        •数据包的具体内容

     其中头是用mac地址限定的。

    mac地址:
    以太网协议规定,接入到互联网的电脑必须要有一块网卡,电脑在出场的时候就会被写死到上面,是唯一的一个mac地址,一般是12位16进制表示的,前6位是厂商编号,后6位是流水线号。

    有了mac地址,同一网络的两个主机就可以通信了,(一台主机通过arp协议获取另外一台主机的mac地址)

    我的包发出去是靠吼,要知道mac地址,得基于arp协议

     

    目标mac的一堆F代表以arp协议想要获取对方的mac地址,代表着一种功能

    3.网络层:

    有了enternet,mac地址,广播的发送方式,世界上的计算机就可以相互通信了,问题是,世界上的计算机都是有一个个小的局域网组成的,如果一台机器已以太网的方式发送一个包,全世界都会收到,这会是一个灾难,这就涉及到了IP协议。

    举个例子:两个教室是两个局域网,教室里边是数据链路层,可以吼着发包,跨教室就需要每个教室有一个负责人,一个教室发到另一个教室就让负责人发送这个包,这个负责人就是网关(基于路由)

    IP协议

         

    网络层的包封装起来发给数据链路层的data,然后数据链路层的data发给物理层以二进制的方式发出去。

    这就会有两个包,根据上面讲的,也就是,先获取自己和对方的ip地址(自动的会做一个运算,判断两个ip地址在不在一个局域网,如果在,就是一个包,一步步解包,如果不是,对方的ip地址就要写成它的网关地址,包发过去的时候网关就会一直解包,找到对方的ip地址(网关之间的联系是靠路由)),再根据arp协议获取对方的mac地址。

    总结:一台电脑有两个地址,一个IP地址,一个物理地址,(也就是一个mac地址,一个IP地址)

     4.传输层

    端口:每运行一个程序,这个程序就会绑定一个端口,这个端口是和网卡绑定到一起的,这会形成一个效果

     

    IP后面加上上面的编号,可以理解为程序的唯一一个编号,房间里(IP地址)具体位置(mac)的唯一编号(如果不加:xx就只能找到那台机器,而不能找到机器上的程序,所以最终我的包一定会加一个端口号)

     补充:我开发的软件必须要绑定一个端口,要绑定端口必须要按tcp协议或者udp协议写,但是举个例子,我要开发软件之前就要学习这两协议,太费事儿,这就要用到socket,也就是不用tcp或dup协议,只要简单的遵循socket就可以

     

    5. 应用层

     

     总结:对方拆包是按自上而下拆的,封包是按自下而上封的

    总结:

    1.计算机发展史→计算机的组成(分为两套系统:硬件系统,软件系统)

    硬件系统:计算机核心:CPU,内存(基于电的方式),硬盘(基于磁的方式)

    软件系统:

      系统软件:控制硬件,调取硬件资源

      应用软件:先装系统软件,再装应用软件

     系统软件: 系统软件是怎么从无到有的

     电脑一开始是废铁,要怎么工作?就是安装操作系统到硬盘上,然后通电。然后软件开始运行,流程是

    首先软件不会存放到内存当中,不然关机就没了,所以操作系统os必须下载到硬盘里,要运行的话,从硬盘加载到内存(因为内存速度快),然后CPU从内存里调(因为慢)。

    所以,一开机,就要等一段时间,等的就是操作系统运行起来 ,那么操作系统怎么跑到了内存里,然后cpu调用操作系统的代码然后执行,为什么硬盘知道把操作系统加载到内存,如果我的计算机有好几个盘,移动硬盘,光盘等等,那么计算机怎么知道操作系统装在哪个盘上?

    主板电池(BIOS):告诉计算机操作系统在哪个盘上,在主板上是写死的代码,

     只要一开机,先启动BIOS的程序,然后BIOS告诉你,系统在哪个硬盘上,然后电脑从硬盘上读出来到内存

     

    应用软件:

    也要下到硬盘里,我们桌面上是快捷方式,其实看他的属性,是一堆文件,要想运行,点那个exe文件双击(触发)(鼠标和鼠标点击文件运行的过程都是操作系统提供的结果),就可以打开文件。

     arp协议

    2.计算机之间的通信靠的是mac地址(可以理解为身份证),基于arp协议,自己的mac地址很容易知道,对方的mac地址要怎么知道?

     对于同一区域的用户,首先发包的步骤分为3步:

     1.根据IP地址计算两台机器是否在一个广播域,

     2.通过arp协议

      原mac 目标mac(FFFFFFFFFFFF) 192.168.11.10/24

     3.原mac + 目标mac   + 数据→ 发包

    对于不同区域的用户,不能直接获取对方的目标mac,需要网关,网关与网关之间涉及到了路由,我们可以把路由理解为网关与网关之间搭了桥梁

    1.IP地址计算出两个机器不在一个广播域

    2.通过arp协议

    这里的目标地址就是要对方局域网的网关地址,其中一般是 1 

     

    网络协议

    1.网络分类:

    局域网

    城域网

    广域网

     2.传输介质

    有线网

    光纤网

    无线网

    DOS命令

    查看IP地址信息

     ping 跨网络通信  发一个数据包给对方,对方返回一个包,就ping成功了,用来测试能不能访问到对方

     

     win目录结构

    电脑里的C D F盘其实就是大的文件夹,一个目录,这些文件夹是操作系统提供的,并且是树形结构

     

    win‘的顶级目录,比如我的电脑就有C D E3个顶级目录

     

    切换根目录不用加cd

     现在创建一个新的文件,并且一层一层的删除

    F:asaz.txt

       

    关于dos命令的md,cd,rd分别是什么英文缩写:

    MD→MKDIR→Make Directory(M是Make的缩写,不是Made的缩写)
    CD→CHDIR→Change Directory
    RD→RMDIR→Remove Directory

  • 相关阅读:
    ASP.NET MVC 编程参考
    IDEA+Gradle相关资料
    【树莓派】Linux应用相关:自动删除n天前日志
    【树莓派】制作树莓派最小镜像:img裁剪瘦身
    【树莓派】树莓派下WiFi断线自动重连
    【树莓派】树莓派远程监控
    【树莓派】服务配置相关
    【树莓派】Linux自动配置IP
    Jmeter相关
    Linux集群监控工具简介:Ganglia和Nagios
  • 原文地址:https://www.cnblogs.com/xiaobai-yemao/p/8900525.html
Copyright © 2020-2023  润新知