Salve, stavo cercando di fare una funzione che potesse farmi un confronto Bit a Bit anche per numeri molto grandi.

Infatti il limite del bit a bit è il Long, se i numeri da confrontare sono maggiori del Long va in Overflow.

Avevo pensato di crearmi intanto una stringa contenente i bit (serie di 0 e 1) ma ho dei problemi.

codice:
function Dec2BitStr(val)
	dim bitstr
	bitstr=""
	do while val > 0
		val=val/2
		if val > fix(val) then
			bitstr="1"&bitstr
			val=fix(val)
		else
			bitstr="0"&bitstr
		end if
	loop
	Dec2BitStr=bitstr
end function
Il problema sta nel fatto che non appena faccio un'operazione numerica con un numero grande (es. 8000000000000000001) me lo trasforma nel formato per numeri grandi (in questo caso 4E+18).

Questo formato non tiene conto dei numeri decimali, quindi dividendo 8000000000000000001 per 2 o 8000000000000000000 per 2 il risultato è lo stesso, 4E+18.

Inoltre non riesco a trovare in Asp o VB6 una funzione che dato 4E+18 me lo ritraduca in un numero...

Voi avete qualche suggerimento?

Grazie