自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

nepu_bin的博客

有时候,总觉得自己的梦想很大,终点很远,像是异想天开,但其实也没有那么遥远,就这样一步一步的走,走着走着就到了。

  • 博客(115)
  • 资源 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 Linux下使用telnet访问web服务器

1.打开 telnet 服务同时按下 win徽标 + R ,输入 control 打开控制面板。(或者直接在win左下方的搜索框内搜素 控制面板 也可)点击 程序打开 启用或关闭 Windows 功能勾选上 Telnet 客户端确定之后等待一段时间。2.打开命令行窗口这里使用 Ubuntu所发行的Linux 系统。打开命令行后输入 telnet www.baidu.com 80再输入请求内容:GET /index.html HTTP/1.1Host: www.baidu.co

2021-10-02 21:17:23 1471 5

原创 Linux中Epoll函数简单使用

多路IO Multiplex IO多路IO的作用:1、阻塞 I/O 只能阻塞一个 I/O 操作,而 I/O 复用模型能够阻塞多个 I/O 操作,所以才叫做多路复用2、采用epoll模型时创建了一个共享的内存空间,操作系统采用事件通知的方式,使一个进程能同时等待多个文件描述符3、这样就可以同时监听多个网络连接 IO, 相对于多进程、多线程切换的开销问题,IO 多路复用可以极大的提升系统效率。谈到多路IO,Linux下最常用的也就是三种IO模型: Select、Poll、Epoll,简单介绍一下epo

2021-08-25 18:44:55 347 1

原创 C++11实现高效内存池

【源码剖析】MemoryPool —— 简单高效的内存池 allocator 实现什么是内存池?什么是 C++ 的 allocator?内存池简单说,是为了减少频繁使用 malloc/free new/delete 等系统调用而造成的性能损耗而设计的。当我们的程序需要频繁地申请和释放内存时,频繁地使用内存管理的系统调用可能会造成性能的瓶颈,嗯,是可能,毕竟操作系统的设计也不是盖的(麻麻说把话说太满会被打脸的(⊙v⊙))。内存池的思想是申请较大的一块内存(不够时继续申请),之后把内存管理放在应用层执行,减

2021-05-03 11:23:22 3045 24

原创 2020.12.14--2021.2.28 总结:寒假在家,我都做了什么

放飞自我 12.14~12.20去年因为疫情,学校提前了半个月就开学了,因此寒假也相应提前了将近半个月,基本上是最早放假的一批学校了。望着这将近80天的寒假,我不知道如何该做些什么,怎样去做;考前由于过度紧张,考完一放假时整个心都放飞了,哪还有什么学习的动机。。。顺着这股劲,于是在回家的路上停留于武汉一个老友家中,趁机也白嫖了欢乐谷、海洋公园、湖北省博物馆、光谷步行街… …游戏时光 12.20~12.28这段日子很无聊,过早的放假时间让我倍感孤独(朋友们都没回来),当时每天也去看过一些计算机的资讯,做

2021-02-28 22:32:53 370

原创 C++中set/unordered_set 自定义比较规则

setset外部比较器set内部比较器unordered_setunordered_set外部比较器unordered_set内部比较器代码以Heroes 类为例进行演示如何自定义set/unordered_set内外部比较器 ,类Heroes定义如下:class Heroes {public: Heroes(string _name, int _age) :name(_name), age(_age) {}private: string name;//私有变量 name .

2021-02-23 21:57:34 5940 7

原创 高质量程序设计指南C++ C 代码规范

高质量程序设计指南C++ C 代码规范

2022-02-21 17:21:10 620

原创 2021.9 ~ 2021.12,致逐渐远去的大三上学期... ...

大三上,我的面试经历,最终进入到大厂实习岗。

2022-01-02 16:00:16 577 2

原创 给一个链表,按照指定的索引进行“翻转“操作。

Problem给定一个链表,如 1->2->3->4->5->6,指定k = 4(表示第4个节点),则翻转后的效果为 5->6->4->1->2->3。Solution根据示例,题意其实就很简单了,以第k个节点(称为‘界限节点’)为界限分为两段,前一段换到界限节点后面,后一段换到界限节点的前面。Codes核心算法部分:Node* reverse(Node* head, int k) { if (head == nullptr || k

2021-12-03 00:14:59 510

原创 力扣第 266 场周赛总结

5918. 统计字符串中的元音子字符串子字符串 是字符串中的一个连续(非空)的字符序列。元音子字符串 是 仅 由元音(‘a’、‘e’、‘i’、‘o’ 和 ‘u’)组成的一个子字符串,且必须包含 全部五种 元音。给你一个字符串 word ,统计并返回 word 中 元音子字符串的数目 。示例 1:输入:word = "aeiouu"输出:2解释:下面列出 word 中的元音子字符串(斜体加粗部分):- "aeiouu"- "aeiouu"示例 2:输入:word = "unicorn

2021-11-07 13:27:58 188

原创 LeetCode268.丢失的数字

268. 丢失的数字给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。示例 1:输入:nums = [3,0,1]输出:2解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。2 是丢失的数字,因为它没有出现在 nums 中。示例 2:输入:nums = [0,1]输出:2解释:n = 2,因为有 2 个数字,所以所有的数字都在范围 [0,2] 内。2 是丢失的数字,因为它没有出现在 nums 中

2021-11-06 12:17:25 215

原创 力扣第 265 场周赛总结

5914. 值相等的最小索引给你一个下标从 0 开始的整数数组 nums ,返回 nums 中满足 i mod 10 == nums[i] 的最小下标 i ;如果不存在这样的下标,返回 -1 。x mod y 表示 x 除以 y 的 余数 。示例 1:输入:nums = [0,1,2]输出:0解释:i=0: 0 mod 10 = 0 == nums[0].i=1: 1 mod 10 = 1 == nums[1].i=2: 2 mod 10 = 2 == nums[2].所有下标都满足

2021-10-31 11:33:25 180 1

原创 力扣第 264 场周赛总结

5906. 句子中的有效单词数句子仅由小写字母(‘a’ 到 ‘z’)、数字(‘0’ 到 ‘9’)、连字符(’-’)、标点符号(’!’、’.’ 和 ‘,’)以及空格(’ ')组成。每个句子可以根据空格分解成 一个或者多个 token ,这些 token 之间由一个或者多个空格 ’ ’ 分隔。如果一个 token 同时满足下述条件,则认为这个 token 是一个有效单词:仅由小写字母、连字符和/或标点(不含数字)。至多一个 连字符 ‘-’ 。如果存在,连字符两侧应当都存在小写字母(“a-b” 是一个有效

2021-10-24 12:06:53 176

原创 1024节日快乐!乌啦啦啦啦啦(/≧▽≦)/~┴┴

1024节日快乐!乌啦啦啦啦啦(/≧▽≦)/~┴┴

2021-10-24 00:01:35 133

原创 力扣第 263 场周赛总结

5902. 检查句子中的数字是否递增句子是由若干 token 组成的一个列表,token 间用 单个 空格分隔,句子没有前导或尾随空格。每个 token 要么是一个由数字 0-9 组成的不含前导零的 正整数 ,要么是一个由小写英文字母组成的 单词 。示例,“a puppy has 2 eyes 4 legs” 是一个由 7 个 token 组成的句子:“2” 和 “4” 是数字,其他像 “puppy” 这样的 tokens 属于单词。给你一个表示句子的字符串 s ,你需要检查 s 中的 全部 数字是否

2021-10-17 18:02:16 217 2

原创 力扣第 262 场周赛总结

5894. 至少在两个数组中出现的值给你三个整数数组 nums1、nums2 和 nums3 ,请你构造并返回一个 不同 数组,且由 至少 在 两个 数组中出现的所有值组成。数组中的元素可以按 任意 顺序排列。示例 1:输入:nums1 = [1,1,3,2], nums2 = [2,3], nums3 = [3]输出:[3,2]解释:至少在两个数组中出现的所有值为:- 3 ,在全部三个数组中都出现过。- 2 ,在数组 nums1 和 nums2 中出现过。示例 2:输入:nums1

2021-10-10 15:49:36 263

原创 力扣第 261 场周赛总结

5890. 转换字符串的最少操作次数给你一个字符串 s ,由 n 个字符组成,每个字符不是 'X' 就是 'O' 。一次 操作 定义为从 s 中选出 三个连续字符 并将选中的每个字符都转换为 'O' 。注意,如果字符已经是 'O' ,只需要保持 不变 。返回将 s 中所有字符均转换为 'O' 需要执行的 最少 操作次数。 示例 1:输入:s = "XXX"输出:1解释:XXX -> OOO一次操作,选中全部 3 个字符,并将它们转换为 'O' 。示例 2:输入:s =

2021-10-03 18:55:50 187

原创 力扣第 260 场周赛总结

周赛入口:「字节跳动 & 力扣」联合主办 第 260 场周赛2016. 增量元素之间的最大差值给你一个下标从 0 开始的整数数组 nums ,该数组的大小为 n ,请你计算 nums[j] - nums[i] 能求得的 最大差值 ,其中 0 <= i < j < n 且 nums[i] < nums[j] 。返回 最大差值 。如果不存在满足要求的 i 和 j ,返回 -1 。示例 1:输入:nums = [7,1,5,4]输出:4解释:最大差值出现在 i =

2021-09-28 21:23:40 201

原创 汇编语言:实验十五 安装新的 int 9 中断例程

实验十五 安装新的 int 9 中断例程安装一个新的int 9中断例程,功能:在 DOS 下,按下 “A” 键后,除非不再松开,如果松开,就显示满屏幕的”A“,其他的键照常处理。提示,按下一个键时产生的扫描码称为通码,松开一个键产生的扫描码称为断码。断码 = 通码 + 80h。求解过程(1)改变屏幕显示的内容改变从 B800H 开始的 4000 个字节中的所有偶地址单元中的内容(设置成字符A),当前屏幕显示的内容即发生改变。程序如下:(2)其他键照常处理可以调用原 int 9 中断处理程序,

2021-09-27 20:17:06 770 1

原创 30天自制操作系统:第十五天 多任务(1)

1 挑战任务切换(harib12a)多任务(multitask),顾名思义就是“多个任务”的意思。稍稍思考一下我们就会发现,多任务这个东西还真是奇妙,它究竟是怎样做到让多个程序同时运行的呢?如果我们的电脑里面装了好多个CPU的话,同时运行多个程序倒也顺理成章,但实际上就算我们只有一个CPU,照样可以实现多任务。其实说穿了,这些程序根本没有同时在运行,只不过看上去好像是在同时运行一样:程序A运行一会儿,接下来程序B运行一会儿,再接下来轮到程序C,然后再回到程序A… …如此反复,在OS上有个专业点的名词为:

2021-09-26 23:26:20 316

原创 30天自制操作系统:第十四天 高分辨率及键盘输入

1 继续测试性能(harib11a ~ harib11c)这一小节作者测试了昨天优化过的程序。2 提高分辨率(1)(harib11d)在 asmhead.nas 中改变分辨率。为什么使用 0x4101 ?make run 运行:3 提高分辨率(2)(harib11e)这一小节主要在判断真机显卡是否可以使用VBE。make run运行:4 键盘输入(1)(harib11f)这里是为了将键盘的输入显示到显示框内这里核心部分也就在于HariMain函数中,看原书对代码的解释

2021-09-25 16:42:43 225

原创 30天自制操作系统:第十三天 定时器(2)

1 简化字符串显示(harib10a)这一小节是做了一个函数将之前多次重复使用的代码放在了一起,对函数内部进行了简化。2 重新调整FIFO缓冲区(1)(harib10b)这一小节把定时器用的多个FIFO缓冲区都集中成1个了。3 测试性能(harib10c~harib10f)这里对程序进行了一定的测试,测试的方法为:先对HariMain略加修改,恢复变量count,然后完全不显示计数,全力执行"count++;"语句,当到了10秒后超时的时候,再显示这个count值。后续的程序按照作者

2021-09-24 16:18:56 164

原创 30天自制操作系统:第十二天 定时器(1)

1 使用定时器(harib09a)定时器(Timer)对于操作系统非常重要。它在原理上很简单,只是每隔一段时间(比如0.01秒)就发送一个中断信号给CPU。辛亏有了定时器,CPU才不用辛苦的去计量时间。注:英文的Timer在汉语有“定时器” 或 “时钟” 等多种译法,这里将Timer称作“定时器”,Clock称作“时钟周期” 或 “周期”如果没有定时器,假如CPU看不到定时器而仍想计量时间的话,就只能牢记每一条指令的执行时间了。比如,往寄存器写入常数的MOV指令是1个时钟周期(Clock);加法计算的

2021-09-23 22:00:51 1005 1

原创 30天自制操作系统:第十一天 制作窗口

1 鼠标显示问题(harib08a)第一小节解决了鼠标的一点细节问题:可以向右或向下移动到画面之外隐藏起来。当前不能这么做的原因:代码很简单,当鼠标移出屏幕时会被修改成 binfo->scrnx - 16,也就是屏幕边缘。这里先做一个简单的修改:make run运行一下:↑出现图层问题2 实现画面外的支持(harib08b)怎样才能让图层位于画面以外时也不出问题呢?因为只有 sheet_refershsub函数在做把图层内容写入VRAM的工作,所以需要对该函数进行优化。对比图

2021-09-22 14:38:01 282

原创 汇编语言:实验十三 编写、应用中断例程

第Ⅰ部分1.编写并安装int 7ch中断例程,功能为显示一个用0结束的字符串,中断例程安装在 0:200处。参数:(dh)= 行号,(dl)= 列号,(cl)= 颜色,ds:si指向字符串首地址。Solution第一部分实验与汇编语言:实验十二 编写0号中断的处理程序类似,这里就贴上代码吧:assume cs:code, ds:datacode segmentstart: jmp install mov dh, 10 mov dl, 10 mov cl, 2 mov ax, dat

2021-09-21 21:28:41 3015 1

原创 30天自制操作系统:第十天 叠加处理

1 内存管理(续)(harib07a)***memman_alloc***和***memman_free*函数能够以1字节为单位进行内存管理,这种方式虽然不错,但是有一点不足:在反复进行内存分配和内存释放之后,内存中就会出现很多不连续的小段未使用空间,这样就会把man->frees(该属性指示了空闲空间块的总个数)消耗殆尽。因此,作者编写了一些总是以0x1000字节为单位进行内存分配和释放的函数,它们会把指定的内存大小按0x1000字节(4KB)为单位向上舍入,选择0x1000这个数值非常精妙,我

2021-09-21 15:55:00 209

原创 30天自制操作系统:第九天 内存管理

1 整理源文件(harib06a)这里仅仅是对文件进行了一些整理,查看下图即可。2 内存容量检查(1)(harib06b)内存管理在操作系统中是一大块,既是重点也是难点,所以作者也花了较大的篇幅进行介绍。要进行内存管理,首先要做的事情就是搞清楚内存究竟有多大,范围是到哪里。如果连这一点都搞不清楚的话,内存管理就无从谈起。在最初启动时,BIOS肯定要检查内存容量,所以我们只要问一问BIOS,就能知道内存容量有多大,但问题是,如果那样做的话,一方面asmhead.nas会变长,另一方面,BIOS版本

2021-09-20 15:13:47 641

原创 30天自制操作系统:第八天 鼠标控制与32位模式切换

1 鼠标解读(1)(harib05a)现在已经从鼠标取得数据了,现在的问题是要解读这些数据,观察鼠标的移动动作,让鼠标指针相应地移动起来。看一下对bootpack.c中HariMain函数的一些修改。程序要做的事情很简单,首先把最初读到的0xfa舍弃掉(改变mouse_phase变量进入下一个阶段),之后,每次从鼠标那里送过来的数据应该都是3个字节一组的,所以每当数据累积到3个字节,就把它显示到屏幕上。变量mouse_phase用来记住接收鼠标数据的工作进展到了什么阶段(phase),接收到的数据放

2021-09-19 15:47:13 206

原创 30天自制操作系统:第七天 FIFO与鼠标控制

1 获取按键编码(hiarib04a)小节的内容实现让程序按下一个键后不结束,而是把所按键的编码在画面上显示出来。代码 “io_out8(PIC0_OCW2, 0x61);” 用来通知PIC“已经知道发生了IRQ1中断哦”,如果是IRQ3,则写成0x63。也就是说,将“0x60 + IRQ号码”输出给OCW2就可以。执行这句话之后,PIC继续时刻监视IRQ1中断是否发生。反过来,如果忘记了执行这句话,PIC就不再监视IRQ1中断,不管下次键盘输入什么信息,系统都感知不到了。接下来需要注意,从编号为

2021-09-18 16:26:25 204

原创 30天自制操作系统:第六天 分割编译与中断处理

1 分割源文件(harib03a)有过编程经验的小伙伴知道:如果很多程序代码都放在一个程序中,对于它的阅读、管理都是较麻烦的,所以这里开始介绍将源文件 bootpack.c 文件分割成几部分。优点按照处理内容进行分类,将来修改时更容易找到地方。Makefile文件写得好,只需要编译修改过的文件,可以提高make的速度。单个源文件都不长,多个小文件比一个大文件好处理。缺点源文件数量增加分类不当修改时不容易找到地方分割后的源文件:对应源文件修改后还需要整理Makefile:2

2021-09-17 23:09:43 239 3

原创 30天自制操作系统:第五天 结构体、文字显示与 GDT/IDT初始化

今天的内容相比前几天多了很多,主要是一些东西用代码写出来更难理解,需要更多的时间去琢磨,因此对于一些较为基础的内容不会进行详细的描述。1.接收启动信息(harib02a)之前的程序大都是直接使用0xa0000、320、200等数值,而这些值应该从asmhead.nas程序先前保存下来的值中取,如果不这样做,当画面模式改变时,系统就不能正确运行。这里使用指针来取得这些值。binfo是bootinfo的缩写,scrn是screen(画面)的缩写。这里的0x0ff4之类的数据是从哪里来的呢,其实这些地

2021-09-16 23:36:39 415

原创 30天自制操作系统:第四天 C语言与画面显示的练习

1.用C语言实现内存写入(harib01a)章节开始展示了一个用于写入内存的汇编函数: _write_mem8对于注释: [ESP + 4]存放的是地址解释:函数调用的时候参数的压栈顺序是从右到左的,因此有如下结构:初始情况假设栈底位置为0x1008,(SS不重要,这里只是做出了标注,并没有给出数值),那么SP寄存器的值应该是栈的最高地址 + 1,0x1008 + 1 = 0x1009,如图栈压入一个参数,如果有汇编基础这块应该好理解,没有也没关系,这里给出压栈CPU执行的指令:

2021-09-15 20:01:10 1071 2

原创 30天自制操作系统:第三天 进入32位模式并导入C语言

今天的内容稍稍有点多,一起看看吧1.制作真正的IPL到昨天为止,讲到的启动区虽然也称为IPL(Initial Program Loader,启动程序装载器),但它实质上并没有装载任何程序。小节中作者给出了将之前的 hello-os 改名为 "纸娃娃操作系统" 的深意:用纸糊起来的,笔者将其理解为目前还有太多功能没有实现,只能是一个看起来像操作系统的东西。从简单的程序开始,磁盘最初的512字节是启动区,所以要装载下一个512字节的内容。看第一段程序 harib00a: JC指令jump if ca

2021-09-14 20:27:00 787 3

原创 汇编语言:实验十二 编写0号中断的处理程序

实验内容编写0号中断处理程序,使得在除法溢出发生时,在屏幕中间显示字符串"divide error!",然后返回到DOS。解题这一章都在介绍中断,包括中断的产生、中断处理程序、中断向量表、中断过程、相关指令。解决本次实验的前提是将本章的内容理解好,那么在完成这部分(原书第12章-内中断)之后,开始实验吧~分析整个中断过程(1)当发生除法溢出的时候,产生0号中断信息,从而引发中断。CPU会完成以下工作:取得中断类型码 0标志寄存器入栈,TF、IF 设置为 0CS、IP入栈(IP) =

2021-09-13 21:38:04 3673

原创 30天自制操作系统:第二天 汇编语言学习与Makefile入门

1.介绍文本编辑器本小节内容只是编者介绍了一个免费的文本编辑器,因为是日语的缘故,译者向我们推荐了一个可编辑中文的文本编辑器: Notepad++,笔者也正用这个编辑器,放上下载链接:>>>> Download Notepad++ >>>>↑Notepad++使用界面2.继续开发节选了projects/02_day中的helloos3中的部分内容,原文档中注释用的是日文,所以这里截取了书中的代码片段:因为是从零开始做一个操作系统,作者对代

2021-09-13 13:35:57 577

原创 30天自制操作系统:第一天 从计算机结构到汇编程序入门

序终于开启了学习自制操作系统的道路,虽然对于笔者来说是一个无比巨大的挑战,但是为了能够打开操作系统这个黑盒子,做一个操作系统应该是最好的方式,讲道理做一个OS应该是很多程序员、工程师的梦想吧,毕竟OS是我们天天都在用的东西,自己能够完全从0开始做一个应该会有不一般地体验。本系列文章用于记录笔者在阅读书籍并着手开发过程中遇到的各种问题。1. 先动手操作刚开始就面临了不小地挑战,虽然是简简单单地按照书本上的图片输入相应的内容,不过还真是 Easier said than done,说起来简单做起来难,

2021-09-12 16:27:45 619 1

原创 汇编语言:实验十 编写子程序

实验10 编写子程序这次实验需要编写三个子程序,通过它们来认识几个常见的问题和掌握解决这些问题的方法。1.显示字符串问题子程序描述提示Solution跟之前的文章的风格相似,都是用王爽老师原书中的描述,在完成第一个程序之前,需要稍微了解一下显存相关的内容:汇编语言:实验九 根据材料编程zaiA...

2021-09-11 19:27:40 1411

原创 汇编语言:实验九 根据材料编程

王爽老师的汇编语言实验九主要是对循环的使用。实验九 根据材料编程给朋友们放上原题的描述哈:*注:以上图片均来源于 《汇编语言》 – 王爽 P175 - 177Solution在此实验之前,原书第九章对各种转移指令进行了解析。刚看到这道题时还是有点压力的,放眼望去整整两篇描述,比起一般的算法题,这个篇幅确实有点吓人了,别慌,逐步分析之后本题难度也不是很高(指完成本题,笔者学识浅薄,可能没能领悟编者的深意)。首先书中介绍了 80 x 25 彩色字符模式的显示缓冲区。一块缓冲区大致就是这么个

2021-09-08 21:19:47 1235

原创 汇编语言:实验七 寻址方式在结构化数据访问中的应用

话不多说,上图(原题为王爽老师的汇编语言P161):Solution如果用现在的高级语言来完成本题可以说是小菜一碟,但如果是只能使用几个简单的寄存器的和一些基础得不行的汇编语言,笔者作为初学者,认为这个还是有难度的。如何解决此问题?乍一看这些数据真的是让人眼花缭乱,题中给出的格式更是令本人摸不着头脑,但在一步一步地分析之后,有着一定的高级语言编程基础,便有了这样的感觉:题中给出的数据段(data segment)分为三大块:首先是字节型数据,每个元素占 1 个字节,与C语言中的字符类型ch

2021-09-07 21:58:29 942

原创 LeetCode组合系列问题:组合 组合总和ⅠⅡ

77. 组合给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按 任何顺序 返回答案。示例 1:输入:n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]示例 2:输入:n = 1, k = 1输出:[[1]]# 提示1 <= n <= 201 <= k <= n求解组合问题不考虑一组数据的顺序,也就是说,一组数据是不是相

2021-09-04 20:08:24 530

原创 2021.2.28 -- 2021.8.28 最后的大二时光

写下本篇博客, 谨以记录笔者最后的这一点大二时光.大二的最后一个学期这算是正式接触计算机一年的日子了, 还记得2020.3.14日转入到计算机学院当时的窘境:对于计算机没有任何的了解,只知道毕业了就成为了大家常说的程序员. 这一路走过来很艰难,但好在自己一直坚持着....

2021-08-28 22:14:26 1902 9

masmDosbox.zip

MASM编译器以及Dosbox虚拟环境,用于完成汇编程序的编译、链接、运行。

2021-09-24

oneNote2016.zip

oneNote2016,非常的好用,用过的朋友都说牛逼。

2021-09-24

算法分析与设计实验报告.zip

《算法分析与设计》课程中所有的实验报告,包括:N皇后问题,全排列问题,最少硬币问题,防卫导弹问题...等

2021-06-16

C&&C++.docx

2020.12.28 ~ 2021.2.28寒假期间学习笔记,主要内容为 C语言习题 以及 C++(主要为C++11)知识点

2021-04-17

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

TA关注的人

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