随笔分类 - 计算机基础
算法心得
摘要:X = X and (X-1) 目的是去除最右边的为1的位元X = X or (x+1) 目的是让最右边为0的位元变成1X = X and (X+1) 目的让最右边相邻为1的位元全部变成0X = X or (x-1) 目的让最右边相邻为0的位元全部变成1X = (not X) and (x+1) 目的是右边的位元0变成1, 然后其余位变成0X = (not X) or (x-1) 这个是右边为1的位元变0, 然后其余位变成1下面的公式 可以让右边相邻的为0的位元变成1, 其余位设置成0.X = (not X) and (X-1)X = not (x or -x)X = (x and -x)..
阅读全文
虚拟地址到物理地址的转换步骤
摘要:已知一个虚拟地址0x01AF5518, 则转换的过程如下: 注意: *这里讨论的以Windows下普通模式分页的情况, 也就是2级页表的情况* 1.首先把虚拟地址拆分成3个部分(低12位, 中10位, 高10位), 换成2进制如下: -> 0000 0001 1010 1111 0101 0101 0001 1000 按照10, 10, 12的位数重新排列后 -> (页目录索引)00 000 00110, (页表项索引)10 1111 0101, (偏移)0101 0001 1000 换算成十六进制后可以得到如下结果 页目录索引 = 6, 页表项索引 = ...
阅读全文
浙公网安备 33010602011771号