オーバーフロー対策法は?


おお鍋  2003-05-10 22:05:47  No: 77905  IP: [192.*.*.*]

VBscriptで、10進数をオーバーフローしないように16進数に変換して表示させるようなことをしたいのですが、対策法に困っています。
いいアイディアをご教授ください。
以下が現在のオーバーフローするスクリプトです。
stringU = 4826531840
stringH = Hex(stringU)
response.write "stringU =" & stringU
response.write "stringH =" & stringH
やはり、下位から4ビットづつ変換していくしかないでしょうか?

編集 削除
Say  2003-05-11 00:42:53  No: 77906  IP: [192.*.*.*]

>Hex(stringU)

HexはLong型をとりますので、内部でstringUを
Longにキャストしようとしてオーバーフローします。
Hexに食わせる前に分割する必要があります。

>やはり、下位から4ビットづつ変換していくしかないでしょうか?
16bitずつにしたほうがちょっとだけ効率的でしょう。

bufH = Int(stringU / 65536)
bufL = stringU - bufH * 65536
HexString = Hex(bufH) & Right("0000" & Hex(bufL) , 4)

みたいなかんじで。

編集 削除