首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

内存储器块重叠的判断方法

2013-09-06 
内存块重叠的判断方法内存块a, 起点为a1, 终点为a2, a2a1内存块b,起点为b1, 终点为b2, b2b1如满足条

内存块重叠的判断方法

内存块a, 起点为a1, 终点为a2, a2>=a1;

内存块b,起点为b1, 终点为b2, b2>=b1;

如满足条件b1<=a2 && a1<=b2,则内存块重叠;

如满足条件a1>b2 || b1>a2, 则内存块不重叠。

此结论可以推广到其他一维线性区间重叠的判断。比如时间段,IP地址段等。


推论过程;

两种不重叠的情形:a1>b2 || b1>a2

(1)a1>b2

a                   -------------

b ----------

(2) b1>a2

a --------

b                   --------------


将不重叠的情形取反,就得到重叠的情形。
!(a1>b2 || b1>a2)  =>  b1<=a2 && a1<=b2

热点排行