Aquí traigo un fragmento de código que nos puede ayudar bastante a la hora de hacer cambios de base de decimal a binario, sobre todo porque para manejarnos con los números negativos utilizamos el Complemento a dos.
En principio, antes de hacer esta función miré un poco el blog Static Zero, y luego me decidí simplificar un poco el código. Así ha quedado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | int *decToBin(int decimal, int nBits, int binary[]) { int i; int flag = 0; /* Si es un número negativo, lo hacemos positivo y le restamos 1(*), */ /* además activamos el flag para saber que es negativo */ /* (*) El complemento a 2 es igual que el complemento a 1, que es cambiar */ /* 1->0, 0->1, y luego sumando 1 en binario. |
Últimos comentarios