一周内容回顾
7/26周一内容概要
- 计算机存储数据的本质
- 计算机的完整发展史
- 计算机的硬件系统与软件系统
- 数据的含义
- 字符编码的概念
内容详细
计算机存储数据的本质
#前提
因为计算机的工作依赖于"电",所以它只能识别高低电频两种电信号状态,为了方便人类理解,则用了0和1来表示
#结论
在计算机的世界里只认识数字0和1
而在内部数据就是一串01的二进制数
"以此类推 通过01的数字组合可以表示更多的数据"
计算机的存储单位
数字的每一位称之为二进制数
0:一位二进制数
01:两位二进制数
...
#单位换算
8bit=1bytes
1024bytes=1kb
1024KB = 1MB
1024MB = 1GB
1024GB = 1TB
1024TB = 1PB
#结论
存储数据的硬件容量本质就是存储二进制位的大小
计算机的完整发展史
1.电子管时代
2.晶体管时代
3.集成电路时代
4.大规模超大规模集成电路时代
计算机的硬件系统与软件系统
#前提
一台完整的计算机由硬件系统和软件系统组成
硬件:可以看得到摸得到的物件,是一个实物
软件:看不到摸不到的程序,是一个代码
计算机硬件系统
五大组成部分:
1.控制器
控制计算机各个硬件的工作
2.运算器
控制数学运算和逻辑运算
3.存储器
保存数据
4.输入设备
往计算机内部传递信息
5.输出设备
计算机往外部传递信息
#补充
1.控制器 + 运算器 = 中央处理器(CPU)
2.存储器可分为内存和外存
内存:存取数据快,断电之后数据会丢失
外存:存取数据慢,断电之后数据不会丢失
3.计算机三大核心硬件:
CPU、内存、硬盘
"""
任何想要运行起来的软件 都必须先由硬盘加载到内存才可以被CPU执行
"""
4.电路板
大部分都是绿色(绿釉),它是由很多块薄的板压接到一起形成的
每一块薄板上面都有线路
计算机软件系统
1.系统软件
是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统
2.应用软件
日常生活所使用到的各个公司出版发行的软件
"""计算机三层架构"""
1.应用程序
2.操作系统
3.计算机硬件
# 应用程序必须跟操作系统打交道才可以操作计算机硬件
# 同理计算机硬件也必须跟操作系统打交道才可以与应用程序交互
数据概念
# 数据是互联网最宝贵的财富
表现形式
符号、文字、数字、语音、图像、视频等
字符编码的概念
#前提
计算机只认识01的二进制 而我们不同国家的人使用不同的字符
# 字符编码发展史
1.一家独大(ASCII码表)
2.群雄割据(GBK编码表、Euc_kr编码表、shift_JIS编码表)
3.天下一统(unicode编码表、utf8编码表)
#结论:现在的文本文件默认都使用utf8编码
编码与解码
# 编码
将人类能够读懂的字符按照指定的编码编译成计算机能够读懂的数字
eg:将中文按照GBK编码编译成数字
# 解码
将计算机能够读懂的数字按照指定的编码表翻译成人类能够读懂的字符
eg:将GBK对应的数字翻译成中文
"""数据基于网络传输必须是二进制形式"""
#解决文件乱码的核心
就在于当初以什么编码存的就以什么编码解
7/27周二内容概要
- 计算机网络
- 网络相关协议
- OSI七层协议
内容详细
计算机网络
# 通信必须要有一个物理连接介质
eg:网线 网卡 信号收发器
1.早期联机
要想通信就彼此插一根网线
2.交换机
交换机能够确保所有连接进来的计算机彼此之间是互联的
由交换机组成的群体我们称之为"局域网"
# 广播与单播
广播:朝交换机发送了一个信息 所有连接交换机的机器都能够接收到
单播:只有消息的目标对象才会有所回应
3.路由器
能够实现不同局域网之间计算机数据交互
4.互联网
就是由很多局域网组成的
"""上网:通过网线访问其他计算机上面资源的过程"""
#其他计算机一般指的是服务器
网络相关协议
1.以太网协议
规定了每一台计算机在出厂的时候都必须有一块网卡
并且网卡上面必须有串数字编号
# 基于mac地址可以在局域网内完成通信但是容易产生广播风暴
2.IP协议
规定了接入互联网的计算机都必须有一个IP地址
IP地址就相当于该计算机的身份证号
#如何查看当前计算机的IP地址
1. windows+r
2.输入cmd确认
# 基于IP地址可以跨局域网完成通信
ip地址范围:0.0.0.0-255.255.255.255 # IPV4版本
IPV4版本地址不够用有了#IPV6
#DNS服务器
1.域名解析:将网址解析成对应的IP地址
域名就是网址如www.baidu.com www.jd.com www.sogo.com
2.域名的后缀
.com
.cn
.us
#不同的后缀有不同的含义 我们使用最多的就是通用域名后缀.com
3.端口协议
端口号(port) 范围:0~65535
0~1024之间默认是操作系统内部需要使用的
1024~8000之间是常用软件的端口号
#端口的作用
用来标识一台计算机上面的不同程序
因此端口号是动态分配的
# 同一台计算机同一个端口号在同一时间不可能被两个程序占用
#总结
"""
IP地址:用于标识世界上唯一一台接入互联网的计算机
PORT号:用于标识一台计算机上面的某一个应用程序
IP+PORT:能够定位到接入互联网的一台计算机上面的某一个具体的应用程序
如:127.0.0.1:80
127.0.0.1:81
127.0.0.1:82
"""
OSI七层协议
# OSI七层
应用层
表示层
会话层
传输层
网络层
数据链路层
物理连接层
# 简化成五层
1.应用层
程序员自己可以定制自己的交互方式和协议(HTTP协议、FTP协议)
2.传输层
TCP协议、UDP协议
3.网络层
IP协议、port协议
4.数据链路层
传递二进制数据(内部规定了二进制数据的切割方式)
5.物理连接层
物理连接介质(网线口 网卡)
#补充
ARP协议
"针对IP地址与MAC地址的转换"
7/28周三内容概要
- windows DOS命令
- 绝对路径与相对路径
- 环境变量
- 查看类型
- 文件目录相关
- 磁盘盘符
- 操作界面样式
- 补充
内容详细
windows DOS命令
#进入DOS命令终端
windows+r在输入cmd
再按enter进入即可
#DOS命令终端权限的概念
1.以普通用户的形式进入 有一些命令无法执行
2.管理员身份进入 可以执行所有的命令
"""如何区分当前终端是什么身份就看最上方的提示信息即可"""
#路径
相当于是一个资源的位置坐标
打开cmd终端都会默认有一个起始路径 相当于你现在所在的位置
3.切换路径的命令关键字是"cd"
#名称按tab键位可以自动补全但是如果有多个名称相似情况可能会补全错误
eg:
cd xxx
cd ..
cd ..\..
cd ..\..\..
"""根目录的意思就是盘的起始位置 在windows中用\表示"""
绝对路径与相对路径
绝对路径
不需要有任何的参考系 该路径给任何人都可以找到相应的资源
相对路径
需要有一个参考系 该路径并不是所有人都可以找到相应的资源
环境变量
#查看当前计算机的环境变量
打开DOS命令终端输入path
#如何手动添加环境变量?
1.右键"我的电脑"点击属性
2.点击右侧高级系统设置
3.在弹出框中点击环境变量
4.在下方查看变量名为path的双击
5.弹出的数据就是当前你的计算机环境变量 点击新建添加
6.拷贝绝对路径添加即可(依次确定即可)
7.一定要查询打开一个cmd窗口(之前的无法响应改变)
"""环境变量win7与win10不一样"""
win10系统环境变量与环境变量自动分开
win7系统所有的环境变量都在一行使用分号分割
针对win7环境变量的添加
1.先移到末尾检查前面是否有分号
2.没有的话加上分号再拷贝你的路径之后再加一个分号结束
查看类型
dir # 查看文件目录(文件夹)相关数据
1.查看当前路径下所有的文件和文件夹
dir
# 针对展示出来的结果 如果带有<DIR>表示文件夹 没有表示其他文件
dir 绝对路径/相对路径
2.筛选我们需要查找的数据
dir *.txt # 查找所有后缀名是txt的文件
dir *.mp4 # 查找所有后缀名是mp4的文件
文件目录相关
"""目录其实就是文件夹的意思"""
# 在操作命令之前一定要先确定你当前在哪个位置
1.如果待操作的内容不在当前路径需要使用绝对路径
2.如果待操作的内容就在当前路径则只需要相对路径
eg:
1.去D盘aaa文件夹内创建一个bbb文件夹
先切换到该文件夹内再创建,也可以使用绝对路径创建
mkdir bbb # mkdir关键字 创建文件夹
2.删除刚刚创建的文件夹
rmdir bbb
"""
rmdir只能删除空的文件夹
rmdir /s 可以一次性删除文件夹及里面所有的数据 但是会二次提醒
rmdir /s /q 不提醒直接删
"""
磁盘盘符
wmic logicaldisk get name # 查看当前计算机所有的盘符名称
'''查看目录结构'''
tree # 查看当前路径下所有目录的目录结构
tree /f # 查看文件夹及文件
操作界面样式
color
补充
# 清空当前屏幕的内容
cls
# 看命令的具体使用方法
help 命令
# 重复之前的命令
1.方向键上下
2.如何快速移到的命令的末尾
end键
3.如何快速移到命令的开头
home键
4.如何以单词为单位移动
ctrl + 方向键左右
# 终止正在执行的操作
ctrl + c
7/29周四内容概要
- windows DOS其它命令操作
- 补充命令
- 并发编程
周四内容详细
windows DOS其它命令操作
1.文件属性
attrib # 查看所有文件属性
attrib +r a.txt # 设置文件为只读属性
attrib +h b.txt # 设置隐藏文件
attrib +s c.txt # 设置系统文件
2.文件其他操作
del a.txt # 删除文件
echo 文本内容 > 文件名称 # 往文件中写入内容(替换写)
echo 文本内容 >> 文件名称 # 往文件中写入内容(追加写)
type a.txt # 查看文件内容(在终端中展示)
dir > d.txt # 将dir的命令结果写入d.txt
ipconfig > d.txt # 将ipconfig的命令结果写入d.txt
copy 目标文件 目标位置 #copy命令只能拷贝文件
copy 目标文件夹 目标位置 #只会将目标文件夹内的文件拷贝出去
xcopy #比copy功能更加强大 既可以拷贝文件也可以拷贝目录(文件夹)
move 目标文件 文件位置 # 剪切文件至指定位置
rename oldname newname # 重命名文件
补充命令
tasklist # 查看当前计算机上正在运行的服务
taskkill # 终止正在运行的服务
并发编程
#操作系统发展史
1.1.穿孔卡片
1.2.联机批处理系统
1.3.脱机批处理系统
#多道技术
1.串行
程序必须一个个排队执行 消耗的时间是每个程序时间的总和
2.多道(并发)
CPU运行速度极快 可以在任务的间歇保存当前任务的状态去做其他事情
之后再回来接着上一次任务的结尾继续往后操作
# 并发:看上去像同时执行就可以称之为并发 单个CPU可以实现并发
3.并行
同一时间同时执行
# 只有多个CPU的情况下才可以实现并行
7/30周五内容概要
- 并发编程之进程
- 进程的调度
- 同步与异步
- 阻塞与非阻塞
- 进程的结束与创建
- 并发编程之线程
- 前端基础
- 谷歌浏览器相关操作
- 前端之HTML
- 网页的本质
周五内容详细
并发编程之进程
#程序
就是一堆编码产生的文件
#进程
在内存中正在运行的程序
#计算机可以同时运行多个进程,通过分配不同的端口号管理不同的进程
进程的调度
#前提:计算机只有一个CPU工作
"""进程调度的发展史"""
1.先来先服务(FCFS)
2.短作业优先调度
3.时间片与多级反馈队列
同步与异步
同步
提交一个任务之后原地等待任务的结果 期间不做任何事情
异步
提交一个任务之后不原地等待任务的结果直接去做其他事情
等任务有结果之后会自动通过回调机制告诉提交者
#结论
异步在执行任务史效率更高
阻塞与非阻塞
阻塞
软件自身暂时不用CPU
非阻塞
1.就绪态
2.运行态
#任务的运行必须是先进入就绪态才能变为运行态
就绪态 > 运行态 > 就绪态 > 运行态
就绪态 > 运行态 > 阻塞态 > 就绪态 > 运行态
两两组合之后
# 效率最高:异步非阻塞 效率最低:同步阻塞

进程的结束与创建
进程的创建
1.双击一个软件图标
2.命令创建
3.代码创建
进程的结束
1.点击关闭按钮
2.命令结束
3.代码结束
并发编程之线程
#前提
进程是一个资源单位
真正与CPU交互工作的是进程里面的线程
#并且同一个进程内可以运行多个线程且多个线程之间数据是共享的
#每一个进程默认都会自带最少一个线程

前端基础
前端
任何用户直接打交道的操作界面都可以称之为"前端"
后端
不直接与用户打交道 "后端"(程序员写的代码)
eg:python代码 java代码 c++代码 php代码
# 前端三剑客
1.HTML:网页的骨架
2.CSS:网页的样式
3.JavaScript:网页的动态效果 事件处理等
谷歌浏览器相关操作
# IT行业推荐使用谷歌浏览器
1.下载完谷歌之后修改默认的搜索引擎
2.查看网页源代码
只需鼠标右键点击查看网页源码
3.如何查看浏览器优化之后的源代码
先鼠标右键点击检查选择elements标签页
再直接按键盘的F12弹出选择elements标签页
"""谷歌浏览器标签页说明"""
1.Elements用于查看优化之后的网页代码
2.console支持直接编写JS代码 类似于一个输出设置
3.sources记录浏览器请求所有的资源文件
4.network记录浏览器所有的网络请求
5.Application提供额外的存储相关概念
# 查看页面上某个内容的代码本质
先点击标签页最左边的按钮 之后悬浮到想要查看的位置 再次点击即可定位
# 修改弹出框的位置
点击右侧三个点选择相应的样式即可
前端之HTML
HTML
超文本标记语言
#所有的网页其实也是文件,并且以.html结尾
"HTML文件固定语法结构"
<html>
<head>主要书写给浏览器看的内容</head>
<body>主要书写展示给用户的内容</body>
</html>
#注释
对一段代码的解释 不参与运行只是解释说明
1.html中注释的语法是(存储html的文件后缀名是.html)
<!--注释内容-->
2.css中的注释语法是(存储css的文件后缀名是.css)
/*注释内容*/
3.JS中的注释语法是(存储js的文件后缀名是.js)
// 注释内容
#结论
在html文件内通过标签的方式直接书写其他语言
不同的语言 不同的文件 使用的注释可能都不同
网页的本质
<!DOCTYPR html>
<html>
<head>
<title>这是全网唯一个有趣的网页</title>
<style>
<!--style标签内部支持直接书写css代码-->
h1 {
color:red
}
</style>
<script>
<!--script标签内部支持直接书写JS代码-->
alert(123/"中文")
</script>
</head>
<body>
<h1>这是一个h1标签</h1>
<a href='https://www.baidu.com'>点我去百度</a>
<img src='https://img1.baidu.com/it/u=497641285,412646493&fm=26&fmt=auto&gp=0.jpg' />
</body>
</html>

浙公网安备 33010602011771号