#!/usr/bin/env python #-*- coding: iso8859-15 -*- ########################################################## # LIBRERIA MATEMATICA BINARIA-HEXADECIMAL v1.0 # ########################################################## # Autor: Juan Miguel Taboada Godoy # # Fecha: Malaga, 07 de diciembre de 2006 # # Descripción: Contiene todos las funciones matematicas # # necesarias para hacer transformaciones binaria y # # hexadecimales. # # Versión: 2006120700 # # # # Codigo fuente bajo licencia GNU/GPL # # Centrologic (Computational Logistic Center) # # http://www.centrologic.com - info@centrologic.com # ########################################################## ## \internal ## \defgroup MATH_BIN MATH_BIN: Libreria con funciones matematicas para transformaciones binarias y hexadecimales ## \version 07/12/2006 0052 Szczecin # Librerias que voy a usar {{{1 import struct # }}}1 # Función para convertir un número decimal a binario {{{1 def dectobin(numero,longitud): # Creo la cadena vacía binario="" # Ajusto la memoria del algoritmo memoria=1 # Si el número es 0 if (numero==0): # El binario es 0 binario="0" # Hay un 0 añadido a la cadena contador=1 else: # Inicializo el contador contador=0 # Mientras el número no sea 0 while (numero!=0): # Actualizo la memoria memoria=numero % 2 # Incremento el binario binario="%s%s" % (memoria,binario) # Incremento el contador contador=contador+1 # Actualizo el número numero=numero/2 # Reviso posibles errores if (contador>longitud): raise Exception,"SQL ERROR: DECTOBIN fuera de rango" # Ajusto el binario a la longitud solicitada while (contadorf', bytes) # Devuelve el resultado return obj[0] # }}}1