Day1 计算机基础

计算机发展史、基本组成、软件硬件知识、工作原理四大部分

一、初识计算机

  • 什么是计算机:

计算机是一种用于高速计算的电子计算机器,可以用于数值计算、又可以进行逻辑计算,还有存储记忆功能。是能按照程序运行,自动、高速处理海量数据的现代化智能电子设备。

  • 计算机的发展过程:

计算机深远来源:工具+规则。数手指、算盘、奥斯卡转轮、奥斯卡步进轮、莱布尼兹二进制(受八卦影响哈哈)、编织机??杰卡德自动编织机、巴贝奇差分机(将复杂的运算转化为加减运算,三大部分:存储库、运算室、控制器)、马克1号。

二战期间,原子弹投放错误,为了提高计算精确度,美国组织研究计算机

1984年,美国军方制定世界上第一台电子计算机“电子数字积分计算机”,美国宾夕法尼亚大学

冯诺依曼理论的要点:数字计算机的数制采用二进制,计算机应该按照程序顺序执行。

1946年-1957年 电子管时代

1958年-1964年 晶体管时代

1971年-至今 大规模超大规模集成电路时代

  • 计算机构成:

硬件系统和软件系统

硬件系统:五大设备:运算器(负责算数运算与逻辑运算,与控制器共同组成了中央处理器CPU),控制器(负责发送和接受指令),存储器(用于存储正在运行的程序,将要进行程序的数据及刚处理完的数据)、输入设备(如键盘、扫描仪)、输出设备(如显示器、音响)。除了五大设备,还有主板,主板上安装了组成计算机的主要电路系统

软件系统:为了完成某一特定工作而开发的程序。分为系统软件和应用软件。系统软件是指控制和协调计算机及外部设备支持应用开发和运行的系统。

二、数据概述

  • 认识数据的思想及意义:

大数据是高科技时代的产物。大数据的价值:1.对大量消费者提供产品或服务的企业可以利用大数据进行精准营销;2.做小而美模式的中长尾企业可以利用大数据做服务转型;3.面临互联网压力之下必须转型的传统企业需要与时俱进充分利用大数据的价值。

  • 什么是数据:

数据是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未加工的原始素材。

在计算机系统中,数据以二进制信息单元0 1 的形式表示。在计算机系统中,各种字母、数字符号的组合、语言、图形、图像等统称为数据,数据经过加工后就成为信息。

  • 数据的表现形式:

在计算机系统中,数据以二进制信息单元0 1的形式表示。可划分为数字数据(阿拉伯数字符号构成)和模拟数据(某个取件产生的连续值,如视频、图像、文字、声音等)

  • 计算机数据中的数字表现:

进制:数码(集合包含元素数量的多少)和位权(数制中每一固定位置对应的单位值)。

二进制:技术实现简单(逻辑电路,开关两个状态)、简化运算规则、适合逻辑运算(真假)、易于进行转换

八进制:书写和阅读不简单,小型机中引入八进制。

十六进制

  • 机器数与真值:

机器数:一个数在计算机中的二进制表示形式叫做这个数的机器数。在计算机用一个数的最高位存放符号,正数为0,负数为1。

真值:因为第一位是符号位,所以机器数的形式值就不等于真正的数值。将带符号位的机器数对应的真正数值称为机器数的真值。

  • 原码、反码及补码:

原码、反码及补码都是有符号的用二进制表示数的方法,均由符号位和数值位构成。

原码:符号位加上真值的绝对值。 八位的原码,只能表示2^8-1个数,即255

反码:正数的反码是其本身,负数的反码是在原码的基础上,符号位不变,其余位各取反。

补码:正数的反码是其本身,负数的补码是在原码的基础上,符号位不变,其余位各取反加1。

在计算机系统中,数值一律用补码来表示(储存)。使用补码,可以将符号位和其他位统一处理;减法可以按照加法来处理。

三、编码与网络七层模型:

七层协议,互联网协议按照功能不同分为OSI五层(七层):应用层(应用层、表示层、会话层)、传输层、网络层、网络接口层(数据链路层、物理层)。

物理层功能:主要是基于电器特性发送高低电压(电信号),高电压对应1,低电压对应0。物理层由来:计算机之间必须完成组网。例如:光缆、电缆、双绞线、无线电波。

数据链路层功能:定义了电信号的分组。由来:单纯的电信号0和1没有任何意义,必须规定高低信号多少位一组,每组什么意思。例如:以太网协议ethernet。Ethernet规定:一组电信号构成一个数据包,叫做’帧’,每一数据帧分成:报头head和数据data两部分。head是18个字节,包含发送者/源地址6个字节,接收者/目标地址6个字节,数据类型6个字节。data最短46字节,最长1500字节,里面是具体内容。head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送。mac地址:head中包含的源和目标地址由来:Ethernet规定接入Internet的设备都必须具备网卡,发送端和接收端的地址便是指网卡的地址,即mac地址。每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,通常有12位16进制数表示,前六位是厂商编号,后六位是流水线号。广播:ethernet采用最原始的方式,广播的方式进行通信。

网络层:引入一套新的地址用来区分不同的子网,这套地址即网络地址。网络层由来:有了ethernet、mac地址、广播的发送方式,世界上的计算机就可以彼此通信了,但是不同局域网之间的PC端进行通信过于混乱,所以必须找出一种方法区分哪些计算机属于同一局域网,若是同一局域网,采用广播的方式发送,如果不是,就采用路由的方式向不同局域网/子网分发数据包。IP协议:规定网络地址的协议叫IP协议,它定义的地址成为ip地址,它规定网络地址由32位2进制表示,范围0.0.0.0-255.255.255.255。ip地址一般分为两个部分:网络部分(标识子网)和主机部分(标识主机)。单纯的ip地址段只是标识了ip地址的种类,从网络部分或主机部分都无法分辨一个ip所处的子网。总结,IP协议的作用有两个:一个是为每一台计算机分配IP地址,另一个是确定哪些地址在同一个子网络。ip数据包也分为head和data部分,无需为ip包定义单独的栏位,直接放入以太网包的data部分。若ip数据包的长度超过了以太网数据包的长度,需要分割成几个以太网数据包分开发送。ARP协议功能:广播的方式发送数据包,获取目标主机的mac地址。由来:计算机通信靠广播,所有上层的包   通信是基于mac的广播方式实现,计算机在发包时,获取自身的mac是容易的,如何获取目标主机的mac就需要通过ARP协议。工作方式:每台主机ip都是已知的。首先通过ip地址和子网掩码区分出自己所处的子网,分析目标和自己是否处于同一网络,若是统一子网,目标mac是广播mac(FF.FF.FF.FF),获得目标主机mac,若是不同子网,目标ip变是网关ip,通过ARP协议获得网关mac。所以不同网络之间的通信是通过网关mac进行的。

传输层:建立端口到端口的通信。传输层由来:网络层的ip帮我们区分子网,以太网层的mac帮我们找到主机,然后大家使用的都是应用程序,通过端口标识这台主机上的应用程序,端口即应用程序与网卡关联的编号。tcp协议udp协议,socket抽象层对两个协议做了封装。

一条信息要发送出去,通过应用层、传输层、网络层一步步封装,化为0与1进行传播,接收者再一层层地解析。这真是个0与1的时代。

python全栈s3视频教程笔记 Day1相关推荐

  1. python 全栈开发之路 day1

    python 全栈开发之路 day1 本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进 ...

  2. 唤醒手腕Python全栈工程师学习笔记(持久存储篇)

    这个篇目是"持久存储篇",讲的就是Python操作数据库,这边介绍3种数据库,分别是MySQL.Redis.Mongodb 1. Python操作MySQL数据库 MySQL属于传 ...

  3. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记06...

    day6课程内容: tuple(元祖) 创建元祖: tup0=() #没有元素的一个元祖 tup1=(20,)#只有一个元素的元祖 元祖可读,不可修改 Dictionary(字典)#Python里唯一 ...

  4. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记16...

    day16课程内容: 装饰器: def outer(): x=10 def inner(): print(x) return inner outer()() #inner 是局部变量,10 闭包:如果 ...

  5. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记08...

    day8课程内容: 文件操作 f=open('小重山','r',encoding='utf8')   #以读的方式打开文件 data=f.read() print(data) f.close()  # ...

  6. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记18...

    day18课程内容: os模块 import os print(os.getcwd())#D:\untitled\练习题 获取当前工作目录 os.chdir(r'D:\untitled\练习题\16. ...

  7. 老男孩python全栈开发视频教程_老男孩Python全栈开发(92天全)视频教程 自学笔记05...

    day5课程内容: 集成开发环境(IDE) VIM #经典的Linux下的文本编辑器 Eclipse #Java IDE Visual Studio #微软开发的IDE notepad++ subli ...

  8. 唤醒手腕Python全栈工程师学习笔记(网络爬虫篇)

    唤醒手腕Python爬虫学习笔记,喜欢的同学们可以收藏下,谢谢支持. 01.基础语法知识点 字符串的分割 webString = 'www.baidu.com' print(webString.spl ...

  9. Python全栈开发教程笔记

    本文档基于B站Python教程 一.print()函数 1. 可以输出数字 print(520) print(98.5) 2. 可以输出字符串 print('hello world') print(& ...

最新文章

  1. 使用Git管理源代码
  2. Maven学习总结(8)——使用Maven构建多模块项目
  3. 2013校作息时间表暂存
  4. 淘宝特价版月活过亿背后,下沉市场正进入C2M时代
  5. 【Android UI设计与开发】3.引导界面(三)实现应用程序只启动一次引导界面
  6. OO第三次博客作业——规格
  7. 怎样用c语言算平均成绩,用C语言编程平均分数
  8. Android Studio自动排版的两种方法
  9. 【实例】原生 js 实现全屏滚动效果
  10. 向量化编程:arrayfun及cellfun函数的使用
  11. 一个令你颤抖的flutter动画:Basic Animations
  12. 查看dll库导出库的函数接口
  13. 移动应用开发 jQuery Mobile
  14. java.this的作用包括,智慧职教: 以下不是Java中this关键字的作用的是()。
  15. DNS是什么?DNS什么用?
  16. [数据结构]基于二叉树的家谱系统
  17. 数据丢包怎么修复_网络丢包怎么办?这些解决办法不得不知
  18. Kyro - To register this class use: kryo.register
  19. 用Python实现爬虫爬取京东笔记本电脑图片
  20. 上海纽约大学计算机专业怎样,上海纽约大学王牌专业有哪些

热门文章

  1. VUE整合信通身份证阅读器返回读取到的数据或将身份证图片返回
  2. aws docker_深入介绍AWS上的Docker
  3. oracle 12.1.0.2版本对象ku$_user_view是失效状态的修复
  4. 程序员:为什么几个月后我自己写的代码也看不懂了?
  5. BERT所占内存的计算
  6. 作为技术分析工具的 MTF 指标
  7. 【转载】Hint的常见错误使用方式
  8. jwplayer 自定义logo已经右键菜单事件
  9. Linux中标麒麟开机程序自启动
  10. debian10安装nvidia显卡驱动