<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[USTB_XU的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/USTB_XU</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; USTB_XU]]></copyright><item><title><![CDATA[二分查找篇]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/141349580</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/141349580</guid><author>USTB_XU</author><pubDate>Tue, 20 Aug 2024 15:00:49 +0800</pubDate><description><![CDATA[力扣题单 34给你一个按照非递减顺序排列的整数数组 nums，和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target，返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。]]></description><category></category></item><item><title><![CDATA[链表（类封装）C++]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/139129229</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/139129229</guid><author>USTB_XU</author><pubDate>Wed, 22 May 2024 20:47:49 +0800</pubDate><description><![CDATA[【代码】链表（类封装）C++]]></description><category></category></item><item><title><![CDATA[链表实现（类封装-学生类可以稍加拓展成学生管理系统）]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/139104318</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/139104318</guid><author>USTB_XU</author><pubDate>Wed, 22 May 2024 20:13:27 +0800</pubDate><description><![CDATA[【代码】链表实现（类封装）]]></description><category></category></item><item><title><![CDATA[计算机系统结构教程 第三章 流水线技术]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/136969679</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/136969679</guid><author>USTB_XU</author><pubDate>Thu, 04 Apr 2024 16:50:12 +0800</pubDate><description><![CDATA[举一个简单的例子来说，就是有些计算机只有一个存储器（不是哈弗结构），假设前面有一条指令正在访存，比如load指令，而后面的指令开始执行需要从存储器里面取出，这时候就不得不暂停流水线了。就是后面的指令没有用到前面指令的结果。（3）控制冲突：流水线遇到分支指令或者其他会改变PC值的指令所引起的冲突。（2）数据冲突：后面的指令需要用到前面指令的执行结果而发生的冲突。--多功能流水线的各段可以进行不同的连接，实现不同的功能。后面的指令用到了前面的指令产生的结果。--反相关：指令J写的名与指令I读的名是一样的。]]></description><category></category></item><item><title><![CDATA[计算机系统结构教程 第二章 指令系统]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/137200063</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/137200063</guid><author>USTB_XU</author><pubDate>Sun, 31 Mar 2024 15:21:12 +0800</pubDate><description><![CDATA[寄存器-寄存器结构（RR）：也叫做load-store结构，只有load和store才能访存。减少操作码的平均位数，但是获得的编码是变长的，不规整，不利于硬件处理。把越来越多的功能交由硬件来实现，并且指令的数量也越来越多。-寄存器-存储器结构（RM）：操作数可以来自存储器。两个相比之下，CISC的指令条数可能更少，但是其CPI会多一点。不仅指令的条数少，而且指令的功能也比较简单。2、RISC（精简指令集计算机）：尽可能的简化指令集。1、指令由两部分组成：操作码和地址码。，以达到提高性能的目的。]]></description><category></category></item><item><title><![CDATA[编译原理 第一章 绪论]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/137142481</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/137142481</guid><author>USTB_XU</author><pubDate>Fri, 29 Mar 2024 13:53:41 +0800</pubDate><description><![CDATA[词法分析的主要任务就是从左到右扫描源程序的字符，识别出各个单词，确定单词的类型。将识别出的单词转换成统一的机内表示-----词法单元形式。语法分析就是从词法分析器输出的token序列中识别出各类短语，并构造语法分析树。（1）三地址码（类似于汇编语言的指令序列构成，每条指令最多有三个操作数）编译就是把高级语言翻译成汇编语言或者机器语言的过程。目标代码生成器以源代码的中间表示形式作为输入，并把它映射到目标语言。2、编译器在语言处理系统中的位置。六、中间代码生成及编译器后端概述。（2）语法结构树/语法树。]]></description><category></category></item><item><title><![CDATA[计算机系统结构教程 第一章 概述]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/137125730</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/137125730</guid><author>USTB_XU</author><pubDate>Thu, 28 Mar 2024 22:40:45 +0800</pubDate><description><![CDATA[（1）翻译：先把N+1级程序全部转换成N级程序之后，再去执行新产生的N级程序，在执行过程中N+1级程序不再被访问。（2）解释：每当一条N+1级指令被译码之后，就去执行一串等效的N级指令，然后再去取N+1级指令，依次重复进行。（其中CPI是一条指令执行的时钟周期数，而IC是指令条数）（1）计算机组成:计算机系统结构的逻辑实现，包括各个部件的联系以及各个部件的功能。CPI=执行程序所需要的时钟周期数/IC （IC是所执行的指令条数）（1）程序员所看到的计算机属性（概念性结构与功能特性）。二、计算机系统的设计。]]></description><category></category></item><item><title><![CDATA[软件工程导论（第六版）第5章 总体设计]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/136948758</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/136948758</guid><author>USTB_XU</author><pubDate>Fri, 22 Mar 2024 19:19:41 +0800</pubDate><description><![CDATA[从全局的角度上看，花费较少的成本，从较抽象的层次上分析对比多种可能的系统实现方案和软件结构，从中选出最佳方案和最合理的软件结构，从而用较低的成本开发出较高质量的软件系统。模块化就是把程序划分成独立命名并且可以独立访问的模块，每个模块完成一个子功能，把这些模块集成起来构成一个整体，可以完成指定的功能满足用户的需求。但是不能忽略的是，模块之间的接口也在不断地变多，接口的成本也在增长。具体的设计步骤在课本93页，其中前三条描述的是系统设计阶段，后面的描述的是结构设计阶段和过程设计阶段。（可选方案从哪里来？]]></description><category></category></item><item><title><![CDATA[计算机网络（第八版-谢希仁编著）第四章-网络层]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/135366002</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/135366002</guid><author>USTB_XU</author><pubDate>Wed, 03 Jan 2024 15:56:40 +0800</pubDate><description><![CDATA[硬件类型0001表示以太网，协议类型0800表示IP数据报，后面的硬件地址长度6表示数据链路层的MAC地址是6个字节，协议地址长度4表示IP地址是4个字节（32位），操作表示是ARP请求还是ARP应答。因为目的MAC地址是0（但是需要注意的是这个0是位于IP数据报内部的，整个MAC帧的首部地址应该是全1，因为广播），指出了目的主机的IP地址是192.168.10.15。（1）版本+首部长度：8位，一般来说是45H ，4表示ipv4，5表示5行，由于是4字节对其（一行4字节），所以首部长度20字节。]]></description><category></category></item><item><title><![CDATA[计算机网络（第八版-谢希仁编著）第二章-物理层]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/135344082</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/135344082</guid><author>USTB_XU</author><pubDate>Tue, 02 Jan 2024 16:28:44 +0800</pubDate><description><![CDATA[（4）差分曼彻斯特：位周期中心一定有跳变，位周期开始的时候有跳变表示1，没有跳变表示0.5、码元：在使用时间域的波形表示数字信号的时候，代表不同离散值的基本波形就是码元。（1）单向通信/单工通信：只能有一个方向的交互，没有回应。（3）曼彻斯特：位周期中心有跳变，向下跳变表示1，向上跳变表示0.（2）、（3）都需要两条信道，而（1）只需要一条信道即可。1、导向传输媒体（双绞线、同轴电缆、光缆等等）（1）不归零制：正电平表示1，负电平表示0.2、信号：数据的、电气的或电磁的表现。1、数据：运送消息的实体。]]></description><category></category></item><item><title><![CDATA[计算机网络（第八版-谢希仁编著）第三章-数据链路层]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/135343868</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/135343868</guid><author>USTB_XU</author><pubDate>Tue, 02 Jan 2024 16:25:52 +0800</pubDate><description><![CDATA[第二点就是FCS是帧检验序列，也就是冗余码（计算得到的余数）。举一个简单的例子，假设数据M，除数P（n位），那么在M后面添加n-1个0再用来除以P就行了，取出余数添加到M后面就是需要发送的新数据，这里的余数便是帧检验序列。集线器工作在物理层，而网桥和交换机工作在数据链路层，网桥和交换机会检查帧再转发，而集线器不会，会广播发送，这也就是为什么其拓展以太网的时候会降低吞吐量的原因。（4）适配器的作用：接收帧和发送帧，并且协议也是其实现的，第二章中数据链路=链路+协议，这个协议就是适配器（网卡）实现的。]]></description><category></category></item><item><title><![CDATA[汇编语言与接口技术（第四版）第四章课后习题答案-清华大学出版社]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/135111249</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/135111249</guid><author>USTB_XU</author><pubDate>Sun, 31 Dec 2023 20:35:24 +0800</pubDate><description><![CDATA[65535就是2^16-1,所以就是  1111-1111-1111-1111H.0100-0101H    相与结果：0000-0001H,也就是01H。0110-0111H    相或结果：0110-0111H,也就是67H。异或表示不同为1，而1234H：0001-0010-0011-0100H。所以HIGH 5678H-->0101-0110H(高字节是56H)所以LOW 1234H-->0011-0100H(低字节是34H)0000-0000-0100-1000H:最终结果 0048H。]]></description><category></category></item><item><title><![CDATA[计算机网络 （第八版-谢希仁编著） 第一章-概述]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/135319286</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/135319286</guid><author>USTB_XU</author><pubDate>Sun, 31 Dec 2023 20:33:44 +0800</pubDate><description><![CDATA[以大写字母开头的Internet是一个专用名词，它指的是当前全球最大的、开放的、由众多网络互联而成的特定计算机网络，它采用TCP/IP作为协议族，其前身是美国的APRANET。在下图中，前面的100MB，这里的MB是2^20*8字节，而后面的速率单位Mb指的是10^6bit。这两个有本质的区别。指的是发送方发送时间开始，一直到收到接收方回送过来的确认为止，总共经历的时间。速率的单位是b/s，kb/s等等，这里的b是指bit。（3）传输时延（发送时延）：发送数据的时候，所有数据从节点发送到传输媒体的时间。]]></description><category></category></item><item><title><![CDATA[计算机操作系统（第四版） 第六章-文件管理]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134495504</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134495504</guid><author>USTB_XU</author><pubDate>Sun, 19 Nov 2023 21:00:00 +0800</pubDate><description><![CDATA[√在存取文件时，对于记录式文件，是以逻辑记录为单位提出存取要求的，因此，存储介质上的物理块长度与逻辑记录的长度是否匹配直接影响到对文件的寻址。若一个用户想共享另一用户的文件，只需在自己的目录文件中增加一个目录项，填上自己起的文件名和该共享文件的唯一ID即可。相较于连续结构，优点很明显，就是提高了磁盘空间利用率，还有就是不存在外部碎片，有利于文件的动态扩充、文件内容的插入和删除。文件的“按名存取“是通过查目录实现的，系统按照文件的路径名检索，基本的目录检索技术主要有：线性检索法和hash方法。]]></description><category></category></item><item><title><![CDATA[计算机操作系统（第四版）第五章-进程管理与内存实例]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134490877</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134490877</guid><author>USTB_XU</author><pubDate>Sun, 19 Nov 2023 15:07:01 +0800</pubDate><description><![CDATA[核心不是与用户进程平行运行的孤立的进程的集合，而是每个用户进程的一部分。实现方式包括：命令行方式（要求用户记忆命令格式），图形用户接口方式（用户可以利用鼠标对屏幕上的图标进行操作，完成与操作系统的交互，从而减少记忆内容，方便用户使用）·通过有关寄存器来传递参数：这些寄存器应该是用户程序和系统程序都能访问的，但是由于寄存器的长度和个数是有限的，所以无法传递较多的数据。系统调用本身也是若干指令构成的过程（函数），但是与一般过程不同的是，系统调用运行在核心态，但是一般过程运行在用户态。所以只能自带有限的参数。]]></description><category></category></item><item><title><![CDATA[计算机操作系统（第四版）第四章-内存管理]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134471395</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134471395</guid><author>USTB_XU</author><pubDate>Fri, 17 Nov 2023 21:51:58 +0800</pubDate><description><![CDATA[一 存储器的层次结构1 存储器的设计目标设计目标可以归结成三个问题：容量、速度和成本。容量：需求无止境。速度：能匹配处理器的速度。（CPU的速度肯定是比内存快的，不然为什么要引入cache。成本：成本和其他部件相比应该在合适的范围之内。三个问题之间相互制约，不可能同时达到最优：存取速度越快，每一个位的bit就越高。追求大容量就要降低存取速度。追求速度就要降低容量。二 内存管理的目的1 有效利用空间帕金森：“内存有多大，程序就有多大”2 考虑管理的开销：时间和空间。]]></description><category></category></item><item><title><![CDATA[计算机操作系统（第四版）第三章 -进程调度]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134449973</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134449973</guid><author>USTB_XU</author><pubDate>Thu, 16 Nov 2023 20:19:52 +0800</pubDate><description><![CDATA[（1）静态优先级：在进程创建的时候就确定了，并且在进程运行的期间保持不变。操作系统会对每个进程进行预先估计，这个估计可以基于先前观察到的进程，依据他们的特性比如优先级历史运行时间等等来做一个判断。（2）CPU的利用率高：确保CPU尽可能地繁忙，后面的时间片轮转算法可能就需要频繁切换进程上下文，浪费CPU时间。（1）如果时间片太大了，响应时间就很长，大到一个进程足够完成其全部运行的工作的时候，就退化成了FCFS模式。（3）当一个优先级高的进程到来，可以抢占CPU，被抢占的进程回来原来优先级队列的队尾。]]></description><category></category></item><item><title><![CDATA[信号量的实现（忙等待+阻塞）]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134419934</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134419934</guid><author>USTB_XU</author><pubDate>Wed, 15 Nov 2023 14:44:29 +0800</pubDate><description><![CDATA[就是要把等待的进程放入等待队列，而不是一直检测，联系忙等待定义理解即可，这里仅列出PV操作。]]></description><category></category></item><item><title><![CDATA[忙等待实现互斥方案]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134418522</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134418522</guid><author>USTB_XU</author><pubDate>Wed, 15 Nov 2023 13:54:53 +0800</pubDate><description><![CDATA[【代码】忙等待实现互斥方案。]]></description><category></category></item><item><title><![CDATA[计算机操作系统（第四版）第二章-进程管理]]></title><link>https://blog.youkuaiyun.com/USTB_XU/article/details/134388975</link><guid>https://blog.youkuaiyun.com/USTB_XU/article/details/134388975</guid><author>USTB_XU</author><pubDate>Mon, 13 Nov 2023 23:30:05 +0800</pubDate><description><![CDATA[1 什么是进程？简单的说，进程就是程序的一次执行。一个程序可以对应多个进程，比如一个程序被多次运行，就会对应多个进程。为什么要引入进程呢？直接使用程序的概念不行吗？（1）进程是一个动态的概念，而程序是一个静态的概念。可以这么理解：程序是指令的有序集合，没有任何执行的意义。但是进程不一样，进程被动态的创建，被调度之后又消亡。（2）进程具有并发（并发不是并行，第一章已经说过）特征，而程序没有。为什么说程序没有这个特性，因为程序不反映执行过程，就是一堆指令（代码）。]]></description><category></category></item></channel></rss>