![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
408知识总结
迷人的派大星
加油
展开
-
cache中行、组、块的区别
初学者在学习408计算机组成原理中有关cache的内容时,可能会对这几个概念产生混淆,解释如下:块: 块是一个固定大小的信息包,是cache和主存之间交换数据的最小单位行: 行是cache的一个容器,存储块以及其他信息(例如有效位和标记位)组: 组是一个或多个行的集合。在直接映射中一组由一行组成,组相联映射中一组由多行组成因为一行总是存储一块,因此 “行” 和 “块” 通常互换使用,但二者表达的概念是不同的。...原创 2021-01-11 17:21:52 · 8418 阅读 · 5 评论 -
逻辑运算符“&&”和位级运算符“&”的区别
记录一下,防止自己忘记。位级运算符:“&”和“|”分别代表按位与和按位或,当有多个连接时,计算机会依次进行计算,直接表达式结束。逻辑运算符:“&&”和“||”分别为逻辑与和逻辑或,当有多个连接时,计算机求某一步便可确定整个表达式结果时,后续的表达式将不会再比较。...原创 2021-01-04 23:04:16 · 275 阅读 · 0 评论 -
删除链表指定值的结点(递归与迭代实现)
题目:删除链表指定值的结点来源:Leetcode递归/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* removeElements(ListNode* hea原创 2020-06-26 18:15:46 · 391 阅读 · 1 评论 -
C++实现单链表
class MyLinkedList {public: struct LinkedNode { int val; LinkedNode *next; LinkedNode(int val):val(val), next(NULL){} }; /** Initialize your data structure here. */ int length=0; LinkedNode *dummyHead; MyLi原创 2020-06-25 17:26:59 · 238 阅读 · 0 评论 -
C++实现顺序表
#include <iostream>using namespace std;#define MAXSIZE 50// 定义结构体typedef struct { int *data; int length;}SqList;// 初始化顺序表void InitList(SqList &L){ L.data =(int *)malloc(sizeof(int) * MAXSIZE); L.length = 0;}// 插入操作boo原创 2020-06-25 17:11:11 · 299 阅读 · 0 评论 -
Clion Run自己定义的Cpp文件
修改项目下CMakelists文件可以看到,我新建的Project叫DSFor408,里面会自动生成一个CMakeLists文件,如图。需求:现在我想 run DSFor408\LinearList\SequenceList.cpp步骤:修改项目目录下的CMakeLists文件,添加如图红框标出的 add_subdirectory ,指定目录在LinearList下新建CMakeLists,如图然后再该文件中加入红框可以自己随便起名字,绿色框为想执行的CPP文件名,然后刷新一下:这原创 2020-06-22 17:18:43 · 1092 阅读 · 0 评论 -
你真的知道为什么计算机中栈地址与内存地址增长方向相反吗
我们知道,计算机内存地址增长的方向是自小到大,这很容易理解,也符合我们的常识。栈也是我们编程时经常用到的数据结构,在计算机组成原理中,竟然会提到栈地址增长方向与内存地址增长方向相反,那这是为什么呢?当我们定义一个栈时,我们事先是不可预料栈最终的大小的,因为我们总是会根据需要向栈中添加数据。那么在计算机设计中,若我们将栈也设计为从低地址到高地址增长会是什么样呢?假设当我们初始化时,我们在地址为0001H的地方开辟了一个栈,那么当我们一次向栈中压入数据时,可以看到地址是依次递增的,假若内存空间最大只到0原创 2020-06-13 23:12:16 · 2872 阅读 · 3 评论 -
一文带你了解机器字长、指令字长、存储字长的区别与联系
机器字长、指令字长、存储字长是计算机组成原理中常见的三个概念,初学者很容易混淆。以下列出三者的区别与联系。机器字长机器字长指计算机能直接处理的二进制数据的位数,机器字长一般等于内部寄存器的大小,它决定了计算机的运算精度。例如,我们常说的64位机中的64即为机器字长。指令字长指令字长指一个指令字中包含的二进制代码的位数,指令字长取决于操作码的长度、操作数地址和操作数地址的个数。存储字长存储字长指一个存储单元存储的二进制代码的长度,例如,若说明计算机按字节编址,那么存储字长就等于1B=8位。它们三原创 2020-06-13 22:56:16 · 23304 阅读 · 0 评论