如: i=&HA0A1 response.write i
输出为:-24415 ------------------------------ 原因没想太明白。
(1)Int型数字占用4个字节。 (2)负数用其绝对值的补码表示,补码为反码+1。
24415的原码为:00000000 00000000 01011111 01011111 其反码为 11111111 11111111 10100000 10100000 补码为 11111111 11111111 10100000 10100001 (FFFFA0A1)
-24415的是用FFFFA0A1表示的。 而&HA0A1原意是想表示正数41121,可是却被用41121-65536=-24415表示了。 ----------------------------------------------------------------- 避免方法:
(1)最后再加一个&即可。 i=&HA0A1& response.write i
输出为:41121
(2)使用CLng()转换即可(用CInt()不行,还是负数) i=Clng("&HA0A1") response.write i
输出为:41121
|