计算机基础
1.计算机结构
计算机之父 - 冯.诺依曼 包含了五部分:
输入设备 输出设备 存储器 运算器 和 控制器
输入设备:
相对于计算机 向计算机中输入数据
设备: 键盘 鼠标
输出设备:
相对于计算机 从计算机中输出数据
设备: 显示器 音响
机箱:
主板 --->连接其他设备的设备 是其他设备的载体
主板上的内容: CPU 内存 显卡 硬盘等
CPU:
中央处理单元,也称之为处理器 是计算机的运算核心和控制核心
内存:
运行内存 负责硬盘上的数据与CPU的数据做交换处理的 缓存的是系统中临时数据[关闭计算机之后这些数据丢失]
硬盘:
存储资料和软件等数据的设备 容量大 存储数据具有持久性[不删除一直存在]
显卡:
显示器显示画面有关的
2.软件开发
开发 —>动作 行为
软件 —>它是 一系列按照特定顺序组织的计算机数据和执行该数据的指令的集合
分类: 系统软件 和 应用软件
系统软件 —>操作系统
属于最底层的软件 控制着计算机中运行的其他软件 并管理着整个计算机的资源 它是计算机硬件与应用程序和用户交互的桥梁
Windows MacOS Linux
应用软件:
微信 QQ 王者 吃鸡...
软件的出现更好的完善了人和计算机之间的交互
3.人机交互
图形化界面交互
对于用户使用比较简单 易入手 易操作
控制指令交互
需要控制台 在控制台上输入计算机识别的指令 是计算机通过指令完成对应的操作
DOS命令
- 查看当前目录下有哪些文件
dir —>查看的当前目录下的子文件和子目录
dir /a —>查看的是包含隐藏文件的所有文件
dir /ah —>只显示隐藏的 - 跳转到其他目录下
cd 目录的路径
cd … 回到上一级目录
cd / 直接回到根目录下
如果是当前路径的子目录 —>直接cd 子目录路径即可
C:\Users\11143>cd Desktop
如果跳转的是同一个盘符下的其他路径 —>cd 其他目录路径
C:\Users\11143\Desktop>cd C:\360Downloads
跳转到其他盘符下的目录
先切换盘符 再进行跳转
切换盘符: 盘符名称: d: - 创建目录
md 目录名称
可以单级目录 也可以创建多级目录
在创建多级目录时 如果该目录已存在 不会创建直接使用 如果不存在才会创建 - 创建文件
echo —>输出的意思
重定向 > 创建一个文件 如果这个文件中已经存在 会清空源文件的内容
>> 如果文件存在 在原有内容的基础上追加新的内容
> echo 内容 > 文件名.后缀
type这个指令是来查看文件中的内容
type 文件名.后缀 - 删除文件
del 文件名.后缀
del 文件名.* —> 删除同名的文件
del *.txt —>删除指定后缀的所有文件
del * . * —> 删除该目录下的所有文件
*表示的是通配符 泛指其他所有 - 删除目录
rd 目录名称 —>只能删除空目录 - 清除控制台指令
cls - 拷贝文件
copy 源文件路径 目的文件路径 - 移动文件
move 源文件路径 目的文件路径 - 退出控制台
exit
4.计算中数据存储格式 - 二进制 和 编码
进制 —>进位制 —>人们规定的一种进位方式
生活中常用的是 十进制 —>逢十进一
开关只有两种状态 —>开和关
开视作1-关视作0 --->由不同的状态去关联数据
计算机中数据值只有两种状态 分别是0和1 ---->逢二进一
常见的进制:
二进制 符号集 0 1 1 + 1= 10 ---> 2 [0B/0b]
八进制 符号集: 0 1 2 3 4 5 6 7 7 + 1 = 10 ----> 8 [0o/0O]
十进制 符号集: 0 1 2 3 4 5 6 7 8 9 9 + 1 = 10 ---> 10
十六进制 符号集 0 1 2 3 4 5 6 7 8 9 a b c d e f f + 1 = 10 ---> 16 [0x/0X]
进制中每一位上数值的意义:
十进制为例:
12345 = 1* 10^4 + 2 * 10^3 + 3 * 10^2 + 4 * 10 ^ 1 + 5 * 10 ^0
=10000 + 2000 + 300 + 40 + 5
对于十进制而言:
10^3 10 ^ 2 10 ^ 1 10^0
每一位上的意义 是 进制的基数 的当前位数减一的次方 (b ^ n-1)
1000 100 10 1
二进制数每一位上的意义
…... 2^2 2^1 2^0
16 8 4 2 1
二进制表示的数据是:
0b1101 = 8 + 4 + 0 + 1 = 13
进制转换:
二进制转换为十进制:
转换规则: 按权展开求和 - 根据每一位上的权重 按权展开求和
例如:
0b110110
---> 0*2^0 + 1 *2^1 + 1*2^2 + 0*2^3 + 1*2^4 +1*2^5 =54
也可以8421进行转换
0 + 2 + 4 + 0 + 16 + 32 = 54
二进制数转换为八进制:
八进制中最大符号集是7 需要二进制中三位对等
将二进制数从右向左三位三位一分 再对每一份按权展开求和 最后将每一份的和拼在一起结果就是八进制 [如果左边不足三位 前面补0]
0b001 101 110 111 100 011
1 5 6 7 4 3 ----> 0o156743
二进制数转换为十六进制
十六进制中最大符号集是f(15) 需要二进制中四位对等
将二进制数从右向左四位四位一分 再对每一份按权展开求和 最后将每一份的和拼在一起结果就是十六进制 [如果左边不足四位 前面补0]
0b1111 0111 1101 0001
f 7 d 1 -----> 0xf7d1
练习:
二进制 ---> 十进制
0b10111011
1 + 2 + 0 + 8 + 16 + 32 + 0 + 128 = 187
二 ---->八
0b0 110 110 110 101
6 6 6 5 ---> 0o6665
二 ----> 十六
0b 0001 1101 1110 1100 0011
1 d e c 3 ---> 0x1dec3
将十进制转化成二进制 / 八进制 / 十六进制
整数部分 除以转换进制的基数(2 , 8, 16) 取余数 除到商为0 ---> 将余数倒叙拼接
小数部分 乘以转换进制的基数(2 , 8, 16) 取整 乘到小数部分为0-----> 将整数正序拼接
... 5 4 3 2 1 0 -1 -2 -3
4 2 1 0.5 0.25 0.125
练习:
十进制转换为二进制
75.375
64 + 8 + 2 + 1
1001011.011
0.375
*2
----
0.75 ---> 0
1.5 ----> 1
1.0 ---> 1
44.875
32 + 8 + 4
101100.111
4.2编码
生活中中常见的是一些字符
字符就是单个符号
一个英文字母: a 一个汉字: 慢 一个符号: ,
计算机中数据是以0和1来表示的,显示数据 是以010101这种形式展示给大家看的,对于不熟悉计算机的人来说 这一串数据就相当于天文,为了让普通人能够看懂这一串数据表示的内容,所以需要将其进行转换成普通人可以看懂的字符。这种转换过程和转换方式 ---->编码
假设:
0101010101 --->十进制数据
字符 --->十进制数据
0101010 <---> 十进制数据<---> 字符 ---> 这种编码方式 ASCII码
在ASCII码表中 将一个字符使用8位二进制数表示
分为高四位和低四位
0000 0000 ---> 空字符
0100 0001 ---> 65 --->A
0100 0010 ---> 66 --->B
0101 1010 ---> 90 --->Z
0110 0001 ---> 97 --->a
0111 1010 --->122 --->z
在ASCII码的基础上又诞生了其他的编码方式例如常见的Unicode编码,使用最少16位二进制数表示一个字符或者使用32位二进制数表示一个字符,使用Unicode编码方式来在计算机中进行存储数据的话比较浪费计算机的内存,又在Unicode的基础上进行压缩出现常用的UTF-8,这种编码的最大特点是采用变长的形式进行存储
英文符号 保留ASCII码的形式进行存储 在计算机内存中占8位二进制数[1个字节B]
中文符号 占3个字节(24位二进制数)
gbk ---->
与utf-8的区别: 中文字符占2个字节
5.计算机中数据运算的单位 以及 数据运算时二进制的格式
位(bit)比特:
简写成b 表示信息量的最小单位 一个0或者一个1称之为1b
字节(Byte)
简写成B 和位之间的关系: 1B = 8b
1KB = 1024B // 1km = 1000m
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
计算机作用: 存储数据 对数据进行运算
在计算机中是如何来区分正负的?
计算机存储数据的二进制数位数是一定的,该二进制数的最高位决定数据的正负,最高位为1表示负数 最高位为0表示整数
ASCII码中127对应的符号
0111 1111
数据来进行运算时 二进制的格式:
常见的二进制格式:原码
反码
补码
对于正数而言: 二进制数的原码-反码-补码的格式是一致的,直接将该数据转换成二进制的一个原本格式
11 ---> 0000 1011
对于负数而言:
原码:
在正数二进制的基础上奖最高位置为1
-11 ---> 1000 1011
反码:
在负数原码的基础上 除了最高位 其余为按位取反: 0变1---1变0
-11 ---> 1111 0100
补码:
在负数反码的基础上 +1
-11 ---> 1111 0101
由上得出: 计算机中数据存储时 是以补码形式的二进制进行存储计算的
练习:
以8位为例
77 - 22
-61 + 14
64 + 8 + 4 + 1 = 77
-(16 + 4 + 2) = -22 ---> 1001 0110 ---> 1110 1001 ----> 1110 1010
0100 1101
1110 1010
---------
1 0011 0111 ---> 32 + 16 + 4 + 2 + 1 = 55
-(32 + 16 + 8 + 4 + 1) = 1011 1101 ----> 1100 0010 ----> 1100 0011
1100 0011
0000 1110
---------
1101 0001[补码] ----> 1101 0000 ----> 1010 1111 ----> -(32 + 15) = -47
8位最大的正数
0111 1111 ----> 127
1111 1111 ---> -127
有一个特殊的数值是0
0000 0000 +0
1000 0000 -0 视作-128
8位的话转化数值 — >2^8 = 256个数值
不分正负 0 - 255
分正负 -128 ~ 127
-128的由来: 其实是-0
计算机存放数据时 占用内存是以字节为单位的
6.计算机语言
编程语言:
程序员需要与计算机交互完成对应的操作 --->计算机操作的二进制数据制定一套语法规则与计算机进行交互,去操作二进制数据
制定的语法规则称之为编程语言
编程语言:C
java
C++
C#
Python
先去学习语言的语法 学编程语言 其实学习就是语法规则
7.Python编程语言基础入门
要通过Python语言跟计算机进行交互,需要Python的一个环境在控制台上要想打开一个文件 需要先切换到该文件所在的路径下
环境变量
Path这个字段
在控制台上输入指令时,会现在Path指令的路径中查找是否具有该指令,如果有的话直接运行指令
如果没有,在控制台指定的目录下查找是否有该指令,有的直接运行,没有提示不是正确的命令
windows7 C:\Python\Python36\Scripts;C:\Python\Python36;%USERPROFILE%\AppData\Local\Microsoft\WindowsApps;
分号分割之后再添加新路径
windows10
直接新建添加就行
Python解释器 —>给计算机解释Python文件程序的
python文件有很多 路径可能也不一样
因为需要在不同的路径下 去解释Python文件 --->需要解释器在不同的路径下都可以使用
---> 将Python解释器的位置放于环境变量中
数据类型:
字符串类型--->由引号包含多个符号 就叫做字符串--->"123456"
整型-->整数--->1234
浮点型-->小数--->12.34
print(values, sep=" “, end=”\n", flile=sys.stdout, flush=False)
values:
输出的内容: 可以输出多个内容 每个内容之间使用逗号隔开即可
sep
表示输出内容之间的分割符 默认是空格 分割符格式是字符串类型的
end
表示整体输出内容的结尾符 也是字符串类型的 默认是\n--->换行
file
表示输出内容的目的地 默认是到控制台
flush
表示是否刷新 如果输出到文件中 不执行刷新 内容无法立即写入到文件中
True为刷新 False为不刷新
注释
使用自己了解的文字解释代码含义
注释的内容不会当做程序被执行 只是给程序员辅助理解使用的
注释的格式:
单行注释: # 注释内容
多行注释:
'''
注释内容
'''
这里写自定义目录标题
欢迎使用Markdown编辑器
你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
新的改变
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
- 全新的界面设计 ,将会带来全新的写作体验;
- 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
- 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
- 全新的 KaTeX数学公式 语法;
- 增加了支持甘特图的mermaid语法1 功能;
- 增加了 多屏幕编辑 Markdown文章功能;
- 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
- 增加了 检查列表 功能。
功能快捷键
撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
合理的创建标题,有助于目录的生成
直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC
语法后生成一个完美的目录。
如何改变文本的样式
强调文本 强调文本
加粗文本 加粗文本
标记文本
删除文本
引用文本
H2O is是液体。
210 运算结果是 1024.
插入链接与图片
链接: link.
图片:
带尺寸的图片:
居中的图片:
居中并且带尺寸的图片:
当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。
如何插入一段漂亮的代码片
去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片
.
// An highlighted block
var foo = 'bar';
生成一个适合你的列表
- 项目
- 项目
- 项目
- 项目
- 项目1
- 项目2
- 项目3
- 计划任务
- 完成任务
创建一个表格
一个简单的表格是这么创建的:
项目 | Value |
---|---|
电脑 | $1600 |
手机 | $12 |
导管 | $1 |
设定内容居中、居左、居右
使用:---------:
居中
使用:----------
居左
使用----------:
居右
第一列 | 第二列 | 第三列 |
---|---|---|
第一列文本居中 | 第二列文本居右 | 第三列文本居左 |
SmartyPants
SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:
TYPE | ASCII | HTML |
---|---|---|
Single backticks | 'Isn't this fun?' | ‘Isn’t this fun?’ |
Quotes | "Isn't this fun?" | “Isn’t this fun?” |
Dashes | -- is en-dash, --- is em-dash | – is en-dash, — is em-dash |
创建一个自定义列表
-
Markdown
- Text-to- HTML conversion tool Authors
- John
- Luke
如何创建一个注脚
一个具有注脚的文本。2
注释也是必不可少的
Markdown将文本转换为 HTML。
KaTeX数学公式
您可以使用渲染LaTeX数学表达式 KaTeX:
Gamma公式展示 Γ ( n ) = ( n − 1 ) ! ∀ n ∈ N \Gamma(n) = (n-1)!\quad\forall n\in\mathbb N Γ(n)=(n−1)!∀n∈N 是通过欧拉积分
Γ ( z ) = ∫ 0 ∞ t z − 1 e − t d t   . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=∫0∞tz−1e−tdt.
你可以找到更多关于的信息 LaTeX 数学表达式here.
新的甘特图功能,丰富你的文章
- 关于 甘特图 语法,参考 这儿,
UML 图表
可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::
这将产生一个流程图。:
- 关于 Mermaid 语法,参考 这儿,
FLowchart流程图
我们依旧会支持flowchart的流程图:
- 关于 Flowchart流程图 语法,参考 这儿.
导出与导入
导出
如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。
导入
如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。
注脚的解释 ↩︎