- 博客(56)
- 收藏
- 关注
原创 计算机组成原理第二章复习笔记《数据的表示》
本文摘要:数据表示涉及进制转换、定点数和浮点数编码。重点掌握进制转换方法(如除基取余法)和不同码制(原码、补码、反码、移码)的转换技巧,特别是补码的减法运算。浮点数部分要求理解IEEE754规格化规则。文章还详细说明了负数在不同码制(原码、反码、补码)下的算术移位规则,强调移位时符号位的处理方式,确保数值表示的正确性。这些内容是计算机数据表示与处理的基础知识点。
2025-07-29 13:55:31
188
原创 揭开DRAM的神秘面纱
DRAM(动态随机存取存储器)是现代计算机系统的核心组件,通过电容和晶体管组合存储数据,具有高密度和低成本优势。其工作原理依赖电荷存储,需定期刷新维持数据,采用地址复用和层级架构(Bank、Rank、Channel)提升效率。关键技术包括刷新机制、预取技术和错误校正,而性能优化涉及延迟降低、带宽提升和功耗控制。发展趋势包括DDR5的高带宽低功耗、HBM的3D堆叠,以及LPDDR/GDDR等专业化方向。尽管面临新型存储技术挑战,DRAM凭借成熟优势仍将在未来计算体系中保持核心地位,持续推动存储技术创新。
2025-07-26 18:31:32
1102
原创 Cache高速缓存复习
读操作未直接命中的情况总结下面是详细的地址映射 快速查找 替换策略等地址映射 :直接映射 全相连映射 组相联映射例子:硬件逻辑实现:具体实例:数据未命中 需要载入数据:数据命中实例关于第二种全相联映射多路并发的比较方式(硬件实现)数据未命中 需载入:数据命中特点:组相连映射硬件逻辑实现数据命中总结三者关于替换算法:关于写入策略
2025-07-24 12:12:51
229
原创 无符号乘法运算的硬件逻辑实现 ————取自《湖科大教书匠》
本文介绍了一种使用FFmpeg批量提取哔哩哔哩视频截图的方法。通过PowerShell脚本实现自动化处理,配置参数包括视频目录、输出路径、截图间隔(默认30秒/帧)、分辨率(1920x1080)和格式(PNG)。脚本采用视频-子目录映射机制,自动创建目录并执行FFmpeg命令。具体步骤包括:1)使用浏览器插件下载B站视频;2)运行配置好的PowerShell脚本;3)FFmpeg自动处理生成截图文件。该方法适用于教学视频整理复习,文中展示了完整的操作流程和效果截图。
2025-07-18 16:50:39
429
原创 图解LeetCode:79递归实现单词搜索
摘要: 本文详细解析了LeetCode 79题"单词搜索"的解题过程。通过回溯算法在二维网格中查找给定单词,从(0,0)位置开始逐步匹配字符。核心步骤包括:边界检查、字符匹配、标记访问、四个方向的递归搜索以及回溯恢复。以示例网格和"ABCCED"单词为例,展示了从A(0,0)→B(0,1)→C(0,2)→C(1,2)→E(2,2)→D(2,1)的完整搜索路径,最终返回true。算法时间复杂度为O(MN*3^L),其中MN为网格大小,L为单词长度。
2025-07-10 23:03:39
633
原创 图解 BFS 路径搜索:LeetCode1971
本文通过图解和代码实例,详细解析了BFS算法在图论中的两种应用场景:判断无向图节点连通性(validPath)和收集两节点间所有路径(allPaths)。文章首先介绍了邻接表的构建方法,然后分别拆解了两种算法的执行流程,通过具体输入展示了BFS的运作机制。最后对比了两种应用的核心差异,指出validPath采用节点驱动的BFS和访问标记,而allPaths需用路径驱动的BFS并防止环路。文章强调邻接表的双向处理和无向图特性是算法正确性的关键,为理解BFS在图论中的灵活应用提供了清晰指导。
2025-07-10 11:12:05
768
原创 LeetCode 算法题解:链表与二叉树相关问题 打打卡
通过对这些链表和二叉树相关的算法题的讲解,我们可以看到递归、双指针、深度优先搜索、层序遍历等算法思想在解决问题中的重要性。在实际编程中,我们需要根据问题的特点选择合适的算法思想和数据结构,以提高算法的效率和性能。希望这些题解能够帮助大家更好地理解和掌握算法知识。
2025-07-06 16:57:45
970
原创 计算机组成原理《浮点数的存储》
浮点数 = 符号位(S) + 阶码(E) + 尾数(M)▶ 符号位(S):1位,正负▶ 阶码(E):表示缩放倍数(类似指数)▶ 尾数(M):表示有效数字(小数点后的精度)1.3 实例解析(8位简易浮点数)假设: + + ,二进制数:| 阶码位数 | 偏移量 K | 实际指数范围 | |----------|----------|--------------| |8(单精度) | 127 | -126 ~ +127 | | 11(双精度)| 1023| -1022 ~ +1023|| 实际指数
2025-07-05 21:59:28
1179
原创 用队列实现生产者-消费者模型 —— 详解与代码讲解
循环队列是一种高效利用数组空间的队列实现方式。10// 存储产品的数组int front;// 队头指针,指向下一个要被消费的元素int rear;// 队尾指针,指向下一个要被生产的位置int count;// 当前队列元素个数} Queue;本文详细介绍了如何用循环队列实现生产者-消费者模型,涵盖了队列的定义、操作函数、生产者与消费者实现、主函数交互流程以及完整代码和运行方法。通过本例,你可以深入理解队列数据结构的实际应用,以及生产者-消费者问题的基本思想。
2025-06-16 21:22:33
987
原创 数据结构《图》
addEdge函数通过修改邻接矩阵来表示顶点之间的边。对于无向图,需要同时设置和。通过多次调用addEdge,可以逐步构建出完整的图结构。
2025-02-19 21:21:37
1422
原创 Python:爬虫基础《爬取红楼梦》
函数用于从网页源代码中提取所有小说章节的名称。这个函数接收一个 BeautifulSoup 对象作为参数,返回一个包含所有章节名称的列表。函数用于从网页源代码中提取所有章节的URL链接。source: BeautifulSoup 对象,包含解析后的网页内容domain: 网站的域名,用于构建完整的URL函数是整个爬虫项目的核心函数,负责下载和保存小说内容。
2024-12-31 23:31:12
1976
原创 高阶:基于Python paddleocr库 提取pdf 文档高亮显示的内容
【代码】高阶:基于Python paddleocr库 提取pdf 文档高亮显示的内容。
2024-12-21 19:16:32
1749
原创 Python :冬至快乐
运行这段代码,你应该能看到一个黑色的窗口,可以正常关闭。首先创建一个新的 Python 文件,命名为。让我详细解释一些关键部分的实现原理和细节。
2024-12-21 13:09:54
1633
原创 Python:动态粒子爱心
这段代码使用了pygame库来创建一个动态的图形窗口,绘制一个心形图案,并在其中显示闪烁的文本。初始化和设置心形曲线的计算粒子类的定义生成粒子文本设置主循环# 颜色定义PURPLE = (128, 0, 128) # 紫色的RGB值定义颜色:使用 RGB 颜色模式定义了白色、黑色和紫色。self.x = xself.y = y粒子类:定义了一个Particle类,表示一个粒子。初始化方法:设置粒子的初始位置、大小、颜色、角度、速度和生命周期。移动方法。
2024-12-19 19:44:40
2130
2
原创 微积分精华:关于导数求导法则
导数是什么? 推导过程 导数告诉我们了一个函数在任意一点的斜率(瞬时速率) 求导法则总结 幂规则 乘积原则 商原则 链式法则 导数与积分的关系表示
2024-12-10 15:34:31
319
原创 Oracle数据库体系结构基础
Oracle的体系结构是从某一角度来分析数据库的组成和工作过程,以及如何管理数据库和组织数据。对于初学者而言,在学习本章的过程中,会涉及大量的新概念和术语,希望读者深入理解这些概念和术语,为后面章节的学习打好基础
2024-09-29 13:56:32
1527
原创 C语言实现简单凯撒密码算法
传统密码技术 【实验目的】通过本次实训内容,学习常见的传统密码技术,通过编程实现简单代替密码中的移位密码算法,加深对传统密码技术的了解,为深入学习密码学奠定基础。
2024-09-24 10:18:26
3486
原创 计算机组成原理==初识二进制运算
计算机算术是计算机组成原理中的一个重要部分,它涉及在计算机硬件中执行基本数学运算的方法和技术。计算机算术不仅包括简单的加减乘除运算,还包括更复杂的操作如浮点运算、位运算等。
2024-09-23 22:20:54
1775
4
原创 操作系统----锁
自旋锁是一种简单的同步机制,特别适用于锁持有时间非常短的情况。通过原子操作实现自旋锁可以有效地保护共享资源,并确保多线程环境下的数据一致性。在实际应用中,应根据锁的使用频率和持有时间来决定是否使用自旋锁。性能:在锁持有时间很短的情况下性能很好,因为避免了上下文切换。可伸缩性:在高并发环境下可能消耗大量 CPU 资源。易用性:使用简单,但需要注意避免长时间持有锁。公平性:通常是非公平的。鲁棒性:不适合长时间持有的锁,否则会导致 CPU 资源浪费。
2024-08-27 19:58:18
1522
原创 GitHub经典贪吃蛇思路解析
贪吃蛇是一款经典的控制台游戏,玩家需要操控一条蛇去吃掉随机出现在屏幕上的食物来增长蛇的长度,并避免蛇头撞到墙壁或自己的身体。本游戏使用 C++ 编写,利用 Windows API 实现了控制台窗口内的动态游戏界面。
2024-08-23 23:14:31
874
原创 飞越天际:Python与面向对象思维的完美邂逅
使用 定时器 添加敌机==》因为每隔一个时间间隔出现敌机设计 Enemy 类使用定时器添加敌机定义 定时器常量 —— eventid在 初始化方法 中,调用 set_timer 方法 设置定时器事件在 游戏循环 中,监听定时器事件定义事件在 plane_sprites.py 的顶部定义 事件常量# 敌机的定时器事件常量 CREATE_ENEMY_EVENT = pygame . USEREVENT在 PlaneGame 的 初始化方法 中 创建用户事件。
2024-08-08 17:46:32
802
原创 C++:vector容器
std::vector`是C++标准库中的一个序列容器,它代表了能够动态改变大小的数组。与普通数组一样,向量使用连续的存储位置来存放其元素,这使得可以通过指针偏移直接且高效地访问元素,就像操作数组一样。然而,与数组不同的是,向量的大小可以动态变化,其存储管理由容器自动处理。在内部,向量使用动态分配的数组来存储元素。为了适应增长,这个数组可能需要重新分配空间,这意味着创建一个新的数组并将所有元素移动到新位置。由于重新分配涉及大量的计算资源,向量并不会在每次插入新元素时都重新分配内存。相反,
2024-08-06 21:21:30
1008
原创 SpringBoot:JWT+Interceptor 实现基本的登录验证
Result类:Mapper:Service:Controler:测试一下是否成功:login接口:all接口:JSON Web Tokens (JWT) 和拦截器实现登录验证的详细步骤:. 用户登录- 用户提交用户名和密码到服务器。- 服务器验证用户凭证。- 如果验证成功,服务器生成一个 JWT 并将其返回给客户端。引入jwt依赖项:这里使用的是版本低一些的创建JwtUtil类:测试一波:生成token:将生成的token复制准备验证: 经过验证可以使用去usercontrolle
2024-07-25 14:38:45
1284
原创 C++基石:掌握高效编程的艺术
this指针是一个指向当前对象的指针,其类型为const限定的类类型指针。例如,如果类名为MyClass,则this指针的类型为。这意味着this指针可以被用来访问对象的成员变量和成员函数,但它自身不能被修改。C++模板是实现代码重用和泛型编程的强大工具。通过模板,你可以编写一次代码,就能处理多种数据类型,这极大地提高了代码的可维护性和效率。然而,模板的使用也应当谨慎,过度使用或不当使用可能会导致代码难以理解和调试。new。
2024-07-05 18:02:00
908
3
原创 JAVA极简图书管理系统,初识springboot后端项目
目录下的是项目的启动类,它继承了Spring Boot的,并使用注解开启自动配置和扫描。Controller目录下有多个控制器类,如和,它们使用Spring MVC的或注解,处理来自客户端的HTTP请求,并返回相应的响应。Domain目录下有领域模型类,如User.java和,它们代表了应用中的实体对象。Exception目录下有异常处理类,如,可能是用于封装错误信息和响应状态的类。Mapper目录下有MyBatis的相关接口,如,它们定义了数据库操作的接口。Service目录下有服务层实现,如。
2024-07-02 21:15:52
607
3
原创 “深入解析操作系统核心:进程管理与并发艺术“
通过上述分析,我们可以看到,公式CPU利用率 = 1 - P^n是从概率论的角度出发,考虑了所有n个进程同时处于I/O等待状态的概率,并据此反推出CPU实际被利用的概率,即利用率。这个公式体现了多道程序设计中通过增加并发进程数量来降低所有进程同时等待I/O概率,从而提升CPU使用效率的核心思想。
2024-06-29 01:12:44
1077
6
原创 概率论与数理统计期末复习
事件A和B的并集,记作A∪B,包含所有至少属于A或B(或两者都属于)的样本点。概率运算:事件A或B至少有一个发生的概率,记作P(A∪B),可以通过以下公式计算:这里减去P(A∩B)是为了避免A和B共同部分被重复计算。
2024-06-21 12:29:22
6347
4
原创 C/C++ 初级球球大作战练手
:如果相机的位置在 y 轴上大于游戏世界的高度减去屏幕高度,则将相机的位置设置为游戏世界的底部边界。`:如果相机的位置在 x 轴上大于游戏世界的宽度减去屏幕宽度,则将相机的位置设置为游戏世界的右侧边界。`:如果相机的位置在 y 轴上小于 0,则将相机的位置设置为 0。: 如果 ‘上’ 箭头键被按下,并且玩家不在屏幕底部,玩家的 y 坐标会减去速度值,这样玩家就会在游戏世界中向上移动。: 如果 ‘上’ 箭头键被按下,并且玩家不在屏幕底部,玩家的 y 坐标会减去速度值,这样玩家就会在游戏世界中向上移动。
2024-05-08 18:21:28
1765
2
原创 贪吃蛇项目实战解析
贪吃蛇项目实战目录:游戏背景游戏效果演示学习目标定位技术要点贪吃蛇游戏设计与分析贪吃蛇游戏数据结构设计相关Win32API介绍参考代码正文开始贪吃蛇是久负盛名的游戏,它也和俄罗斯方块,扫雷等游戏位列经典游戏的行列。在编程语言的教学中,我们以贪吃蛇为例,从设计到代码实现来提升学生的编程能力和逻辑能力。2. 游戏效果演示第30讲-项目实践-贪吃蛇目录:游戏背景游戏效果演示目标定位技术要点贪吃蛇游戏设计与分析贪吃蛇游戏数据结构设计相关Win32API介绍。
2024-04-19 13:28:08
1283
1
原创 数组索引哈希表(Array Indexed Hash Table)
###是一种特殊的数学函数,接受任意长度的输入(通常是字符串或者其他类型的数据),通过一定的算法将其转化为固定长度的输出,这个输出的值通常被称为哈希值(Hash Value) ,散列值或者消息摘要。在用户注册系统中,不直接存储用户的密码原文,而是存储密码经过哈希运算后的值。当用户登录时,系统会对用户输入的密码做同样的哈希运算,然后与数据库中存储的哈希值进行比对。在一些安全敏感的应用中(如密码存储),哈希函数不仅需要速度快,还需要具备足够的随机性和不可预测性,以抵抗碰撞攻击和预计算攻击。
2024-04-17 17:40:02
1750
1
原创 主流排序简单集合
当然,人们都喜欢向阳而生的少年/少女,尤其是久处黑夜的行路人,对于那爽朗的性格,明亮的笑容总是不由自主的喜欢与偏向。就是当你已经选择了这条不被理解的道路,你是否有勇气走下去,有勇气坚定的走下去,是否做好了孤注一掷(虽说有些夸张,对于我等凡夫俗子),做好了接受失败的必然结局!好多年后,走了也算多的路(虽然到现在也只是个迷途的旅客),见了很多的人,自然亦是失去了太多,不知竟也变得离经叛道起来。我想人是感性的,不是坏事,也是难得,理性倒也十分需要,但是感性足以使得我们面对糟粕的世界本身。今年元夜时,月与灯依旧。
2024-04-09 23:29:16
1071
2
【半导体存储器技术】动态随机存取存储器(DRAM)的工作原理与读写操作流程:存储元扩展及预充电控制机制详解
2025-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅