内存地址对齐数学解释

内存地址对齐数学解释

巧妙的对齐公式

image.png

说明

假设 x、q、n、r 是非负整数,则存在公式
x = qn + r
0 =< r < n

x = qn + r

对齐的概念

我们把 x 加上某个数 v得数x1, 即 x1 = x + v = q'n , 0 =< v
x1是n的整数q'倍,我们把 x1称做 x 按照 n 对齐后的数,
简称 x1 是 x 按照 n 对齐。

对齐函数v1.0

x = qn + r

image.png

由上推出 x 的计算


x的计算

推出对齐的f(x)计算


fx

n-r

n-1>=n-r

1

2

3

4

5

6

r = 0 时,对齐公式求证

r=0, f(x) 1

r=0 fx 2

r > 0 时,对齐公式求证方法

r>0 f(x)
7
8.png

9.png
r = 0时, x 就是n的整数倍,已经按照 n 对齐了

0 < r < n时,x 按 n 对齐后是 x1 = (q + 1)n

问题

请写出 x 按照 n 对齐的公式,并证明它。
x1 = f(x),
x1 是 n 的倍数, 且 x =< x1 <= (q + 1)n
我们把 x 对 n 整除取余数 r,
如果 r = 0 则 f(x) = x = qn;
如果 0< r f(x) 可以表示为分段函数

x1 = qn;        r = 0;
x1 = (q+1)n;    1=< r < n

等价于公式

f(x) = x = qn;   r = 0;
f(x) =  x + (n - r);  1 =< r < n
r = 0

r = 1

x

r=n-2

r=n-1

你可能感兴趣的:(内存地址对齐数学解释)