欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

这好象不是很复杂呀 (1千字)

这好象不是很复杂呀 (1千字)

下面这段是把ID转换成48-bit的二进制串
//----------------------------------------------------------
ID=任意数字(如:12345678)
BHD = ''
DO WHILE ID / 2 <> 0
BMOD = IIF(MOD(ID,2) = 0,'0','1')
BHD = BMOD + BHD
ID = INT(ID / 2)
ENDDO
If len('&bhd')<48
  BHD=replicate('0',48-len('&bhd'))+BHD
ENDIF
//-----------------------------------------------------------
下面这段和上面的类似,是把ZCH(注册号)转换成48-bit的二进制串
//-----------------------------------------------------------
NBHD = ''
DO WHILE ZCH / 2 <> 0
BMOD = IIF(MOD(ZCH,2) = 0,'0','1')
NBHD = BMOD + NBHD
ZCH = INT(ZCH / 2)
ENDDO
If len('&nbhd')<48
  NBHD=replicate('0',48-len('&nbhd'))+NBHD
ENDIF
//---------------------------------------------------------
下面这段是把ID的二进制串和ZCH的二进制串分成两段来逐位比较,每位比较的结果都记录在YHNUM中
//---------------------------------------------------------
YHNUM = ''
FOR BI = 1 TO 20
IF SUBSTR(BHD,BI,1) = SUBSTR(NBHD,BI,1)
YHNUM = YHNUM + '0'
ELSE
YHNUM = YHNUM + '1'
ENDIF
ENDFOR
FOR BI = 21 TO 48
IF SUBSTR(BHD,BI,1) = SUBSTR(NBHD,BI,1)
YHNUM = YHNUM + '1'
ELSE
YHNUM = YHNUM + '0'
ENDIF
ENDFOR
//------------------------------------------------------
将比较的结果YHNUM和常数串ZSHNUM进行比较
//------------------------------------------------------
ZSHNUM=001110101001100001110110010101000011001000010000
IF YHNUM == ZSHNUM
OK!
ELSE
Error!

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功