首页 > 试题广场 >

二进制地址为011011110000,大小为(4)10和(1

[填空题]
二进制地址为011011110000,大小为(4)10和(16)10块的伙伴地址分别为:12
推荐

地址011011110000,可以被2^(2+1)整除,所以伙伴地址是其下半部,加4就行,所以答案是011011110100;

16大小时,不能被2^(4+1)整除,所以伙伴地址是其上半部,地址减去16,结果为0110 1110 0000。至于为什么这样整除决定,请查看伙伴地址定义

编辑于 2015-02-09 17:37:18 回复(2)
关于Linux伙伴块概念,可以参考这篇文章:http://blog.csdn.net/vanbreaker/article/details/7605367
发表于 2015-08-26 16:17:05 回复(7)
伙伴算法把互为伙伴地址的两块合并为一块,因此合并后首地址为块大小的两倍。
011011110000为4*2的倍数,因此伙伴地址只需加4。
011011110000是16的倍数但不是16*2的倍数,因此要减去16凑成16*2的倍数。
发表于 2015-08-27 19:52:36 回复(0)
假设地址是16位的,
(011011110000)2
=(0000 0110 1111 0000)2
=(06F0)16
>06F0h
所以当前地址为06F0h
查阅相关资料,有:
伙伴的概念, 满足以下三个条件的称为伙伴:
( 1 ) 两个块大小相同
( 2 ) 两个块地址连续
( 3 ) 两个块必须是从同一个大块中分离出来的。
若块大小为4,则06F4h是06F0h的伙伴地址。
若块大小为16,则06E0h是06F0h的伙伴地址。

解释来自-http://zhidao.baidu.com/link?url=vGu_mwKOi3J_HdjZoxTdVGYT6gn8O09SvUEeGGYupfcD7nTtN63mbos4f-dHOwNXZ-9Hp0UjGjOzVhC_QZcUeCTfjm_u0zwshPzmuOWpfFa
发表于 2015-08-18 14:53:58 回复(0)
伙伴的概念, 满足以下三个条件的称为伙伴: 
( 1 ) 两个块大小相同
( 2 ) 两个块地址连续
( 3 ) 两个块必须是从同一个大块中 分离出来的。 
发表于 2017-01-07 21:31:03 回复(0)
改头像
伙伴地址合并后还需要是新地址的2^(n+1)的倍数
伙伴地址合并后还需要是新地址的2^(n+1)的倍数
伙伴地址合并后还需要是新地址的2^(n+1)的倍数
发表于 2016-09-04 16:52:43 回复(0)
炫头像
地址011011110000,可以被2^(2+1)整除,所以伙伴地址是其下半部,加4就行,所以答案是011011110100 ;
16大小时,不能被2^(4+1)整除,所以伙伴地址是其上半部,地址减去16,结果为0110 1110 0000 。至于为什么这样整除决定,请查看伙伴地址定义
--来自百度
发表于 2016-04-04 13:50:29 回复(0)
122
发表于 2015-10-24 20:02:27 回复(0)
这一题我是按照《深入理解计算机系统》第二版578页来做的,然后做错了。。。
发表于 2015-09-01 16:25:33 回复(0)
求解答  ^ _ ^
发表于 2015-08-07 19:16:31 回复(1)