You are on page 1of 10

PROYECTO FINAL DE LÓGICA DE PROGRAMACIÓN.

Integrantes:
ü Elder Solano
ü Diego Pineda
OPERACIONES CON NÚMEROS BINARIOS.
1. Introducción.
En la materia de Lógica de la Programación es de gran importancia la lógica del
pensamiento humano para la toma de decisiones en la resolución de un problema, que
conjuntamente con la utilización de un Lenguaje de Programación como medio para la
representación de la solución, se puede determinar como resultado las posibles formas o
salidas obtenidas de acuerdo un proceso intermedio de cálculo de la solución más óptima o
precisa.
Para el procesamiento de los resultados, el ordenador maneja su propio sistema de
numeración , como es el sistema binario que esta compuesto de 1 y 0 , utilizados
internamente por este para la realización de cualquier producto ,cálculo o procesamiento de
información , por lo que es de vital importancia tener conocimiento de este tipo de
numeración , así como conocer las operaciones básicas que se realizan como tenemos la
suma , resta , multiplicación y división , aunque únicamente todas estas operaciones se
reducen a realizar sumas y restas , siendo esta la forma como trabaja el computador
internamente, como también es de gran importancia y necesario conocer cual es la
correspondencia de este sistema con el sistema más utilizada alrededor del mundo y que
es el más común como es el sistema decimal.
2. Marco Teórico:
Sistema Binario:
El sistema binario es un sistema de numeración en el que los números se representan
utilizando las cifras 0 y 1, es decir solo 2 dígitos. Esto en informática y en electrónica tiene
mucha importancia ya que las computadoras trabajan internamente con 2 niveles de
Tensión lo que hace que su sistema de numeración natural sea binario, por ejemplo 1 para
encendido y 0 para apagado. También se utiliza en electrónica y en electricidad (encendido
o apagado, activado o desactivado, etc.). El lenguaje binario es muy utilizado en el mundo
de la tecnología. [1]
Sistema Decimal:
En el ámbito de la matemática, el sistema decimal es un método de posicionamiento de los
números. Fue desarrollado por matemáticos indios. Posteriormente los árabes lo
introdujeron en Europa, donde recibió el nombre de sistema de numeración arábiga.
Es un sistema de numeración posicional en la que las cantidades se representan utilizando
como base al número diez, por lo que se compone de 10 cifras diferentes: cero (0); uno (1);
dos (2); tres (3); cuatro (4); cinco (5); seis (6); siete (7); ocho (8) y nueve (9). Este conjunto
de símbolos se denomina números árabes. [2]

3. Métodos de Conversión y Operaciones de Números Binarios.


Existen Métodos de Conversión tanto de decimal a binario y viceversa entre los más
representativos tenemos los siguientes:

DE DECIMAL A BINARIO: [3]


Método de las Divisiones Sucesivas.
ü Es la división sucesiva por 2.
ü Por ejemplo, para convertir a binario el numero decimal 12, comenzamos
dividiendo 12 entre 2.
ü Cada cociente resultante se divide por 2 hasta que se obtiene un cociente
cuya parte entera es 0.
Los restos generados en cada división forman el número binario. El primer resto es
el bit menos significativo del número binario, y el último resto es el bit más
significativo

DE BINARIO A DECIMAL.[3]

Se puede determinar sumando los pesos de todos los bits que son 1, y descartando
los pesos de todos los bits que son 0.
Ejemplo: Convertir el numero entero binario 1101101 a decimal
Peso: 26 25 24 23 22 21 20
Numero Binario: 1 1 0 1 1 0 1
6 5 3 2 0
1101101 = 2 + 2 + 2 + 2 + 2 = 64 + 32 + 8 + 4 + 1 = 109

OPERACIONES CON NÚMEROS BINARIOS. [4]

Suma en Binario:
Para aprender a sumar, con cinco o seis años de edad, tuviste que memorizar las
100 combinaciones posibles que pueden darse al sumar dos dígitos decimales. La
tabla de sumar, en binario, es mucho más sencilla que en decimal. Sólo hay que
recordar cuatro combinaciones posibles:

Las sumas 0 + 0, 0 + 1 y 1 + 0 son evidentes:


0+0=0
0+1=1
1+0=1
Pero la suma de 1+1, que sabemos que es 2 en el sistema decimal, debe escribirse en binario
con dos cifras (10) y, por tanto 1+1 es 0 y se arrastra una unidad, que se suma a la posición
siguiente a la izquierda. Veamos algunos ejemplos:

1. 010 + 101 = 111 (2)


2. 001101 + 100101 = 110010 (2)
3. 1011011 + 1011010 = 10110101 (2)
4. 110111011 + 100111011 = 1011110110 (2)

Multiplicación de Números Binarios.

La multiplicación en binario es más fácil que en cualquier otro sistema de numeración. Como
los factores de la multiplicación sólo pueden ser CEROS o UNOS, el producto sólo puede ser
CERO o UNO. En otras palabras, las tablas de multiplicar del cero y del uno son muy fáciles
de aprender:

En un ordenador, sin embargo, la operación de multiplicar se realiza mediante sumas


repetidas. Eso crea algunos problemas en la programación porque cada suma de dos UNOS
origina un arrastre, que se resuelven contando el número de UNOS y de arrastres en cada
columna. Si el número de UNOS es par, la suma es un CERO y si es impar, un UNO. Luego,
para determinar los arrastres a la posición superior, se cuentan las parejas de UNOS.
Ejemplo:

Para comprobar que el resultado es correcto, convertimos los factores y el resultado al


sistema decimal:
3349*13=43537

4. Comprensión del Ciclo de Desarrollo Del Programa.

El trabajo de un programador implica escribir instrucciones, pero por lo general un


profesional no solo se sienta ante un teclado de computadora y comienza a
mecanografía. La figura 1 ilustra el ciclo de desarrollo del programa, que se divide al
menos en siete pasos:

1. Entender el problema.
2. Planear la lógica.
3. Codificar el programa.
4. Usar software (un compilador o intérprete) para traducir el programa a
lenguaje de máquina..
5. Probar el programa.
6. Poner el programa en producción.
7. Mantener el programa.
Fig. 1. Ciclo de Desarrollo del Programa.

1. Entender el Problema.
En el presente trabajo de Investigación el tema planteado es sobre las
operaciones de Números Binarios. Por lo que hemos visto conveniente
primeramente entender el concepto de que es un sistemas de numeración
Binario así como decimal , ya que se utiliza estos dos sistemas como base
para realizar la tarea de conversión tanto de binario a decimal y viceversa,
además de que se a investigado los métodos más necesarios para realizar
la conversión entre estos sistemas, lo que nos permitió comprender la
posible solución partiendo del concepto hasta la utilización de un método
para la obtención del resultado o respuesta esperado.

2. Planear la Lógica.
Miniespecificación:

Algoritmo Decimal_Binario1
n <- 0;
n1 <- 0;
d<-"";

Escribir 'Ingrese numero Decimal'


Leer n
n1<-n
Mientras n1>=2 Hacer
e<-n1 MOD 2;
d<-ConvertirATexto(e)+d;
n1<-n1/2
Fin Mientras
d="1"+d;
Escribir "Numero Binario ", d;
FinAlgoritmo

Algoritmo Binario_decimal
binario <- 0
decimal <- 0
expo <- 1
residuo <- 0
bin <- 0
Escribir 'Ingrese Número Binario'
Leer binario
bin <- binario
Mientras (binario>=10) Hacer
residuo <- binario MOD 10
decimal <- decimal+(residuo*expo)
binario <- binario/10
expo <- expo*2
FinMientras
decimal <- decimal+(1*expo)
Escribir 'El número binario ',bin,' en decimal es = ',decimal
FinAlgoritmo

SUMA BINARIA.
Funcion retorno <- decimalABinario ( bin )

n1 <- 0
j <- 0
d<-""
n1<-bin
Mientras n1>=2 Hacer
d<-ConvertirATexto(n1 MOD 2)+d;
n1<-n1/2
Fin Mientras
d="1"+d;
Escribir "Numero Binario ", d;
e<-ConvertirANumero(d);
retorno<-e;
Fin Funcion

Funcion retorno <- binarioADecimal ( bin )


decimal <- 0
expo <- 1
residuo <- 0
binario <- 0;
binario<-bin;
Mientras (binario>=10) Hacer
residuo <- binario MOD 10;
decimal <- decimal+(residuo*expo);
binario <- binario/10;
expo <- expo*2;
FinMientras
decimal<-decimal+(1*expo);
retorno<-decimal;
Fin Funcion

Funcion retorno <- sumaBinaria ( bin1,bin2 )


a<-0;
b<-0;
c<-0;
res<-0;
a<-binarioADecimal(bin1);
b<-binarioADecimal(bin2);
res<-a+b;
c<-decimalABinario(res);
retorno<-c;
Fin Funcion

Proceso SUMAR_BINARIOS
bin1<-0;
bin2<-0;
bin3<-0;
Escribir "Ingrese un Número en Binario";
Leer bin1;
Escribir "Ingrese un Segundo Numero en Binario";
Leer bin2;
bin3<-sumaBinaria(bin1,bin2);
FinProceso

MULTIPLICACIÓN BINARIA.

Funcion retorno <- decimalABinario ( bin )

n1 <- 0
j <- 0
d<-""
n1<-bin
Mientras n1>=2 Hacer
d<-ConvertirATexto(n1 MOD 2)+d;
n1<-n1/2
Fin Mientras
d="1"+d;
Escribir "Numero Binario ", d;
e<-ConvertirANumero(d);
retorno<-e;
Fin Funcion

Funcion retorno <- binarioADecimal ( bin )


decimal <- 0
expo <- 1
residuo <- 0
binario <- 0;
binario<-bin;
Mientras (binario>=10) Hacer
residuo <- binario MOD 10;
decimal <- decimal+(residuo*expo);
binario <- binario/10;
expo <- expo*2;
FinMientras
decimal<-decimal+(1*expo);
retorno<-decimal;
Fin Funcion

Funcion retorno <- multipliBinaria ( bin1,bin2 )


a<-0;
b<-0;
c<-0;
res<-0;
a<-binarioADecimal(bin1);
b<-binarioADecimal(bin2);
res<-a*b;
c<-decimalABinario(res);
retorno<-c;
Fin Funcion

Proceso MULTIPLICAR_BINARIOS
bin1<-0;
bin2<-0;
bin3<-0;
Escribir "Ingrese un Número en Binario";
Leer bin1;
Escribir "Ingrese un Segundo Numero en Binario";
Leer bin2;
bin3<-multipliBinaria(bin1,bin2);
FinProceso

DIAGRAMAS DE FLUJO
1.
REFERENCIAS.
[1] http://www.areatecnologia.com/sistema-binario.htm
[2] https://www.ecured.cu/Sistema_decimal
[3] https://tatunga.wordpress.com/2013/03/04/conversion-de-numeros-binarios-a-decimales-
y-viceversa/
[4] http://platea.pntic.mec.es/~lgonzale/tic/binarios/aritmetica.html