自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

潜行者的博客

一代小白,正在上路1

  • 博客(24)
  • 收藏
  • 关注

原创 设计一个简单的单周期CPU

设计一个简单的单周期 CPU 1.1 设计单周期 CPU 时的总体思路 设计输入是指令系统规范,设计输出是一个数字逻辑电路,这个数字逻辑电路能够实现指令系统规范所定义的各项功能。 1.1.1 指令系统规范 指令系统规范是指令系统的规范文件,规范性文档是很严谨的,包含大量的细节,一般没有废话,因此建议:反复多看几遍,把正文、注解中的每个字、每个上下标、每个符号都看到。 1.1.2 CPU一般性设计方法 从宏观来看,设计一个CPU就是设计它的数据通路+控制逻辑 基本方法:对指令系统中定义的指令进行功能的分

2020-08-27 16:53:39 5432

转载 回归和聚类

回归和聚类 概要:线性回归,欠拟合与过拟合,岭回归,分类算法:逻辑回归,模型保存与加载,无监督学习–K-means算法 线性回归 回归问题: 目标值 - 连续型的数据 1 线性回归的原理 1.1 线性回归应用场景 房价预测 销售额度预测 金融:贷款额度预测、利用线性回归以及系数分析因子 1.2 什么是线性回归 线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式。 特点:只有一个自变量的情况称为单变量回归,大于一

2021-03-04 23:14:48 1854 1

原创 机器学习之基础分类算法总结

分类算法 目标值:类别 1、sklearn转换器和预估器 2、KNN算法 3、模型选择与调优 4、朴素贝叶斯算法 5、决策树 6、随机森林 3.1 sklearn转换器和估计器 转换器(estimator) 估计器(estimator) 3.1.1 转换器 - 特征工程的父类 1 实例化 (实例化的是一个转换器类(Transformer)) 2 调用fit_transform(对于文档建立分类词频矩阵,不能同时调用) 标准化: (x - mean) / std fit_transform() fit()

2021-02-28 18:08:38 542 1

转载 python中‘ ‘.join()的使用

概述:     将序列中的元素以指定的字符连接生成一个新的字符串。 语法: ‘delimiter’.join(seq)     delimiter:分隔符。可以为空     delimiter:要连接的元素序列、字符串、元组、字典 返回通过指定字符连接序列中元素后生成的新字符串。 a=“abcd” “,”.join(a) ‘a,b,c,d’ “|”.join([‘a’,‘b’,‘c’])

2021-02-25 11:08:04 398

原创 java学习篇之面向对象与项目实战

1、基础认知 类是抽象的概念,是对象的模板 对象是具体的事物,是类的具体实例 new关键字是创建实例对象最重要的标志 类名要求: 要有直白意义,最好是英文 首字母大写 不要书字开头,不要有特殊字符 对象名要求: 要有直白意义,最好是英文 首字母小写 不要书字开头,不要有特殊字符 成员变量 成员变量解释隶属于对象的变量 用于保存对象的静态特征 同类型的不同对象拥有相同的成员变量,但值相互独立 public class Dog { String name; int age;

2021-02-20 02:49:11 894 2

原创 java学习篇之变量常量运算符

1、基本格式 src是源代码目录 public class Shan { //定义名为Shan的类 public static void main(String[] args) { //固定格式 System.out.println("Hello World!!!"); //输出格式 } } 使用psvm可以快捷输出 public static void main(String[] args) { } 使用sout可以快捷输出 System.out.printl

2021-02-19 21:46:12 284

转载 支持向量机原理之线性SVM与非线性SVM

一、什么是SVM? SVM的英文全称是Support Vector Machines,我们叫它支持向量机。支持向量机是我们用于分类的一种算法。让我们以一个小故事的形式,开启我们的SVM之旅吧。 在很久以前的情人节,一位大侠要去救他的爱人,但天空中的魔鬼和他玩了一个游戏。 魔鬼在桌子上似乎有规律放了两种颜色的球,说:“你用一根棍分开它们?要求:尽量在放更多球之后,仍然适用。” 于是大侠这样放,干的不错? 然后魔鬼,又在桌上放了更多的球,似乎有一个球站错了阵营。显然,大侠需要对棍做出调整。 SVM就是试图

2021-01-30 11:29:00 9485 1

原创 数学中的argmin与argmax

arg 是变元(即自变量argument)的英文缩写。 arg min 就是使后面这个式子达到最小值时的变量的取值 arg max 就是使后面这个式子达到最大值时的变量的取值 例如 函数F(x,y): arg min F(x,y)就是指当F(x,y)取得最小值时,变量x,y的取值 arg max F(x,y)就是指当F(x,y)取得最大值时,变量x,y的取值 ...

2020-12-06 13:14:59 1700

原创 初识机器学习-监督学习与无监督学习

初识机器学习     机器学习主要分为:监督学习,无监督学习,半监督学习等。 监督学习(supervised learning)     从给定的训练数据集中训练出一个函数,当新的数据到来时,就可根据这个函数预测出结果。     监督学习的训练集要求包括输入输出(特征和目标)。训练集中的目标是由人标注的。 监督学习就是最常见的分类问题:     通

2020-09-05 15:35:19 1081

原创 初识Linux-总结

Linux查缺补漏 存储 动态分配 用多少占多少,可以有最大限制 进程是资源分配的最小单位, 线程是程序运行的最小单位 分区 磁盘需要有索引index(相当于笔记本的目录),存储分区信息 #格式化 划分出几个扇区,把索引建好,把分区建好 U盘中文件不能超过4G mount -help df -h 目录 #查看目录挂载的分区,h代表人性化显示 sda,b,c 代表磁盘1,2,3 挂载磁盘 #创建一个新磁盘 创建一个新磁盘后,会有一定的空间被预分配,有助于加速磁盘 ls /dev/sd

2020-09-04 10:15:02 190

原创 Linux下程序后台运行及前后台切换

    网上的方法有很多,这里主要列举我最喜欢的两种。     假如我们有程序server.cpp,通过编译后产生可执行文件server,我们要使server在linux服务器后台执行。当客户端关机后重新登入服务器后继续查看本来在终端输出的运行结果。(假设操作都在当前目录下) 方法1. 在终端输入命令: ./server > server.file 2>&1 & 解释:将server直接放在后台运

2020-09-03 20:59:08 638

原创 CentOS7查看并开放端口号命令(防火墙)

查看端口号极其进程信息 netstat -tlnp //查看全部进程 netstat -tlnp|grep 80 //查看80端口占用情况 手工终止进程的运行 kill 5014 kill -9 5014 //强制终止 查看已开放的端口 firewall-cmd --list-ports 开放6666号端口(开放后需要要重启防火墙才生效) firewall-cmd --zone=public --add-port=6666/tcp --permanent 命令含义:

2020-09-03 20:57:01 466

原创 使用nc命令检查远程端口是否打开

使用 nc 命令检查远程端口是否打开     首先,我们要知道,端口是与 Linux 操作系统上的应用或进程的通讯端点的逻辑实体。在使用之前,了解目标机器上哪些端口是打开并正在运行是很有用的。     我们可以使用 netstat或其他的 Linux 命令如 NMAP在本地机器上轻松地列出 Linux 中的打开端口     在本文中,我们将向你展示如何使用简单的 netcat(简称 nc)

2020-09-03 20:54:58 4365

原创 流水线CPU设计

流水线CPU设计(不考虑相关冲突) 所谓流起水来,就是理想情况下,流水线每一级都有指令且每个时钟周期都能处理完一条指令。 2.1 添加流水级间缓存 电路流水线化的主要初衷是为了缩短时序器件之间组合逻辑关键路径的时延,在不降低电路处理吞吐率的情况下提升电路的时钟频率。 2.1.1 流水线的划分 单发射五级流水划分:取值(IF),译码(ID),执行(EXE)、访存(MEM)、写回(WB) 取指阶段的主要功能是将指令取回, 译码阶段的主要功能是解析指令生成控制信号并读取通用寄存器堆生成源操作数, 执行阶段的主

2020-08-27 19:59:42 3611 1

原创 数字逻辑电路设计

数字逻辑电路设计基本技能 1.1 面向硬件电路的设计思维方式 核心:“数据通路(Datapath)+控制逻辑(Control Logic)” 数据通路一个突出特点是:如果实现了它,它就一直在那里,不会消失;如果没有实现它,它就一直不存在,不会突然凭空出现 1.2 行为描述的Verilog 编程风格 使用 Verilog描述电路有两种编程风格,一种叫行为描述,一种叫电路描述。 行为描述侧重于对模块行为功能进行描述 电路描述则是直接对电路的逻辑进行具体描述 1.3 自顶向下的设计划分过程 建议采取“自顶向下、

2020-08-26 11:02:11 2475

原创 Centos7编译安装最新Linux内核

CentOS 7下源码编译安装新版本内核 1、下载最新稳定版本的内核源码包到 /usr/local/src ,并解压到当前目录 wget https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.7.7.tar.xz 2、解压内核源码包 tar -xf linux-5.7.7.tar.xz 3、从 /boot 目录将现有版本的内核编译config配置文件拷过来到放到新的内核源码解压目录内并重命名为.config的隐藏文件 [root@

2020-08-26 10:41:47 2171

原创 Centos7安装和手动启动Mysql及问题解决(附带安装GCC-8.3.0)

MySQL 1、下载mysql8.0.16源码包和cmake源码包 cd /usr/local/src wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.20.tar.gz wget https://cmake.org/files/v3.12/cmake-3.12.0-rc1.tar.gz yum install -y gcc gcc-c++ make automake cmake ncurses ncurses-devel

2020-08-26 10:41:14 2445

原创 在Centos7下搭建Hadoop伪分布式并掌握HDFS的基本用法

一.配置环境变量 由于centos自带open-jdk,我们可以查看一下自己java路径,一般在/usr/lib/jvm中查看: 我们选择1.8版本的,配置我们的的vi /etc/profile文件,添加如下内容: #set java enviroment export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161.2.b14.el7.x86_64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAV

2020-08-26 10:40:44 472

原创 源码编译nginx及问题解决

一.安装步骤及问题: 在root权限下下载nginx源码包到家目录下(建议不要在普通权限下下载,会有一堆很麻烦的问题) wget http://nginx.org/download/nginx-1.19.0.tar.gz 1.进行解压 tar -zxvf nginx-1.19.0.tar.gz 2.在该目录下进行检查依赖库 yum install gcc yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y

2020-08-26 10:39:29 257

原创 源码编译apache-httpd及问题解决

安装步骤: 1.先进入/usr/local/中创建三个文件夹 apr apr-util apache cd /usr/local目录 mkdir apr mkdir apr-util mkdir apache 2.在usr中新建文件夹,命一个自己喜欢的名字,我用的Apache。 3.在文件夹中下载apr-1.6.5 ,apr-util-1.6.1 ,httpd-2.4.37源码包 wget http://archive.apache.org/dist/apr/apr-1.6.5.tar.gz

2020-08-26 10:36:31 359

原创 Socket编程-套接字

一.套接字概念        Socket本身有“插座”的意思,在Linux环境下,用于表示进程间网络通信的特殊文件类型。本质为内核借助缓冲区形成的伪文件。        在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程。“IP地址+端口号”就对应一个socket。欲建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的socket pair就唯一标识一个连接。因此可.

2020-08-26 10:34:31 256

原创 TCP/ IP网络传输协议

TCP协议 TCP通信时序 下图是一次TCP通讯的时序图。TCP连接建立断开。包含大家熟知的三次握手和四次握手。 在这个例子中,首先客户端主动发起连接、发送请求,然后服务器端响应请求,然后客户端主动关闭连接。两条竖线表示通讯的两端,从上到下表示时间的先后顺序,因为,数据从一端传到网络的另一端也需要时间,所以图中的箭头都是斜的。 建立连接(三次握手)的过程: 1.客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的段1。 2.服务器端回应客户端,是三次握手中的第2个报文段,同时带ACK标

2020-08-26 10:30:43 681

原创 协议初接触

首先,我们来看看,什么是协议 从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。 假设,A、B双方欲传输文件。规定: 第一次,传输文件名,接收方接收到文件名,应答OK给传输方; 第二次,发送文件的尺寸,接收方接收到该数据再次应答一个OK; 第三次,传输文件内容。同样,接收方接收数据完成后应答OK表示文件内容接收成功。 由此,无论A、B之间传递何种文件,都是通过三次数据传输来完成。A、B之间形成了一个最简单的数据传输规则。双方都按此规则发送、接收数据。A、B之间达成的这个相

2020-08-26 10:28:00 220

原创 c++连接mysql(API)

以读取数据为例: 第一步,要将你的C++程序与Mysql连接起来,这里要用到函数mysql_real_connect() 第二步,执行查询语句,这里要用到函数mysql_query() 第三步,查询语句查询到的结果,称为结果集,第三步就是要将结果集中的所有数据,存放在一个变量A中,类型为MYSQL_RES 注意:这个变量中存放的数据,是以“行”和“列”为结构的,也就是一整个表。 例如: 身份证号 姓名 性别 余额 1111 Mike 男 50 2222 John 男 30 第四步 虽然所有数据都存

2020-08-26 10:23:45 806

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除