十六进制--主存编址

两个特点:

  • 英文字母A,B,C,D,E,F分别表示数字10~15。

  • 计数到F后,再增加1个,就进位。

弥补二进制数书写位数过长的不足。

十六进制以0x开头

示例:0xAF=175

10*16的一次方(当前位后面的有效位数+ 15 * 16的0次方=  160 + 15 = 175.

后缀

H表示16进制;

B表示2进制;

O表示8进制;

D表示10进制

前缀

以0开始,表示8进制,比如0123,表示8进制的(123);

以0x开始,表示16进制,比如0x123,表示16进制的123;

16进制转10进制

1C002H   =  1* 16^4  + 12 * 16^3  + 2*16^0

16的n次方, n表示当前位, 后面有多少个零.

主存编址

转化K, 需要除1024,   2的10次方就是 1024.

C7FFFH 减去 AC000H 加1 得到内存地址单元个数.

C7FFFH + 1 = C8000H

C8000H  - AC000H  = 1C000H

1* 16^4  + 12 * 16^3  / 2^10  = ? K个地址单元

一个地址单元, 按照字编址, 编制单位是16bit.   那么 112K *16 等于总编内存大小.

28 * 16K 等于总的存储单元,

112K *16  / 28 * 16K = 4,    则每个存储单元能存 4个bit. 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
由题可知,虚拟地址空间大小为16MB,而页面大小为4KB,因此,虚拟地址空间可以被划分为$2^{20}\div 2^{12}=2^{8}$个页面,每个页面的大小为4KB,即$2^{12}$B。 在直接映射的Cache中,每一行可以缓存一个页面,且Cache共有8行,则Cache的大小为8个页面,即32KB,而每个块的大小为32B,则每个页面可以被划分为$2^{12}\div 2^5=2^7$个块,因此,Cache中每一行的块号占用7位,而标记字段占用的位数为$32-7-\log_2 32=20$位。 根据页表和Cache的内容,可以得到以下信息: - 虚拟地址的高8位为页面号,因为虚拟地址空间大小为16MB,可以表示为$2^{24}$个字节,而页面大小为$2^{12}$个字节,故需要8位表示页面号。 - 虚拟地址的中间5位为页面内偏移量,因为页面大小为$2^{12}$个字节,故需要12位表示偏移量,而每个页面可以被划分为$2^7$个块,故需要7位表示块内偏移量。 - 物理地址的高3位为页框号,因为主存的大小为1MB,可以表示为$2^{20}$个字节,而页面大小为$2^{12}$个字节,故需要20-12=8位表示页框号。 - 物理地址的中间5位为块内偏移量,同理,需要7位表示块内偏移量。 - 根据Cache的直接映射方式,可以得到Cache行号占用的位数为$log_2 8=3$位,而Cache中每一行的块号占用7位,故物理地址的低17位可以分成两部分,前3位为Cache的行号,后14位为块号内偏移量。 因此,虚拟地址共有13位,物理地址共有20位。 答案:13 20
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值