笔记
To_the_Sun_
此人不懒,什么都“没有”写
展开
-
MacOS如何切换annaconda和miniconda
切换anaconda和miniconda原创 2022-11-20 15:43:06 · 739 阅读 · 1 评论 -
【严蔚敏】数据结构 在C语言中不能用动态分配的一维数组来实现循环队列
对于这个问题的考虑源于我在做2019-408真题的算法设计题时想到的方案:原题目如下:#define MAXSIZE 50typedef struct{ElemType data;int front,rear;int length = MAXSIZE;}SqQueue;void InQueue(SqQueue &Q, ElemType x){if(Q.front==(Q.rear+1)%Q.length){ElemType base = (ElemType)realloc(原创 2021-11-17 22:26:20 · 774 阅读 · 0 评论 -
Cache地址结构/Cache总位数
Cache总位数或总容量=标记项的总位数+数据块的总位数标记项=有效位+脏位(全写法没有脏位,写回法有脏位)+替换控制位(有替换算法时)+标记位(与主存的高位相同)这里我一直搞混的一点是把标记项当作地址结构中的一部分,所以不明白为什么算Cache总位数时不把块内地址的位置算进去,今天才明白!Cache地址是用来找到我们要找到的Cache行,怎么能算在Canche容量里呢,这里给出三种映射方式下Cache的地址结构:全相联映射:Cache块号+块内地址直接映射:Cache块号+块内地址组相连映射:组原创 2021-11-15 22:07:23 · 15291 阅读 · 18 评论 -
汇编语言SAL SHL的比较
SHL逻辑左移、SAL算术左移的指令完全相同;格式:SHL d,count操作:SHL指令可将目标操作数的内容向左移位,移位的位数由count给定,每左移一位,操作数最高位的状态移入CF标志位,末位补0;原创 2021-10-06 16:59:30 · 1314 阅读 · 0 评论 -
边界对齐存储
结构体或类内数据元素长度都小于机器字长, 对齐单元 = 最长的数据元素长度。结构体或类内数据元素长度存在大于机器字长的数据元素, 对齐单元 = 机器字长。在64位计算机中,最长的数据元素为8个字节,对齐单元 = 最长的数据元素长度,数据项仅仅能存储在地址是数据项大小的整数倍的内存位置上。例如:long long 占8字节,只能放在首地址为0,8,16等位置int 占4字节,只能放在首地址为0,4,8等位置char 占1字节,能放在任意位置在32位中,若存在long long,则 &g..原创 2021-10-06 16:58:25 · 1614 阅读 · 0 评论 -
原码反码补码的溢出判断
右移:可能会丢失精度左移:可能会出现严重误差溢出判断正数:正补反左移和右移都是丢1出错负数:原码:左移或右移丢1出错反码:左移或右移丢0出错补码:左移丢0出错右移丢1出错一个数的补码的 最低位 到 从右往左数出现第一个“1”的位置 与它的原码相同;最高位 到 从右往左数出现第一个“1”的位置的前一位 与它的反码相同。故负数补码左移与反码相同,右移与原码相同。...原创 2021-10-05 17:26:07 · 2944 阅读 · 0 评论 -
判定给定的二叉树是不是二叉排序树
bool IsBST(BiTree T){if(T == NULL) return true;//没有左子树也没有右子树if(T->lchildNULL && T->rchild == NULL) return true;//有左子树没有右子树if(T->lchild!=NULL && T->rchildNULL){if(T->lchild->data > T->data) return false;else原创 2021-09-21 20:51:03 · 93 阅读 · 0 评论