控制面板 - 帮助中心 - 付款方式 - 常用文档 - 软件下载 -   
服务中心
当前位置:首页 - 服务中心 - 网络学院

ASP版十进制转二进制

  进制的转换一般用在比较低层的应用中,比如硬件控制,内存操作这些,在网站应用中还是很少的。不过一些密码加掩码,数据加密存储上还是比较常见的。下面就ASP中如何实现十进制向二进制的转换作一说明,当然您首先应该会手工十进制向二进制的转换。

  十进制转二进制手工算法

  十进制整数转换为二进制整数采用"除2取余,逆序排列"法。

  步骤:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为一时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。

  302转化成二进制 302/2 = 151 余0 151/2 = 75 余1 75/2 = 37 余1 37/2 = 18 余1 18/2 = 9 余0 9/2 = 4 余1 4/2 = 2 余0 2/2 = 1 余0,条件到最终二进制为100101110

  ASP实现十进制到二进制的自动转换

  代码如下:

'功能:十进制转换成二进制
'参数:iNum 待转换的十进制数
'返回:转换后的二进制数
'例子:TenAndTwo(22)
Function TenAndTwo(iNum)
Dim iResult,iBound
Dim varry(),varry1()
 if Isnumeric(iNum)=false then Response.End()
 iBound = 1
 ii = iNum \ 2
 
 do while(ii>1)
  iBound = iBound+1
  if iBound=1 then
   ii = iNum \ 2
  else
   ii = ii \ 2
  end if
 loop
 
 redim varry(iBound),varry1(iBound)
 for i = 0 to iBound
  if i=0 then
   varry(i) = iNum Mod 2
   varry1(i) = iNum \ 2
  else
   varry(i) = varry1(i-1) Mod 2
   varry1(i) = varry1(i-1) \ 2
  end if
 next
 
 For j=0 to iBound
  k = iBound - j
  iResult = iResult & varry(k)
 Next
 
 if left(iResult,1) = 0 then iResult=right(iResult,len(iResult)-1)
 TenAndTwo = iResult
End Function

更新时间:2010-4-24

7*24小时咨询热线:400-628-6536 0371-86013552 19937165195
传真:0371-86013552-6612 服务邮箱:web@3a88.com 代理邮箱:agent@3a88.com 备案邮箱:beian@3a88.com
运营商:郑州金飞科技有限公司 工商营业执照号:9141010567945717XL
公司地址:郑州高新技术产业开发区木兰里9号1号楼1单元14层310号 邮政编码:450000 豫ICP备12025635号-1 豫公网安备 41010502003077号