2019/05/02 10:23
首先,我们注意到地址映射有三种:分别是直接地址映射、全相联映射、组相联映射。
首先我们搞清楚主存地址还有Cache地址的关系,还有组内地址的关系,常见我们的块内地址,是用b(b表示有几位的数2^b)表示的。
对于直接映射:主存地址分为,标记 | 字块地址 | 块内地址
对于全相联映射:主存地址分为,标记 | 块内地址
对于组相联地址:主存地址分为,标记 | 组地址 | 块内地址

我们在题中或者遇到问题是:
首先看CPU的地址总线有多少位,然后字长(1个字节是8位,字长看所给要求有多少个字节,一般是16位,也就是两个字节)有多少。
然后我们看Cache,一般给出2K * 16位的Cache,16就是字长,然后关注块(这里关系到块内地址的位数如果是8B,可以化成4 * 16bit,就可以明白块内地址占2位)有多大,如果是组相联映射,还会有个几路组相联,如果是2路的话,也就说明占1位Cache地址,如果是4路,那么就是占2位Cache地址。这样的话,Cache剩下的位数,表示分成了这么多组,在主存地址中也要中这么多位的地址来找到相应的地址(也就是组相联映射中的组地址的位数)。

最后题目中往往会说要你求如果主存地址为462EH,则该地址可以映射到哪一组,就是把组地址取出来,然后换算成十进制看是映射到哪一组。如果所给主存地址没有达到CPU地址总线的长度,在前面补最高位同符号的即可。

最新文章

  1. 常见HTTP状态基本解释
  2. 51NOD 1623 完美消除 数位DP
  3. VS使用技巧
  4. C primer plus 读书笔记第十章
  5. js获取ip方法
  6. COJ 0986 WZJ的数据结构(负十四) 区间动态k大
  7. css学习知识点
  8. 在ubuntu中为navicat创建快捷方式
  9. S7 Connection 通讯
  10. 【Spring Boot】关于上传文件例子的剖析
  11. Android开发 - 掌握ConstraintLayout(十一)复杂动画!如此简单!
  12. linux 测试 get 请求 跳过SSL证书验证
  13. centos7使用yum安装软件提示 cannot find a valid baseurl for repo:base/7/x86_64 的解决方法
  14. arcengine新建要素类
  15. postman客户端的安装与使用
  16. Oracle EBS GL总账凭证取值
  17. Linux __attribute__(("hidden"))、default
  18. [UE4]用向量表示方向
  19. Nexus 使用配置
  20. 编程哲学之C#篇:01——创世纪

热门文章

  1. Hash冲突的解决--暴雪的Hash算法
  2. Spring Boot Swagger2自动生成接口文档
  3. vue简介、入门、模板语法
  4. Android 5.0以下系统支持TLS 1.1/1.2协议版本
  5. (转)MySQL中char(36)被认为是GUID导致的BUG及解决方案
  6. 2019-11-29-VisualStudio-使用三个方法启动最新-C#-功能
  7. 有关 Table 获取Json 的解决方案
  8. .net core使用jwt自动续期
  9. OKHttp和NumberProgressbar组建强大的Android版本更新功能
  10. testlink使用方法