complemento a dos en visual

gonzal19
28 de Julio del 2004
tengo un numero en decimal quiero hacerle el complemento a 2 y pasarlo a hexadecimal como lo puedo hacer???GRCIAS

jx
28 de Julio del 2004
perdona gonzal19,seguramente el codigo que te di va mal.
1) haya el primer numero>numeroacalcular que sea exponenciado a 16 ,así:

while numero<numeroacalcular

numero=numero*16

wend

2)valor=numero-numeroacalcular

3)Pasar a hexa
- con la funcion hex (si es que existe)
-con el paso 1) del otro post

4)el paso 3) del otro post para convertir los simbolos.

Jx
28 de Julio del 2004
A lo mejor hay alguna funcion especifica.Prueba Hex.
yo te hago el pseudo programita por si te vale ¿vale?

Se divide el problema en 3 partes:

1) sacar los valores hexa del número:
-divisiones sucesivas por 16
bucle while número<1
valor=número mod 16 (saca el resto)
valor--> array (posicion)
número=número/16
posicion=posicion+1
wend

2)hacer complemento a 2
bucle for 1 to posicion
valores(posicion)=16-valores(posicion)
next

3)poner a hexa
a$=string*numerodedigitoshexamáximos
for n= posicion to 1 step -1
a$=a$+funcion pasarvalorahexa
next

funcion pasar valor a hexa:

valoreshexa=array (\'1\',\'2\',\'3\',....,\'A\',....\'F\') \'es una array 0 to 15
pasar... a hexa= valoreshexa(valor(posicion))

vale la idea no?