ALPII Práctica 3. Bernardo García Fuentes

Tamaño: px
Comenzar la demostración a partir de la página:

Download "ALPII Práctica 3. Bernardo García Fuentes"

Transcripción

1 ALPII Práctica 3 Bernardo García Fuentes 1

2 Ej modulus :: [Float] -> Float modulus = sqrt.sum.map square square :: Float -> Float square x = x^2 vmod :: [[Float]] -> [Float] vmod [] = [] vmod (v:vs) = modulus v : vmod vs {- smap 0 f = map f smap (n+1) f = map (smap n f) No se puede tipear la funcion smap en haskell por que su tipo depende de su argumento, en este caso, de (n+1). El caso base de smap devuelve una funcion g :: [a] -> [a] Si n = 0 smap devuelve g :: [[a]] -> [[a]] Si n = 1 smap devuelve g :: [[[a]]] -> [[[a]]] y asi sucesivamente. -} Ej hd :: [a] -> a hd (x:xs) = x tl :: [a] -> [a] tl (x:xs) = xs pred :: Int -> Int pred (x + 1) = x Ej > pred 0 Program error: pattern match failure: pred 0 Produce error por que no esta definida la funcion pred para un n tal que n+1 = 0 pred 0 = x falta de pattern matching (no esta definida para algun n tal que n+1=0) bottom ---> tl [pred 0] [] Devuelve la lista vacia por que la lista que se le pasa a tl es (x:xs) = (pred 0:[]) 1

3 tl [pred 0] = x notacion tl (pred 0:[]) = x def de tl [] ---> hd (tl [pred 0]) Program error: pattern match failure: hd [] hd(tl [pred 0]) = x notacion hd(tl (pred 0:[]) = x def de tl hd([]) = x falta de PM -> indefinido bottom Ej data Color = C Int Int Int deriving Show mezclar :: Color -> Color -> Color mezclar (C r1 g1 b1) (C r2 g2 b2) = C ((r1 + r2) div 2) ((g1 + g2) div 2) ((b1 + b2) div 2) Ej data DigBin = Cero Uno deriving (Show, Eq) { = = = ,Acarreo 0 = 0, Acarreo ,Acarreo 1 = 1, Acarreo 1 Por ej: 111 -> Acarreo } -- Suma basica de binarios suma :: DigBin -> DigBin -> DigBin suma Cero Cero = Cero suma Cero Uno = Uno suma Uno Cero = Uno suma Uno Uno = Cero -- Producto Modulo 2 pmod2 :: DigBin -> DigBin -> DigBin 2

4 pmod2 Cero Cero = Cero pmod2 Cero Uno = Cero pmod2 Uno Cero = Cero pmod2 Uno Uno = Uno -- Esta funcion suma numeros binarios con el bit menos significativo como -- el primer elemento de la lista type NumBin = [DigBin] sumab_rev :: NumBin -> NumBin -> NumBin sumab_rev x y = suma x y Cero -- Las demas no las defino xq no tengo ganas. -- Ahora usando la convencion standard, donde el primer elemento de la lista es el -- bit mas significativo. -- Como la suma es de derecha a izquierda primero doy vuelta el orden de la lista -- si no empieza sumando del bit mas significativo al menos significativo y es al -- reves. Antes de devolverla vuelvo a dar vuelta el resultado para que se pueda -- leer como numbero binario. sumab :: NumBin -> NumBin -> NumBin sumab x y length x == length y = reverse(suma (reverse x) (reverse y) Cero) otherwise = error("los numeros binarios no tienen la misma cantidad de bits") suma :: NumBin -> NumBin -> DigBin -> NumBin suma [] [] acarreo acarreo == Cero = [] acarreo == Uno = Uno:[] suma [] (x:xs) acarreo = suma (x:xs) [] acarreo suma (x:xs) [] acarreo x == Cero && acarreo == Cero = Cero :(suma xs [] Cero) x == Uno && acarreo == Cero = Uno :(suma xs [] Cero) x == Cero && acarreo == Uno = Cero :(suma xs [] Uno) x == Uno && acarreo == Uno = Cero :(suma xs [] Uno) suma (x:xs) (y:ys) acarreo x == Cero && y == Cero && acarreo == Cero = Cero :(suma xs ys Cero) x == Cero && y == Uno && acarreo == Cero = Uno :(suma xs ys Cero) x == Uno && y == Cero && acarreo == Cero = Uno :(suma xs ys Cero) x == Cero && y == Cero && acarreo == Uno = Uno :(suma xs ys Cero) x == Cero && y == Uno && acarreo == Uno = Cero :(suma xs ys Uno) x == Uno && y == Cero && acarreo == Uno = Cero :(suma xs ys Uno) x == Uno && y == Uno && acarreo == Cero = Cero :(suma xs ys Uno) x == Uno && y == Uno && acarreo == Uno = Uno :(suma xs ys Uno) prodx2 :: NumBin -> NumBin prodx2 x = sumab x x {- Vamos a usar la resta, sumando el complemento a 2: El complemento a 1 de un valor binario se obtiene invirtiendo el estado 3

5 de todas sus cifras, incluyendo los ceros a la izquierda hasta completar la capacidad del registro. Por ejemplo, el valor en un registro de 8 bits (cifras) será y su complemento a 1 será El complemento a 2 de un valor binario se obtiene sumando 1 al complemento a 1. Por ejemplo, el complemento a 2 de (el mismo anterior) será = Cómo restar sumando: El complemento a 2 de un número binario se puede considerar directamente su equivalente negativo. Por lo tanto, para hacer la resta a - b = x? basta con calcular el resultado "x" (sin olvidar el tama~no del registro que se utilice) como: x = a + (complemento a 2 de b) Utilizando el Complemento a dos. La resta de dos números binarios puede obtenerse sumando al minuendo el complemento a dos del sustraendo. Veamos algunos ejemplos: Hagamos la siguiente resta, = 45, en binario: C246 = En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el número resultante no puede ser más largo que el minuendo, el bit sobrante se desprecia. -} complemento_1 :: NumBin -> NumBin complemento_1 [] = [] complemento_1 (x:xs) x == Cero = Uno : complemento_1 xs x == Uno = Cero : complemento_1 xs complemento_2 :: NumBin -> NumBin complemento_2 x = sumab (complemento_1 x) (binunoconzeros (length x)) -- Esta funcion genera el numero binario uno de n bits [Cero,Cero,...,Uno] -- para poder hacer el complemento a 2 binunoconzeros :: Int -> NumBin binunoconzeros 1 = [Uno] binunoconzeros n = Cero : binunoconzeros (n-1) restab :: NumBin -> NumBin -> NumBin restab x y length(sumab x (complemento_2 y)) > length x = tail(sumab x (complemento_2 y)) otherwise = sumab x (complemento_2 y) -- La division x 2 es un shift a la derecha, descartando el ultimo bit / 2 = 0101 cocientebx2 :: NumBin -> NumBin cocientebx2 x = Cero : reverse(tail(reverse x)) 4

6 -- El resto de la division x 2 es el bit que desapareceria si hiciesemos -- un shift a la derecha restococientebx2 :: NumBin -> DigBin restococientebx2 x = head(reverse x) Ej Defino los Bags como una lista de tuplas -- [(elemento, Numero de apariciones de un elemento)] type Bag a = [(a,int)] --list2bag :: [a] -> Bag a list2bag [] = [] list2bag (x:xs) = baginsert x (list2bag xs) --baginsert :: a -> Bag a -> Bag a baginsert a [] = [(a,1)] baginsert a ((b,n):xs) = if a == b then (b,n+1):xs else (b,n):baginsert a xs bagempty x = if x == [] then True else False bagcar [] = 0 bagcar ((b,n):xs) = n + bagcar xs bagelem a [] = False bagelem a ((b,n):xs) = if a == b then True else bagelem a xs bagocurr a [] = False bagocurr (a,n) ((b,m):xs) = if a == b && n==m then True else bagocurr (a,n) xs bagequal [] [] = True bagequal _ [] = False bagequal [] _ = False bagequal ((a,n):xs) ((b,m):ys) = if a==b && n==m then True && bagequal xs ys else False bagsubbag [] [] = True bagsubbag _ [] = False bagsubbag [] _ = True bagsubbag ((a,n):xs) ((b,m):ys) = if a==b && n<=m then True && bagsubbag xs ys else bagsubbag ((a,n):xs) ys bagminenbag [] [] = 0 bagminenbag _ [] = 0 bagminenbag [] _ = 0 bagminenbag [(a,n)] ((b,m):ys) = if a==b then min n m else bagminenbag [(a,n)] ys baginter [] _ = [] baginter ((a,n):xs) ((b,m):ys) = if x > 0 then (a, x):baginter xs ((b,m):ys) 5

7 else baginter xs ((b,m):ys) where x = bagminenbag [(a,n)] ((b,m):ys) insertnveces a 1 ys = baginsert a ys insertnveces a n ys = baginsert a (insertnveces a (n-1) ys) bagsum [] ys = ys bagsum ((a,n):xs) ys = bagsum xs (insertnveces a n ys) bagdelete _ [] = [] bagdelete (a,n) ((b,m):ys) a/=b = (b,m):bagdelete (a,n) ys a==b && n>=m = ys a==b && n<m = (b,m-n):ys 6

Tema 7. El sistema de clases

Tema 7. El sistema de clases Programación Declarativa Haskell Informática Sistemas Curso 2003-2004 Pepe Gallardo Universidad de Málaga Tema 7. El sistema de clases 7.1 Funciones Sobrecargadas Clases e Instancias 7.2 Algunas Clases

Más detalles

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos

Tipos algebraicos y abstractos. Algoritmos y Estructuras de Datos I. Tipos algebraicos Algoritmos y Estructuras de Datos I 1 cuatrimestre de 009 Departamento de Computación - FCEyN - UBA Programación funcional - clase Tipos algebraicos Tipos algebraicos y abstractos ya vimos los tipos básicos

Más detalles

Programación Funcional en Haskell

Programación Funcional en Haskell Programación Funcional en Haskell Paradigmas de Lenguajes de Programación 1 cuatrimestre 2006 1. Expresiones, valores y tipos Un programa en lenguaje funcional consiste en definir expresiones que computan

Más detalles

data Tree a = Tip Node a (Tree a) (Tree a) deriving Show

data Tree a = Tip Node a (Tree a) (Tree a) deriving Show Preguntas seleccionadas de pruebas de evaluación Pregunta 1 Dadas las siguientes definiciones: data Tree a = Tip Node a (Tree a) (Tree a) deriving Show cambiar :: [Int] -> Tree [Int] -> Tree [Int] cambiar

Más detalles

Isabelle como un lenguaje funcional

Isabelle como un lenguaje funcional Capítulo 1 Isabelle como un lenguaje funcional 1.1 Introducción Nota 1.1.1. Esta notas son una introducción a la demostración asistida utilizando el sistema Isabelle/HOL/Isar. La versión de Isabelle utilizada

Más detalles

Tema 3. Patrones y Definiciones de Funciones

Tema 3. Patrones y Definiciones de Funciones Informática Haskell Matemáticas Curso 2004-2005 Pepe Gallardo Universidad de Málaga Tema 3. Patrones y Definiciones de Funciones 3.1 Comparación de Patrones Patrones constantes Patrones para listas Patrones

Más detalles

SUMADOR RESTADOR DE 3 BITS EN BINARIO NATURAL.

SUMADOR RESTADOR DE 3 BITS EN BINARIO NATURAL. SUMADOR RESTADOR DE 3 BITS EN BINARIO NATURAL. Sabemos que a un de n bits, haciéndole un pequeño cambio, lo podemos convertir en y restador. Simplemente se complementan a los bits del sustraendo y además

Más detalles

Informática Bioingeniería

Informática Bioingeniería Informática Bioingeniería Representación Números Negativos En matemáticas, los números negativos en cualquier base se representan del modo habitual, precediéndolos con un signo. Sin embargo, en una computadora,

Más detalles

Tema 13: Aplicaciones de programación funcional

Tema 13: Aplicaciones de programación funcional Tema 13: Aplicaciones de programación funcional Programación declarativa (2010 11) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de

Más detalles

Tema 4: Definición de funciones

Tema 4: Definición de funciones Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Constantes como patrones Variables como

Más detalles

SITEMA BINARIO, OCTAL Y HEXADECIMAL: OPERACIONES

SITEMA BINARIO, OCTAL Y HEXADECIMAL: OPERACIONES Unidad Aritmética Lógica La Unidad Aritmético Lógica, en la CPU del procesador, es capaz de realizar operaciones aritméticas, con datos numéricos expresados en el sistema binario. Naturalmente, esas operaciones

Más detalles

Estructuras de Datos. Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR

Estructuras de Datos. Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR Estructuras de Datos Dr. Pablo E. Fidel Martínez López Lic. en Ciencias de la Computación UNR ...but note that an implementation need not be actualized as code a concrete design is sufficient. Chris Okasaki

Más detalles

SISTEMAS DE NUMERACION

SISTEMAS DE NUMERACION SISTEMAS DE NUMERACION INTRODUCCION El número de dígitos de un sistema de numeración es igual a la base del sistema. Sistema Base Dígitos del sistema Binario 2 0,1 Octal 8 0,1,2,3,4,5,6,7 Decimal 10 0,1,2,3,4,5,6,7,8,9

Más detalles

CONALEP TEHUACÁN ING. JONATHAN QUIROGA TINOCO SPORTE Y MANTENIMIENTO A EQUIPOS DE CÓMPUTO OPERACIÓN DE CIRCUÍTOS ELECTRÓNICOS DIGITALES TEMA 1.1.

CONALEP TEHUACÁN ING. JONATHAN QUIROGA TINOCO SPORTE Y MANTENIMIENTO A EQUIPOS DE CÓMPUTO OPERACIÓN DE CIRCUÍTOS ELECTRÓNICOS DIGITALES TEMA 1.1. CONALEP TEHUACÁN ING. JONATHAN QUIROGA TINOCO SPORTE Y MANTENIMIENTO A EQUIPOS DE CÓMPUTO OPERACIÓN DE CIRCUÍTOS ELECTRÓNICOS DIGITALES TEMA 1.1.2 SISTEMAS DE NUMERACIÓN 1 Sistemas de numeración Un sistema

Más detalles

Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA. Operaciones elementales con números binarios

Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA. Operaciones elementales con números binarios 1 de 10 27/09/11 09:57 Anterior Sistemas binarios: Aritmética binaria Siguiente ARITMÉTICA BINARIA Operaciones elementales con números binarios Suma de números binarios Resta de números binarios Complemento

Más detalles

Organización de Computadoras. Clase 2

Organización de Computadoras. Clase 2 Organización de Computadoras Clase 2 Temas de Clase Representación de datos Números con signo Operaciones aritméticas Banderas de condición Representación de datos alfanuméricos Notas de Clase 2 2 Representación

Más detalles

TEMA II REPASO. SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA.

TEMA II REPASO. SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA. TEMA II REPASO. SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA. INTRODUCCIÓN. Entendemos por sistema de numeración, la forma de representar cantidades mediante un sistema de valor posicional. Los ordenadores

Más detalles

FORMATO BINARIO DE NÚMEROS NEGATIVOS

FORMATO BINARIO DE NÚMEROS NEGATIVOS FORMATO BINARIO DE NÚMEROS NEGATIVOS Introducción: Como sabemos, con un número n determinado de bits se pueden manejar 2 n números binarios distintos. Hasta ahora hemos trabajado con números binarios puros,

Más detalles

Tema 13: Programas interactivos

Tema 13: Programas interactivos Tema 13: Programas interactivos Informática (2015 16) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla 2 / 38 Tema 13: Programas

Más detalles

BLOQUE V. CONTROL Y PROGRAMACIÓN DE SISTEMAS AUTOMÁTICOS

BLOQUE V. CONTROL Y PROGRAMACIÓN DE SISTEMAS AUTOMÁTICOS Bloque V. Control y programación de sistemas automáticos pág. 1 Bloque V. Control y programación de sistemas automáticos pág. 2 BLOQUE V. CONTROL Y PROGRAMACIÓN DE SISTEMAS AUTOMÁTICOS 1. LA INFORMACIÓN

Más detalles

https://dac.escet.urjc.es/docencia/etc-sistemas/teoria-cuat1/tema2.pdf

https://dac.escet.urjc.es/docencia/etc-sistemas/teoria-cuat1/tema2.pdf 1.3 Sistemas numéricos 1.3.1. Introducción Un sistema de representación numérica es un lenguaje que consiste en: Un conjunto ordenado de símbolos (dígitos o cifras) y otro de reglas bien definidas para

Más detalles

TEMA II SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA.

TEMA II SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA. TEMA II SISTEMAS DE NUMERACIÓN USUALES EN INFORMÁTICA. INTRODUCCIÓN. Codificación de la información. Codificación consiste en representar los elementos de un conjunto mediante los elementos de otro conjunto.

Más detalles

EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL

EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL EJERCICIOS DE LENGUAJES Y PARADIGMAS DE PROGRAMACIÓN (CUESTIONES DE EXAMEN) PROGRAMACIÓN FUNCIONAL María Alpuente y María José Ramírez 1 LENGUAJES Y PARADIGMAS: INTRODUCCIÓN 1. Indica cuál de las siguientes

Más detalles

Programación Declarativa UNIVERSIDAD DE MÁLAGA

Programación Declarativa UNIVERSIDAD DE MÁLAGA Programación Declarativa UNIVERSIDAD DE MÁLAGA (3 o de Ingeniería Técnica en Informática) E.T.S.I. INFORMÁTICA Septiembre de 2006 mbre: Especialidad: Prolog Grupo: Ejercicio 1.1 (1 punto) Realizad el árbol

Más detalles

Lógica y Programación

Lógica y Programación Lógica y Programación Programación funcional con Haskell Antonia M. Chávez, Carmen Graciani, Agustín Riscos Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Programación

Más detalles

Sistema binario. Representación

Sistema binario. Representación Sistema binario El sistema binario, en matemáticas e informática, es un sistema de numeración en el que los números se representan utilizando solamente las cifras cero y uno ( y ). Es el que se utiliza

Más detalles

Programación Funcional Haskell Clase 21

Programación Funcional Haskell Clase 21 Programación Funcional Haskell Clase 21 José Raymundo Marcial Romero rmarcial@fi.uaemex.mx BUAP c José Raymundo Marcial Romero. Clase Número 21 p.1/12 Temas de la clase Clase Anterior En Haskell cada expresión

Más detalles

UNIDAD 3: ARITMÉTICA DEL COMPUTADOR

UNIDAD 3: ARITMÉTICA DEL COMPUTADOR UNIDAD 3: ARITMÉTICA DEL COMPUTADOR Señor estudiante, es un gusto iniciar nuevamente con usted el desarrollo de esta tercera unidad. En esta ocasión, haremos una explicación más detallada de la representación

Más detalles

Computación I Representación Interna Curso 2011

Computación I Representación Interna Curso 2011 Computación I Representación Interna Curso 2011 Facultad de Ingeniería Universidad de la República Temario Representación de Números Enteros Representación de Punto Fijo Enteros sin signo Binarios puros

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

Continuación Números Naturales:

Continuación Números Naturales: Continuación Números Naturales: Múltiplos y divisores de un número natural. Reglas de divisibilidad. Mínimo común múltiplo y Máximo común divisor. Ejercicios de aplicación. Continuación Números Naturales:

Más detalles

Introducción a Haskell. El lenguaje Haskell

Introducción a Haskell. El lenguaje Haskell Capítulo 2. Introducción a Haskell 9 Introducción a Haskell Un ejemplo de fichero Haskell El lenguaje Haskell Haskell es un lenguaje funcional puro, no estricto y fuertemente tipificado. Puro = transparencia

Más detalles

Ejercicios Tema 6. Funciones

Ejercicios Tema 6. Funciones Ejercicios Tema 6. Funciones 1. Programa que calcule el cuadrado de todos los números comprendidos entre dos dados. Usar una función a la que se le pasa como parámetro un valor y retorna su cuadrado. 2.

Más detalles

5.2. Sistemas de codificación en binario

5.2. Sistemas de codificación en binario 5.2. Sistemas de codificación en binario 5.2.1. Sistemas numéricos posicionales [ Wakerly 2.1 pág. 26] 5.2.2. Números octales y hexadecimales [ Wakerly 2.2 pág. 27] 5.2.3. Conversión general de sistemas

Más detalles

TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS

TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS TEMA 6 ARITMÉTICA BINARIA Y CIRCUITOS ARITMÉTICOS . ARITMÉTICA BINARIA. Aritmética binaria básica a) Suma binaria.sea C i el acarreo (carry) generado al sumar los bits A i B i (A i +B i ) 2. Sea i= y C

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97 SISTEMAS DE NUMERACIÓN Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. La norma principal en un sistema de numeración posicional es que un mismo símbolo

Más detalles

ARQUITECTURA DE LAS COMPUTADORAS PRACTICA

ARQUITECTURA DE LAS COMPUTADORAS PRACTICA ARQUITECTURA DE LAS COMPUTADORAS PRACTICA SISTEMAS NUMÉRICOS INTRODUCCIÓN TEÓRICA: Definimos Sistema de Numeración como al conjunto de reglas que permiten, con una cantidad finita de símbolos, representar

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

Opuesto de un número +3 + (-3) = (+5) = 0. N = 0,1, 2,3,4, Conjunto de los números naturales

Opuesto de un número +3 + (-3) = (+5) = 0. N = 0,1, 2,3,4, Conjunto de los números naturales Números enteros Opuesto de un número Los números enteros son una extensión de los números naturales, de tal forma, que los números enteros tienen signo positivo (+) ó negativo (-). Los números positivos

Más detalles

APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES

APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS Y CARACTERES Cátedra de COMPUTACION Carreras: Licenciatura en Matemática Profesorado en Matemática Profesora: Mgr. María del Carmen Varaldo APUNTES DE CATEDRA: SISTEMAS DE NUMERACION - REPRESENTACION INTERNA DE NUMEROS

Más detalles

Tema 2: Introducción a la programación con Haskell

Tema 2: Introducción a la programación con Haskell Tema 2: Introducción a la programación con Haskell Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad

Más detalles

Materia Introducción a la Informática

Materia Introducción a la Informática Materia Introducción a la Informática Unidad 1 Sistema de Numeración Ejercitación Prof. Alejandro Bompensieri Introducción a la Informática - CPU Ejercitación Sistemas de Numeración 1. Pasar a base 10

Más detalles

Aritmética de Enteros

Aritmética de Enteros Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión

Más detalles

CONVERSIONES CONVERSIÓN DE BINARIO A: Binario a Octal: se agrupan de a 3 bits y luego se lee el número , B 635,15 O 6 3 5, 1 5 O

CONVERSIONES CONVERSIÓN DE BINARIO A: Binario a Octal: se agrupan de a 3 bits y luego se lee el número , B 635,15 O 6 3 5, 1 5 O CONVERSIONES CONVERSIÓN DE BINARIO A: Binario a Octal: se agrupan de a 3 bits y luego se lee el número. 110011101,001101 B Oct 110 011 101, 001 101 B 635,15 O 6 3 5, 1 5 O Ej: 1001011011,1010 B R/. 1133,50

Más detalles

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León.

Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León. Estructura y Tecnología de Computadores (ITIG) Luis Rincón Córcoles José Ignacio Martínez Torre Ángel Serrano Sánchez de León Programa 1. Introducción. 2. Operaciones lógicas. 3. Bases de la aritmética

Más detalles

Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria. Ing. José C. Benítez P.

Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria. Ing. José C. Benítez P. Electrónica Digital I (ED21) Sesión: 3 Aritmética Binaria Ing. José C. Benítez P. Sesión 3. Temas Aritmética Binaria Números Binarios Conversión de fracciones decimales a binario Conversión de fracciones

Más detalles

FUNCIONES ARITMÉTICAS Y

FUNCIONES ARITMÉTICAS Y Tema 3 FUNCIONES ARITMÉTICAS Y LÓGICAS 3.. INTRODUCCIÓN Hasta ahora hemos visto como se podían minimizar funciones booleanas, y como se podían implementar a partir de puertas discretas. En los temas siguientes

Más detalles

Tema 3: Tipos y clases

Tema 3: Tipos y clases Tema 3: Tipos y clases Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 3: Tipos y clases

Más detalles

Tema 3: Tipos y clases

Tema 3: Tipos y clases Tema 3: Tipos y clases Programación declarativa (2010 11) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 3: Tipos y clases

Más detalles

UNIDAD II CIRCUITOS LÓGICOS COMBINATORIOS

UNIDAD II CIRCUITOS LÓGICOS COMBINATORIOS UNIDAD II CIRCUITOS LÓGICOS COMBINATORIOS. SUMADORES Y RESTADORES 2. CODIFICADORES Y DECODIFICADORES 3. MULTIPLEXOR Y DEMULTIPLEXOR 4. MEMORIA DE SÓLO LECTURA 2- 2.. SUMADORES Y RESTADORES. SUMADORES Y

Más detalles

Estructura de Computadores. 1. Ejercicios Resueltos 1.1. Tema 6. La unidad aritmética y lógica

Estructura de Computadores. 1. Ejercicios Resueltos 1.1. Tema 6. La unidad aritmética y lógica Estructura de Computadores Tema 6. La unidad aritmética y lógica Operaciones típicas de la unidad aritmético-lógica. Algoritmos de multiplicación de Robertson y de Booth. Algoritmos de división con y sin

Más detalles

Electrónica Básica. Aritmética Binaria. Electrónica Digital. José Ramón Sendra Sendra Dpto. de Ingeniería Electrónica y Automática ULPGC

Electrónica Básica. Aritmética Binaria. Electrónica Digital. José Ramón Sendra Sendra Dpto. de Ingeniería Electrónica y Automática ULPGC Electrónica Básica Aritmética Binaria Electrónica Digital José Ramón Sendra Sendra Dpto. de Ingeniería Electrónica y Automática ULPGC ARITMÉTICA BINARIA Operaciones en el sistema Binario Natural Suma Binaria

Más detalles

Aritmética del computador. Departamento de Arquitectura de Computadores

Aritmética del computador. Departamento de Arquitectura de Computadores Aritmética del computador Departamento de Arquitectura de Computadores Contenido La unidad aritmético lógica (ALU) Representación posicional. Sistemas numéricos Representación de números enteros Aritmética

Más detalles

Realizado por Pablo Yela ---- pablo.yela@gmail.com ---- http://pabloyela.wordpress.com

Realizado por Pablo Yela ---- pablo.yela@gmail.com ---- http://pabloyela.wordpress.com ARITMETICA BINARIA Operaciones básicas con sistema binario Conversión de Decimal a Binario Lo primero que debemos comprender es como convertir números decimales a binarios para realizar este proceso existen

Más detalles

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria

Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Aritmética binaria Oliverio J. Santana Jaria 3. Aritmética tica binaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Para Los La en conocer muchos aritmética comprender otros binaria tipos

Más detalles

Criterios de divisibilidad

Criterios de divisibilidad ENCUENTRO # 2 TEMA: Criterios de Divisibilidad. CONTENIDOS: 1. Criterios de divisibilidad, múltiplos y divisores de un número dado. 2. Principios Fundamentales de la Divisibilidad. DESARROLLO Criterios

Más detalles

Matemáticas para la Computación

Matemáticas para la Computación Matemáticas para la Computación José Alfredo Jiménez Murillo 2da Edición Inicio Índice Capítulo 1. Sistemas numéricos. Capítulo 2. Métodos de conteo. Capítulo 3. Conjuntos. Capítulo 4. Lógica Matemática.

Más detalles

Sistemas de Representación. Organización del Computador 1 Verano 2016

Sistemas de Representación. Organización del Computador 1 Verano 2016 Sistemas de Representación Organización del Computador 1 Verano 2016 Los computadores comprenden el lenguaje de los números La organización de un computador depende (entre otros factores) del sistema de

Más detalles

Introducción al Procesamiento de Datos. Los sistemas numéricos y su aplicación en el computador. Decimal.. 4 Binario... 5 Octal... 7 Hexadecimal...

Introducción al Procesamiento de Datos. Los sistemas numéricos y su aplicación en el computador. Decimal.. 4 Binario... 5 Octal... 7 Hexadecimal... Indice Los sistemas numéricos y su aplicación en el computador Conceptos básicos........ 1 Sistemas numéricos Decimal.. 4 Binario...... 5 Octal......... 7 Hexadecimal......... 8 Conversiones entre los

Más detalles

Trabajo Práctico N 9 Recursividad

Trabajo Práctico N 9 Recursividad Trabajo Práctico N 9 Recursividad Ejercicio. Implemente en Pascal las siguientes definiciones recursivas. a) h ( N) h( N ) h( N ), N, N 0 0 b) 0 g ( x, z) 0 g( x, z ), x 0, z 0, ( x 0) y ( z 0) c) f (

Más detalles

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal

k k N b Sistemas Númericos Sistemas con Notación Posicional (1) Sistemas con Notación Posicional (2) Sistemas Decimal Sistemas con Notación Posicional (1) Sistemas Númericos N b = a n-1 *b n-1 + a n-2 *b n-2 +... + a 0 *b 0 +a -1 *b - 1 + a -2 *b -2 +... + a -m *b -m Sistemas con Notación Posicional (2) N b : Número en

Más detalles

Representación de la Información.... en los Computadores

Representación de la Información.... en los Computadores Representación de la Información... en los Computadores 1 Información e Informática Un computador es una máquina que procesa información. La ejecución de un programa implica el tratamiento de los datos.

Más detalles

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS DIGITALES.

TEMA 1: INTRODUCCIÓN A LOS SISTEMAS DIGITALES. TECNOLOGÍA DE COMPUTADORE. CURO 2007/08 Inocente ánchez Ciudad TEMA 1: INTRODUCCIÓN A LO ITEMA DIGITALE. 1.1. istemas Analógicos y Digitales. Magnitud analógica es aquélla que puede tomar cualquier valor

Más detalles

Tipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC.

Tipos de Datos y Representaciones. Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC. Tipos de Datos y Representaciones Circuitos Digitales, 2º de Ingeniero de Telecomunicación. EITE ULPGC. Índice 1. Sistemas numéricos posicionales 2. Números octales y hexadecimales 3. Conversiones entre

Más detalles

Primeros conmutadores: diodos de cristal y de tubos de vacío (1906). Transistor (TRT): más pequeño y fiable, de material semiconductor (1950).

Primeros conmutadores: diodos de cristal y de tubos de vacío (1906). Transistor (TRT): más pequeño y fiable, de material semiconductor (1950). Código binario en Sistemas Digitales Historia Primeros conmutadores: diodos de cristal y de tubos de vacío (1906). Transistor (TRT): más pequeño y fiable, de material semiconductor (1950). Circuitos integrados

Más detalles

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante) 1. : La clase Cuenta. Uso de la clase Cuenta 3. Métodos y objetos receptores de mensajes (Importante) 1 Una clase para cuentas de un banco Vamos a modelar con una clase, un nuevo tipo de datos, donde los

Más detalles

EJERCICIOS RESUELTOS DEL TEMA 5

EJERCICIOS RESUELTOS DEL TEMA 5 EJERCICIOS RESUELTOS DEL TEMA 5 MULTIPLICACIÓN 1.- Multiplicar los números 27 y -7 utilizando representación binaria en complemento a 2, con el mínimo número posible de bits y empleando el algoritmo apropiado.

Más detalles

Introducción Definición Clasificación Sist. Binario Sist. Octal Sist. Hexa. Arti. Binaria

Introducción Definición Clasificación Sist. Binario Sist. Octal Sist. Hexa. Arti. Binaria Sistemas de Numeración Sistemas Numeración 2009-20102010 Sistemas de Numeración 1 En la historia han existido muchas formas de representar los números. En la actualidad el más extendido es el sistema Decimal

Más detalles

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS

CIRCUITOS ARITMÉTICOS. Tema 5: CIRCUITOS ARITMÉTICOS Tema 5: CIRCUITOS ARITMÉTICOS Contenido: * Aritmética binaria. * Circuito semisumador. Sumador completo. * Operaciones con n bits. Sumador paralelo con arrastre serie. * Circuito sumador-restador. * Sumador

Más detalles

FUNDAMENTOS DE SISTEMAS DIGITALES. Tema 2: Lógica combinacional (I): Funciones aritmético-lógicas

FUNDAMENTOS DE SISTEMAS DIGITALES. Tema 2: Lógica combinacional (I): Funciones aritmético-lógicas FUNDAMENTOS DE SISTEMAS DIGITALES Tema 2: Lógica combinacional (I): Funciones aritmético-lógicas 1 Programa 1. Representación conjunta de números positivos y negativos. 2. Sumadores y restadores. 3. Sumadores

Más detalles

Tema 12: Programas interactivos

Tema 12: Programas interactivos Tema 12: Programas interactivos Programación declarativa (2009 10) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla Tema 12:

Más detalles

Sistema Binario. Sonia Alexandra Pinzón Nuñez. Ingeniera de Sistemas

Sistema Binario. Sonia Alexandra Pinzón Nuñez. Ingeniera de Sistemas Sistema Binario Ingeniera de Sistemas Tecnología en Sistematización de Datos Facultad Tecnológica - Universidad Distrital Sistemas Numéricos (Posicionales) Como en todo sistema de numeración, el valor

Más detalles

TEMA 6. Circuitos Aritméticos.

TEMA 6. Circuitos Aritméticos. Fundamentos de los Computadores. Circuitos Aritméticos T6- TEMA 6. Circuitos Aritméticos. INDICE: OPERACIONES EN EL SISTEMA BINARIO CIRCUITOS SUMADORES CIRCUITOS RESTADORES UNIDADES LÓGICO ARITMÉTICAS

Más detalles

Fundamentos de Programación. Sabino Miranda-Jiménez

Fundamentos de Programación. Sabino Miranda-Jiménez Fundamentos de Programación Sabino Miranda-Jiménez MÓDULO 1. Introducción a la computación Temas: La computación en el profesional de ingeniería Desarrollo computacional en la sociedad Aplicaciones Software

Más detalles

Tema 1: Sistemas de numeración

Tema 1: Sistemas de numeración 1 Tema 1: Sistemas de numeración Felipe Machado Norberto Malpica Susana Borromeo Joaquín Vaquero López, 2013 2 01 Digital vs. Analógico Índice 02 Sistemas de numeración 03 Códigos binarios 04 Aritmética

Más detalles

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS RESPUESTA Y DESARROLLO DE EJERCICIOS AUTOR: JOSÉ ALFREDO JIMÉNEZ MURILLO AVC APOYO VIRTUAL PARA EL CONOCIMIENTO 1.1.- Convertir usando las

Más detalles

Figura 1: Suma binaria

Figura 1: Suma binaria ARITMÉTICA Y CIRCUITOS BINARIOS Los circuitos binarios que pueden implementar las operaciones de la aritmética binaria (suma, resta, multiplicación, división) se realizan con circuitos lógicos combinacionales

Más detalles

EL LENGUAJE DE LAS COMPUTADORAS

EL LENGUAJE DE LAS COMPUTADORAS EL LENGUAJE DE LAS COMPUTADORAS Una computadora maneja sus instrucciones por medio de un sistema numérico binario, que es el más simple de todos al contar con sólo dos símbolos para representar las cantidades.

Más detalles

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS MÁS EJEMPLOS DE OPERACIONES ARITMÉTICAS EN DIFERENTES SISTEMAS NUMÉRICOS. AUTOR: JOSÉ ALFREDO JIMÉNEZ MURILLO AVC APOYO VIRTUAL PARA EL CONOCIMIENTO

Más detalles

Tema 2: Introducción a la programación con Haskell

Tema 2: Introducción a la programación con Haskell Tema 2: Introducción a la programación con Haskell Informática (2015 16) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla 2

Más detalles

Clase 02: Representación de datos

Clase 02: Representación de datos Arquitectura de Computadores y laboratorio Clase 02: Representación de datos Departamento de Ingeniería de Sistemas Universidad de Antioquia 2015-2 Contenido 1 2 Representación de la Información Y sistemas

Más detalles

Representación de números enteros: el convenio exceso Z

Representación de números enteros: el convenio exceso Z Representación de números enteros: el convenio exceso Z Apellidos, nombre Martí Campoy, Antonio (amarti@disca.upv.es) Departamento Centro Informàtica de Sistemes i Computadors Escola Tècnica Superior d

Más detalles

Tema 2. El lenguaje JAVA

Tema 2. El lenguaje JAVA Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias

Más detalles

Operaciones Aritméticas en Números con Signo

Operaciones Aritméticas en Números con Signo Operaciones Aritméticas en Números con Signo M. en C. Erika Vilches Parte 3 Multiplicación sin Signo Reglas básicas para multiplicar bits: 0x0 = 0 0x1 = 0 1x0 = 0 1x1 = 1 Ejemplos en números sin signo:

Más detalles

Introducción a la Programación 11 O. Humberto Cervantes Maceda

Introducción a la Programación 11 O. Humberto Cervantes Maceda Introducción a la Programación 11 O Humberto Cervantes Maceda Recordando En la sesión anterior vimos que la información almacenada en la memoria, y por lo tanto aquella que procesa la unidad central de

Más detalles

Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 =

Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 = 1. NÚMEROS NATURALES POTENCIAS DE UN NÚMERO NATURAL Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 = 3 3 3 3 El factor que se repite es la base, y el número de veces que se repite

Más detalles

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son:

Oliverio J. Santana Jaria. Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso Los objetivos de este tema son: 3. Circuitos aritméticos ticos Oliverio J. Santana Jaria Sistemas Digitales Ingeniería Técnica en Informática de Sistemas Curso 2006 2007 Introducción La realización de operaciones aritméticas y lógicas

Más detalles

Sistemas Numéricos y Códigos Binarios

Sistemas Numéricos y Códigos Binarios Sistemas Numéricos y Códigos Binarios Marcelo Guarini Departamento de Ingeniería Eléctrica, 5 de Abril, 5 Sistemas Numéricos en Cualquier Base En el sistema decimal, cualquier número puede representarse

Más detalles

Estructura de Computadores

Estructura de Computadores Estructura de Computadores Tema 2. Representación de la información Departamento de Informática Grupo de Arquitectura de Computadores, Comunicaciones y Sistemas UNIVERSIDAD CARLOS III DE MADRID Contenido

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

4 Conjunto de los números reales

4 Conjunto de los números reales Programa Inmersión, Verano 2016 Notas escritas por Dr. M Notas del cursos. Basadas en los prontuarios de MATE 3001 y MATE 3023 Clase #4: viernes, 3 de junio de 2016. 4 Conjunto de los números reales 4.1

Más detalles

Tema 8: Tipos de datos. Sesión 24: Tipos de datos (1)

Tema 8: Tipos de datos. Sesión 24: Tipos de datos (1) Tema 8: Tipos de datos Sesión 24: Tipos de datos (1) Referencias Programming Languages Pragmatics: Capítulo 7, apartados 7.1 (Type Systems) y 7.2 (Type Checking) Programming in Scala: Capítulo 5 (Basic

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

Práctica de constantes, expresiones y operadores. Programación en C 1

Práctica de constantes, expresiones y operadores. Programación en C 1 Práctica de constantes, expresiones y operadores Programación en C 1 Definición de variables (II) Las variables (automáticas) no inicializadas tienen cualquier valor. Una variable (automática) se inicializa

Más detalles

Solecmexico Página 1 SUMADOR BINARIO

Solecmexico Página 1 SUMADOR BINARIO Solecmexico Página 1 SUMADOR BINARIO Esta operación es la más común que se realiza en una computadora personal. Ya que las tres operaciones básicas restantes pueden realizarse de igual manera con el principio

Más detalles

SUMADORES Y COMPARADORES

SUMADORES Y COMPARADORES Universidad Nacional de Quilmes Diplomatura en Ciencia y Tecnología Circuito semisumador de un bit. TÉCNICAS DIGITALES Los circuitos sumadores entregan 2 datos: suma (S) y acarreo (A), y, este circuito

Más detalles

Tema 2: Sistemas de representación numérica

Tema 2: Sistemas de representación numérica 2.1 Sistemas de Numeración Definiciones previas Comenzaremos por definir unos conceptos fundamentales. Existen 2 tipos de computadoras: Analógicas: actúan bajo el control de variables continuas, es decir,

Más detalles

4. Operadores Operador asignación

4. Operadores Operador asignación Programación orientada a objetos con Java 43 4. Operadores Objetivos: a) Describir los operadores (aritméticos, incrementales, de relación, lógicos y de asignación) y los tipos de dato primitivos sobre

Más detalles

Numeración Maya. Numeración indo-arábiga. Sistemas de Numeración Posicional. Conversión de una base cualquiera a base 10 = 4! !

Numeración Maya. Numeración indo-arábiga. Sistemas de Numeración Posicional. Conversión de una base cualquiera a base 10 = 4! ! Sistemas de Numeración Posicional Universidad Simón Bolívar Departamento de Electrónica y Circuitos Prof. Juan. Claudio Regidor Circuitos Digitales EC1723 En un número a n a n!1 a n!2!a 2 a 1 a 0, cada

Más detalles

Tema 12: Analizadores sintácticos funcionales

Tema 12: Analizadores sintácticos funcionales Tema 12: Analizadores sintácticos funcionales Informática (2014 15) José A. Alonso Jiménez Grupo de Lógica Computacional Departamento de Ciencias de la Computación e I.A. Universidad de Sevilla 2 / 37

Más detalles