- 博客(31)
- 资源 (1)
- 问答 (5)
- 收藏
- 关注
原创 计算机组成原理——输入/输出系统(I/O接口&外设&中断)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档一、I/O系统基本概念1.基本概念(1)I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备(2)常见的I/O设备①硬盘、光盘――即可输入、又可输出的设备(有的教材称为:外存设备)②鼠标、键盘――输入设备③显示器、打印机――输出设备④可统称“外部设备”2.主机如何与l/O设备进行交互?(1)I/O接口:又称I/O控制器(I/O Controller)、设备控制器,负责协调主机与外部设备之间的数据.
2022-04-06 20:23:32
4118
原创 计算机组成原理——存储系统(下)(双口RAM&Cache的映射及替换算法&Cache写策略)
文章目录一、双口RAM与多模块存储器1.存取周期2.双口RAM3.多体并行存储器4.应该取几个“体”?5.多模块存储器二、Cache的基本概念和原理1.存储系统存在的问题2.Cache的工作原理3.局部性原理4.性能分析5.有待解决的问题三、Cache和主存的映射方式1.全相联映射(随意放)2.直接映射(只能放固定位置)3.组相连映射四、Cache替换算法1.替换算法解决的问题2.随机算法(RAND,random)3.先进先出算法(FIFO,first in first out)4.近期最少使用(LRU,L
2022-03-26 17:08:53
2571
2
原创 计算机组成原理——存储系统(上)(存储器&&SRAM&&DRAM&&ROM)
文章目录一、存储系统基本概念1.存储器的层次结构2.存储器的分类3.存储器的性能指标二、主存储器的基本组成1.基本的半导体元件及原理2.存储芯片的基本原理3.如何实现不同的寻址方式三、SRAM和DRAM1.概述2.DRAM芯片3.存储元件不同导致的特性差异4.DRAM的刷新(“刷新”由存储器独立完成,不需:CPU控制)5.DRAM的地址线复用技术四、只读存储器ROM1.概述2.了解各种ROM3.计算机内的重要ROM五、主存储器与CPU的连接1.现在的计算机2.存储芯片的输入输出信号3.增加主存的存储字长——
2022-03-19 15:07:15
2973
5
原创 计算机组成原理——总线
一、总线概述1.基本概念(1)总线简图每个总线可能由很多根信号线组成(2)总线的物理实现①如上图,4根信号线组成“一根”总线,所有硬件部件都可以通过这根总线传递数据②可并行发送4bit数据。同一时刻只能有一个部件发送数据,但是可有多个部件接受数据(3)总线的定义①总线是一组能为多个部件分时共享的公共信息传送线路1)共享:指总线上可以挂接多个部件,各个部件之间互相交换的信息都可以通过这组线路分时共享。2)分时:指同一时刻只允许有一个部件向总线发送信息,如果系统中有多个部件,则它们只能
2022-03-09 19:48:00
7160
7
原创 计算机组成原理——计算机系统概述
前言本篇将简要介绍:1.计算机的发展历程2.计算机硬件的基本组成(五大部分及冯诺依曼结构)3.各个硬件部件(包含详细工作过程)4.计算机系统的多级层次结构5.计算机性能指标一、计算机的发展1.计算机系统(1)计算机系统 = 硬件+软件①硬件:计算机的实体,如主机、外设等②软件:由具有各类特殊功能的程序组成③计算机性能的好坏取决于二者功能的总合(2)软件①系统软件:用来管理整个计算机系统1)操作系统2)数据库管理系统(DBMS)3)标准程序库(编程时使用的库函数)4)网络
2022-03-06 10:41:28
1466
9
原创 机器学习应用——强化学习&课程总结 实例 “自主学习Flappy Bird游戏”(MDP&蒙特卡洛强化学习&Q-learning&DRL&DQN)
前言本篇将简要介绍强化学习的“自主学习Flappy Bird”实例读完本篇,你将了解:一、强化学习1.相关概念2.马尔可夫决策过程(MDP)(model base 模型)3.蒙特卡洛强化学习4.Q-learning算法5.深度强化学习(DRL)6.Deep Q Network(DQN)二、自主学习Flappy Bird1.程序基本框架(观察期、探索期、训练期)2.动作选择模块3.卷积神经网络-CNN4.Tensorflow&openCV库三、关于机器学习专栏的一点总结
2022-01-24 16:43:12
9563
7
原创 机器学习应用——监督学习(下)“手写数字识别”(神经网络实现&KNN实现)
前言机器学习应用博客中,将核心介绍三大类学习,即:无监督学习、监督学习、强化学习。本篇将简要介绍监督学习的“手写数字识别”实例运用MNIST数据集和DBRHD数据集,使用神经网络实现和KNN实现识别功能一、实例介绍1.图像识别(lmage Recognition)(1)定义是指利用计算机对图像进行处理、分析和理解,以识别各种不同模式的目标和对像的技术。(2)图像识别的发展经历了三个阶段:文字识别、数字图像处理与识别、物体识别。(机器学习领域一般将此类识别问题转化为分类问题。)2.手写识别(
2022-01-06 15:32:30
7342
12
原创 机器学习应用——监督学习(上)(实例:人体运动状态预测&人体运动状态预测&房价与房屋尺寸关系的线性拟合与非线性拟合&交通流量预测)
前言机器学习应用博客中,将核心介绍三大类学习,即:无监督学习、监督学习、强化学习。本篇将简要介绍:1.监督学习概念(最常应用场景:分类和回归)2.分类——k近邻分类器、决策树、朴素贝叶斯(人体运动状态预测)、SVM(人体运动状态预测)3.回归——线性回归(Linear Regression)(房价与房屋尺寸关系的线性拟合);多项式回归(Polynomial Regression)(房价与房屋尺寸的非线性拟合);岭回归(ridge regression)(交通流量预测)一、监督学习1.监督学习的
2021-12-23 20:12:37
5468
11
原创 机器学习应用——无监督学习(实例:31省市居民家庭消费调查&学生上网时间分布聚类&鸢尾花数据&人脸数据特征提取)
前言机器学习应用博客中,将核心介绍三大类学习,即:无监督学习、监督学习、强化学习。本篇将简要介绍:1.无监督学习概念(最常应用场景:聚类(clustering)和降维(Dimension Reduction))2.聚类——kmeans方法(居民家庭消费调查)、DBSCAN方法(学生上网时间分布)3.降维——PCA方法(鸢尾花数据)、NMF方法(人脸数据特征提取)一、无监督学习简要介绍1.目标&定义(1)无监督学习:利用无标签的数据,学习数据的分布或数据与数据之间的关系被称作无监督学习
2021-12-07 13:53:09
11804
19
原创 Python—— 程序设计方法学(模块7: os库的基本使用)(实例:体育竞技分析&第三方库自动安装脚本)
前言本篇主要程序设计方法学,以体育竞技分析为例,介绍自顶向下的设计和自底向上的执行。以第三方库自动安装脚本为例,整体理解代码设计思路和os库的使用。读完本篇,你将了解:1.方法论理解并掌握一批Python程序设计思维2.实践能力学会编写更有设计感的程序本篇将系统介绍:1.实例:体育竞技分析(了解自顶向下的设计和自底向上的执行)2.Python程序设计思维(通过思维改变使编写程序上一个理论的高度)3.Python第三方库安装(介绍广泛的Python计算生态的使用)4.模块7: os库的基
2021-11-28 20:32:48
1864
2
原创 机器学习应用——导学part
Python之机器学习第一弹。Python被称为最简单好上手的语言之一,基于其极强的关联性,对各种库的引用,和资源的关联,使其实现功能非常容易。一些底层逻辑不需过多过深的理解。机器学习是Python发展中应用广泛的一个领域。本篇将简要介绍:1.机器学习概念2.sklearn库初步介绍(标准数据集及基本功能)3.一些相关书籍及课程推荐一、机器学习的目标1.机器学习简介及其分类(1)机器学习是实现人工智能的手段,其主要研究内容是如何利用数据或经验进行学习,改善具体算法的性能。(2)特点①多
2021-11-22 14:32:43
6243
4
原创 Python—— 文件和数据格式化(模块6: wordcloud库的使用)(实例:自动轨迹绘制&政府工作报告词云)
前言本篇主要介绍文件和数据格式化,以自动轨迹绘制为例,介绍自动化的程序设计方法。以政府工作报告词云为例,介绍wordcloud库的使用。数据格式化:将一组数据按照一定规格和式样进行规范:表示、存储、运算等读完本篇,你将了解:1.方法论:从Python角度理解的文件和数据表示2.实践能力:学会编写带有文件输入输出的程序,并且能够实践对数据的表示和操作本篇将系统介绍:1.文件的使用(对文件的读、写等操作的相关能力)2.实例11:自动轨迹绘制(了解自动化的程序设计方法)3.一维数据的格式化和
2021-10-31 13:45:36
4540
25
原创 Python—— 组合数据类型(模块5: jieba库的使用)(实例:基本统计值计算&文本词频统计)
前言本篇主要介绍组合数据类型,以基本统计值计算为例,介绍函数使用和类型定义。以文本词频统计为例,介绍Jieba库的使用。(从本篇开始,出现的一些库中函数介绍以及部分简单代码都将以图片形式呈现)读完本篇,你将了解:1.方法论:Python三种主流组合数据类型的使用方法(建立集合、序列、字典模式)2.实践能力:学会编写处理一组数据的程序本篇将系统介绍:1.集合类型及操作2.序列类型及操作(包括元组类型、列表类型)3.实例:基本统计值计算4.字典类型及操作5.模块5: jieba库的使用
2021-10-23 23:38:17
2656
4
原创 Python——函数和代码复用(模块4:PyInstaller库的使用)(实例:七段数码管绘制&科赫雪花小包裹)
前言本篇主要介绍函数和代码复用,以七段数码管绘制为例,介绍函数的定义和使用。以科赫雪花小包裹为例,介绍PyInstaller库的使用。(从本篇开始,出现的一些库中函数介绍以及部分简单代码都将以图片形式呈现)读完本篇,你将了解:1.方法论Python基本代码抽象即函数的使用方法2.实践能力学会编写带有函数并复用代码的程序本篇将系统介绍:1.函数的定义与使用2.实例:七段数码管绘制3.代码复用与函数递归4.模块4:PyInstaller库的使用(将Python的源代码变成可执行文件,不用
2021-09-23 20:13:02
1834
7
原创 Python——程序结构控制(模块3: random库的使用)(实例:身体质量指数BMI及圆周率的计算)
前言本篇主要介绍程序结构控制,以BMI的计算为例,介绍循环结构的控制和使用。以圆周率的计算为例,介绍random库的使用。(从本篇开始,出现的一些库中函数介绍以及部分简单代码都将以图片形式呈现)读完本篇,你将了解:1.方法论Python程序的控制语法及结构2.实践能力学会编写带有条件判断及循环的程序本篇将系统介绍:1.程序的分支结构(单、二、多分支结构,条件判断及异常处理)2.实例:身体质量指数BMI3.程序的循环结构(遍历循环、无限循环;循环控制保留字及循环高级用法)4.模块3:
2021-09-12 15:37:13
1643
9
原创 Python——基本数据类型(模块2: time库的使用)(实例3:文本进度条)
系列文章目录前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.p
2021-09-08 17:16:07
2364
16
原创 python——基本图形绘制(实例2:Python蟒蛇绘制)(模块1:turtle库的使用)
前言本篇主要介绍Python基本图形绘制,以Python蟒蛇绘制为例,介绍turtle库的使用。并在最后对蟒蛇绘制的代码进行分析。读完本篇,你将了解:1.方法论Python语言及海龟绘图体系2.实践能力初步学会使用Python绘制简单图形本篇将系统介绍:1.实例2: Python蟒蛇绘制2.模块1: turtle库的使用3.turtle程序语法元素分析引入:Python的特点与优势-是C语言代码量的10%-强制可读性(缩进)-较少的底层语法元素-多种编程方式-支持中文字符
2021-08-07 16:24:07
11420
9
原创 Python——实例1:温度转换(Python基本语法元素及框架,代码实现)
前言Python第一弹!!!Python被称为最简单好上手的语言之一,基于其极强的关联性,对各种库的引用,和资源的关联,使其实现功能非常容易。一些底层逻辑不需过多过深的理解。本篇将通过一个实例——温度转换,通过十行代码的实现,使大家对Python有最初的大体印象,并对一些基础语法和函数有初步的了解。读完本篇,你将了解到:(1)程序的格式框架(代码高亮、缩进、注释使用)(2)命名与保留字(变量、命名及33个保留字)(3)数据类型(整数、字符串、列表)(4)语句与函数(赋值语句、分支语句、函数)
2021-08-01 21:08:04
44401
18
原创 C语言——排序(插入、交换、选择、归并、基数排序)
前言《数据结构最后一弹》——排序看完本篇,你将了解:①查找问题概述,二者的联系②插入排序(直接插入排序、折半插入排序、2–路插入排序、表插入排序、希尔排序)③交换排序(冒泡排序、快速排序)④选择排序(简单选择排序、堆排序)⑤归并排序⑥基数排序(多关键字排序介绍)一、查找问题概述1.基本概念(1)“排序”是基于数据逻辑结构T=(D,R)定义的一种重要的运算。(2)功能是将一个数据元素的任意序列,依据关键字的大小,重新排列成一个有序的序列。(3)D是数据元素集; R是数据元素之间关系
2021-07-13 16:55:03
2201
4
原创 C语言——查找(折半、分块、二叉排序、哈希法)
前言本篇主要介绍查找概念及各类查找方法。看完本篇,你将了解到:1.查找问题概述(查找表可进行的操作、时间开销、一些计算方法)2.顺序表的查找(存储方式、算法时间性能)3.折半查找(可递归可迭代)4.分块查找5.二叉排序树(查找、插入、创建、删除)6.平衡二叉排序树(平衡化方法:四种类型)7.哈希查找(哈希表、哈希函数、解决冲突的方法)一、查找问题概述1.查找问题(1)定义:①“查找”是基于数据逻辑结构(D,R)定义的一种十分常见的运算。②D:数据元素的一个集合R:数据元素关系的
2021-06-20 22:18:57
4402
4
原创 C语言——图(下)(图的连通性、有向无环图及其应用、最短路径)
前言本篇继续图的学习,看完本篇,你将了解到:(1)图的连通性,基于此将开展一系列相关问题。(介绍连通分量及最小生成树等概念)(2)有向无环图及其应用(将介绍重要的拓扑排序和关键路径)(3)最短路径(基于关键路径进行求解,介绍迪杰斯特拉算法和弗洛伊德算法)(划重点)关键路径和两大求解最短路径算法非常重要,是数据结构中图部分非常重要的部分,并依次解决众多后序算法问题。(图较多)一、图的连通性1.无向图的连通分量和生成树(1)连通分量由于该图是连通图,故从任意顶点出发,都能访问到所有其他的
2021-06-07 20:41:41
2549
15
原创 C语言——图(上)(图的定义及术语、存储结构及其遍历)
前言本篇进入图的学习,继前篇树之后,将学习比树更加复杂的结构。有向图无向图或者是否闭合,都有广泛的应用。关于图在一些实际应用中的例子,本篇会给几个例子。(插图较多)看完本篇,你将了解到:(1)什么是图?什么是网?图的常用术语有哪些?(2)图的相关操作(类比于树和线性表)(3)图的表示方法(同样也有数组和链表两种),本篇将新介绍一个邻接表(4)将重点讨论有向图和无向图的表示方法(5)重点!!!图的遍历(常听到的深度优先搜索DFS及广度优先搜索BFS)一、图的定义和术语在线性表中,数据元素为一
2021-05-19 16:33:35
3601
12
原创 C语言——数据结构之树与二叉树(下)(线索二叉树、树与二叉树的转换、哈夫曼树)
前言树的后半部分,将介绍线索二叉树,树和二叉树的转换及哈夫曼树。树的应用很多,内容主要集中在讲解算法思想,代码量有所减少,另外会附很多图以便讲解。ps:(一点废话),不咕咕了。这一篇比上篇会短小一点。一、线索二叉树1.引入部分(1)遍历二叉树是按某种规则将非线性结构的二叉树结点线性化(2)遍历二叉树可得到结点的一个线性序列,在线性序列中,就存在结点的前驱和后继,但是在二叉链表上只能找到结点的左孩子、右孩子(3)二叉树结点中没有相应前驱和后继的信息。现在的问题是:能否通过结点的两个链域查找出
2021-04-20 20:53:35
694
6
原创 C语言——数据结构之树与二叉树(上)(树的定义,二叉树的定义、存储结构与遍历)
前言ps:(一点废话)突然发现上一篇更新是3月31号,咕咕树的内容比较多,这里分成两次发,(下一次不知道是什么时候)从这里开始,就不再是单纯的线性结构了,在日常生活中,其实两个元素之间有时不仅仅是线性关系,往往有着更复杂的结构,树的应用更为广泛一、树的定义1.定义和术语(1)树(tree)(递归定义):是n(n>=0)个结点的有限集T当n=0时,T为空树当n>0时,①有且仅有一个称为T的根的结点②当n>1时,余下的结点分为m(m>0)个互不相交的有限集T1,T2,
2021-04-15 23:06:06
1056
21
原创 C语言——数据结构之广义表(概念及其存储结构)
前言本节我们来说说C语言中的广义表。主要介绍广义表的概念定义,并说明其存储结构,算法中将使用到递归思想。一、广义表的概念1.广义表的概念(1)广义表:也称列表,是n(n>=0)个元素的有限序列记作:LS=(a1,a2,…,an)ai(1<=i<=n)是数据元素或广义表其中:LS:广义表名 n:LS的长度通常,大写字母表示广义表的名称,小写字母表示数据元素(2)原子:当广义表LS的元素是一个数据元素时,称为原子(3)广义表的子表:当广义表LS的元素不是一个数据元素时,称
2021-03-31 15:33:01
5688
12
原创 C语言——一些特殊矩阵的处理(稀疏矩阵)
前言本篇给大家介绍一些特殊矩阵的存储。ps:比较短小。一、特殊矩阵的压缩存储1.n阶对称矩阵:aij=aji矩阵标号:a11,a12,…,ann首先明确:(1)保存矩阵的下三角或上三角部分即可(包括对角线)(2)这里选择保存下三角,下三角元素满足i>=j(3)需保存个数=n(n+1)/2 ,根据个数分配空间(4)假定以行序为主,顺序存储到SA[1…n(n+1)/2],aij保存到了SA[k]里,即可分析出ij的关系①当aij在下三角,i>=j前i-1行共有元素i(i-1)
2021-03-26 14:51:41
2818
10
原创 C语言中的队列(顺序队列与链式队列)——概念及其基本操作
前言太久没更新了,早就说要写结果拖到现在。闲话说完,正式开始内容。队列——顾名思义,其实在线性表中也是一种极其重要的结构。与栈不同的是,栈对元素的插入和删除均在一端进行,而队列,从队头删除,队尾插入,正如日常生活中的排队一样,还是比较形象的。本文将对队列的概念及操作函数进行简要介绍,并说明顺序队列(利用数组)和链式队列(利用链表)的一些基本算法。一、队列的相关概念1.队列及其操作 (先进先出)1.1 相关概念(1)队列:只允许在表的一端删除元素,在另一端插入元素的线性表(2)空队列:不含元
2021-03-21 22:46:23
10175
15
原创 栈——概念、基本操作及其应用
前言一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl._create_defau
2021-03-14 21:52:43
4232
原创 线性表的链式存储
前言紧承上篇顺序存储,这一篇来说说链式存储。链式存储在线性表中运用比较多。我们先来说说顺序存储的优缺点,以此引出单链表的定义。顺序存储结构的评价: 优点: (1)是一种随机存取结构,存取任何元素的时间是一个常数,速度快 (2)结构简单,逻辑上相邻的元素在物理上也是相邻的 (3)不需要使用指针,节省存储空间 缺点: (1)插入和删除元素要移动大量元素,消耗时间 (2)需要一块连续的空间 (3)插入元素可能发生
2021-03-07 21:56:36
612
原创 线性表定义及其顺序存储
前言继前面算法的引入后,大家对什么是算法及其复杂度有了一定了解。数据元素存储主要形式有顺序存储结构、链式存储结构 。本节将介绍线性表及线性表的顺序存储。因内容过多,链式存储将单独写在后一篇文章里。一、线性表概念及其抽象数据类型前一篇在介绍复杂度时,我们举出了多项式的例子,从多项式例子中可得一些启发。多项式表示问题的启示:1.同一个问题可以有不同的表示(存储)方法2.有一类共性问题:有序线性序列的组织和管理1.什么是线性表(1)线性表定义:由 同类型数据元素 构成 有序序列 的线性结构 (空格
2021-02-27 22:32:02
2007
5
原创 算法引入——定义及复杂度
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、什么是算法二、什么是好的算法1.多项式问题引入2. 如何衡量算法3.4个例子细说复杂度总结前言学习数据结构,算法是基础,本篇主要介绍算法及其复杂度,附例子及代码。一、什么是算法1.定义:算法:一个有限指令集接受一些输入(有些情况下不需要输入)产生至少一个输出一定在有限步骤之后终止每一条指令必须:(1)有充分明确的目标,不可以有歧义(2)在计算机能处理的范围之内(3)描述要抽象,不应该依赖于任何一种
2021-02-24 14:53:20
2291
11
计算机网络(知识点归纳整理)——秃头软件人期末周整理
2022-08-26
计算机组成原理(知识点合集打包整理)
2022-08-26
天天早八,救救孩子吧
2021-03-13
TA创建的收藏夹 TA关注的收藏夹
TA关注的人