質問書き込む場所に迷ったので、お願いします。

int a;
int b = ((int)&a) >> 16;

a,bともにグローバル変数です。bの初期値はどの段階で
解決されるんでしょうか? リンクしてもロード時に配置さ
れるまでaのアドレスは決定しないと思うのですが、初期値
を書く部分でアドレス値に対して操作を行っています。

環境はVC6です。 よろしくお願いします。