声明!
通过学习 泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频,做出的文章,如涉及侵权马上删除文章,笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负.
文章为个人学习笔记。
1、编程语言
通用编程语言
- C语言: 一种通用的、面向过程的编程语言,广泛应用于系统软件和嵌入式开发。
- C++: 在C语言基础上发展而来,支持面向对象编程,常用于游戏开发、高性能计算等领域。window逆向
- Java: 一种广泛使用的面向对象编程语言,具有跨平台性,应用于企业级应用开发等。
- Python: 简洁易学,拥有丰富的库,适用于数据分析、人工智能、Web开发等。
- JavaScript: 主要用于网页前端开发,也可用于服务器端开发(Node.js)。
- C#: 由微软开发,主要用于Windows平台上的应用开发。
- Ruby: 一种简洁而富有表现力的编程语言,常用于Web开发。
- PHP: 主要用于Web开发,尤其适合服务器端脚本编程。
- Go: 一种高效、简洁的编程语言,适用于网络编程和云计算等领域。
- Swift: 苹果公司开发的编程语言,用于iOS和macOS应用开发。
- Kotlin: 可与Java互操作,主要用于Android开发。
函数式编程语言
- Haskell: 纯函数式编程语言,以强大的类型系统和数学上的严谨性著称。
- Lisp: 包括Common Lisp、Scheme等,历史悠久的编程语言家族,以其高度的灵活性和宏系统闻名。
- Clojure: 运行在Java虚拟机上的Lisp方言,结合了函数式编程和Java平台的优势。
数据科学和机器学习领域
- R: 在统计分析和数据可视化方面应用广泛。
- Julia: 设计用于高性能科学计算和数据分析。
Web全栈开发
- TypeScript: 是JavaScript的超集,增加了静态类型检查等特性,提高了大型项目的开发效率。
移动开发
- Objective-C: 曾经是iOS开发的主要语言,现在逐渐被Swift取代。
嵌入式系统开发
- Assembly Language(汇编语言): 不同的处理器架构有不同的汇编语言,用于对硬件进行底层控制。
其他
- Pascal: 曾经在教学和早期软件开发中有广泛应用。
- Delphi: 基于Object Pascal,用于快速应用开发。
- Scala: 融合了面向对象编程和函数式编程,运行在Java虚拟机上。
- Elixir: 基于Erlang虚拟机,具有高并发和容错性,适合构建分布式系统。
编程语言的局限性
- 编写web程序时,后端可以使用多种语言,如PHP、Go、Lua、Java等。
- 选择编程语言应根据个人需求和项目要求,考虑语言的适用性和开发效率。
- 例如,C/C++虽然功能强大,但开发复杂度高,而PHP、Python等语言则更简单快捷。
软件程序的类型
- Web程序: 通常包括后端和前端开发,后端可能使用Java,前端则使用JavaScript、PHP、CSS等技术。
二进制程序
- 渗透测试通常针对web程序,但二进制程序的应用大多数是逆向分析,这在渗透测试中涉猎不广泛。
- 逆向分析的专家可能对web开发不熟悉,因为它们关注的是不同的技术领域。
2、程序和操作系统的介绍
3、网络通讯
- 网络通讯是现代技术中不可或缺的一部分,无论是什么设备或系统,都需要通过网络进行通讯和联网。
4、硬件设备
计算机硬件
- 中央处理器(CPU): 负责执行指令和处理数据,是计算机的核心部件,其性能决定了计算机的运行速度。
- 内存: 用于存储正在运行的程序和数据,其容量和速度对计算机性能有显著影响。
- 硬盘: 用于长期存储数据,包括操作系统、应用程序和文件等,其容量和读写速度影响计算机性能。
- 显卡: 处理图形和图像数据,对游戏玩家和图形设计师尤为重要。
- 主板: 连接各种硬件设备,如CPU、内存、硬盘、显卡等,对计算机的稳定性和扩展性有重要影响。
网络硬件
- 网络服务器: 提供网络服务,如文件存储、电子邮件、Web服务等,具有高可靠性。
- 网络存储设备: 存储网络中的数据,如NAS和SAN,提供大容量和高可靠性的存储解决方案。
- 网络打印机: 通过网络连接被多台计算机共享,便于打印文件。
- 网络摄像头: 用于视频监控和远程会议,通过网络传输视频信号。
移动设备硬件
- 智能手机: 集成多种功能,如通信、拍照、娱乐、办公等,硬件包括处理器、内存、存储、屏幕、摄像头等。
- 平板电脑: 类似智能手机,但屏幕更大,适合阅读、浏览网页、观看视频等。
- 可穿戴设备: 如智能手表、智能手环等,监测用户健康和运动数据,与智能手机等设备连接和交互。
硬件发展趋势
- 小型化: 设备越来越小,便于携带和使用。
- 高性能: 性能不断提高,如CPU处理速度、内存和存储容量、显卡图形处理能力增强。
- 智能化: 设备越来越智能,能自动适应环境和用户需求。
- 互联互通: 设备间互联互通紧密,形成物联网,如智能家居和智能汽车的自动化控制和通信。
5、网络类型、安全
包括局域网(LAN)、城域网(MAN)和广域网(WAN)。此外,还涉及了网络协议、网络设备和网络安全的基本概念。
网络类型
- 局域网 (LAN): 覆盖范围较小,通常在一个建筑物或校园内,用于员工之间共享文件和打印机等资源。
- 城域网 (MAN): 覆盖范围较大,一般在一个城市内,如城市的有线电视网络和宽带网络。
- 广域网 (WAN): 覆盖范围非常大,可以跨越国家和地区,如互联网,连接全球的计算机和网络设备。
网络协议
- TCP/IP协议: 互联网的基础协议,TCP负责数据的可靠传输,IP负责数据的路由和寻址。
- HTTP协议: 用于Web浏览器和Web服务器之间传输超文本数据,如网页、图片、视频等。
- FTP协议: 用于在计算机之间传输文件。
- SMTP、POP3和IMAP协议: 用于电子邮件的发送和接收。
网络设备
- 路由器: 连接不同的网络,实现网络之间的数据转发,根据IP地址和路由表确定数据传输路径。
- 交换机: 在局域网中连接多台计算机,实现数据的快速交换,根据MAC地址转发数据帧。
- 网卡: 安装在计算机上,用于连接网络,将计算机数据转换为网络信号进行传输。
- 无线接入点 (AP): 提供无线网络连接,使无线设备能够接入局域网或广域网。
网络安全
- 防火墙: 保护网络免受外部攻击,根据预设规则过滤网络流量。
- 加密技术: 对数据进行加密,防止数据被窃取或篡改,如SSL/TLS协议用于Web浏览器和服务器间的加密通信。
- 身份认证: 确保只有授权用户能够访问网络资源,常见方式包括用户名和密码、数字证书、生物识别等。
软件程序
- 通讯协议包括TCP、IP、UDP等,用于不同网络层次的数据传输和通信。
6、人工智能
编程语言:Python
机器学习工作流程
数据收集
- 来源: 数据可以从数据库、文件、传感器、网络等多种渠道获取。
- 类型: 数据包括结构化数据(如表格数据)、半结构化数据(如XML、JSON格式的数据)和非结构化数据(如文本、图像、音频等)。
数据预处理
- 数据清洗: 去除噪声数据、处理缺失值、纠正错误数据等。例如,使用均值填充或中位数填充处理缺失值。
- 数据归一化: 将数据特征值缩放到特定范围,提高算法性能和稳定性。常见的方法有最小-最大归一化、Z-score标准化等。
- 特征提取: 从原始数据中提取有用特征,以便机器学习算法更好地处理和理解数据。例如,在图像识别中提取颜色、纹理、形状等特征。
模型选择与训练
- 根据任务类型和数据特点选择合适的机器学习算法。例如,分类问题可选择决策树、支持向量机等;回归问题可选择线性回归、随机森林等。
- 将预处理后的数据分为训练集和测试集,训练集用于训练模型,测试集用于评估模型性能。
- 使用训练集对模型进行训练,调整模型参数以最小化训练集上的损失函数。
模型评估与优化
- 使用测试集对训练好的模型进行评估,常用的评估指标包括准确率、精确率、召回率、F1值、均方误差等。
- 根据评估结果优化模型,可调整模型参数、更换算法、增加数据量等。例如,若模型准确率低,可增加训练数据量或调整超参数。
模型应用
- 将优化后的模型应用于实际问题,进行预测、分类、聚类等任务。
- 对模型应用结果进行监控和评估,不断改进模型以提高性能。
深度学习基本原理
神经网络基础
神经元模型
- 深度学习的基础是人工神经网络,灵感来源于生物神经系统。
- 神经网络中的基本单元是神经元,它接收多个输入信号,对这些信号进行加权求和,然后通过一个激活函数处理得到输出。
- 例如,典型的神经元接收来自其他神经元或输入层的数据,每个输入都有一个对应的权重。假设输入为 ( x ),对应的权重为 ( w ),则神经元的加权输入总和为 ( \sum x_i w_i ),其中 ( b ) 是偏置项。然后,通过激活函数 ( f ) 得到神经元的输出。
多层神经网络
- 深度学习中的神经网络通常由多个层次组成,包括输入层、隐藏层和输出层。
- 输入层接收原始数据,隐藏层对数据进行多层次的特征提取和变换,输出层产生最终的预测结果。
- 例如,在图像识别任务中,输入层接收图像的像素值,隐藏层逐步提取图像的边缘、纹理、形状等特征,最后输出层给出图像所属的类别。
1564

被折叠的 条评论
为什么被折叠?



